I was talking to my Dad about flight delays and staffing issues, and my dad pointed out a problem I'd missed entirely.
There are no new pilots.
Ben Golus

@bgolus
Tech Artist, Graphics Programmer, general Game Dev, racing snail. (cis he\him) mastodon.gamedev.place/@bgolus ko-fi.com/bgolus
Ben Golus⚠️⭕’s posts
Replying to
When the pandemic hit, passenger airlines in the US laid off all their pilots. If those pilots were within 5, maybe 10 years of retiring, they mostly decided to retire early.
Fast forward to now and the airlines are trying to hire back all those pilots, who are responding 🖕
Replying to
And thus, the pool of new pilots has disappeared. This happened a while ago, but it hadn't yet become a big problem for airlines because their (aging) pilot workforces were flying for longer.
But they just laid off all those older pilots, and they aren't coming back.
We shipped Planetary Annihilation on Win, Mac, and Linux. Linux uses we're a big vocal part of the Kickstarter and forums.
In the end they accounted for <0.1% of sales but >20% of auto reported crashes and support tickets (most gfx driver related).
Would totally skip Linux. twitter.com/flibitijibibo/
This Tweet is unavailable.
One of the hardest things to do in modern game dev is make players notice things they’re supposed to notice.
In the past we often had the “problem” that dynamic objects rendered differently than static ones. Which was the case for RE4. That got “fixed” in the new version.
This is Epic's official documentation for how to move installed games to a different directory.
epicgames.com/help/en-US/epi
Ever wonder why baked normal maps just don't look quite right in Unity?
I did, so I decided to find out why.
I just want to say all the hot people posting to #WhatAGameDevLooksLike … many of us are much uglier.
As a graphics programmer, I cannot understate how important this title was for the games industry as a whole. It's a travesty we'll likely never get an official PC release of this game. Especially since my understanding is it already ran on PCs for dev.
Quote
Remember The Order: 1886? It's a visually stunning vintage 2015 PS4 game that still looks great today. @dark1x revisits Ready at Dawn's work, plus we've got footage of the game running at 60fps on PlayStation 5: youtu.be/QJm0wreAOK0
A quick explanation for why this happened, from a technical side.
With 2D animation, the artist has complete control over every frame. Limitations are resolution, frame count, and color palette. But late era 2D games like KoF XIII those were mostly gone.
Quote
Been thinking a lot lately on how when we moved from 2D to 3D we lost high-frequency motion WITHIN silhouettes due to skinned meshes. Hope to see this rectified via cloth/muscles this generation rather than just on secondary like cloaks etc.
Image source: youtube.com/watch?v=Wz2VAI
GIF
Ever wanted really wide, clean silhouette outlines in your game? I did, and I spent a lot of time trying to do it the "wrong" way so you don't have to.
The common wisdom of "don't use conditionals in shaders" is one of my biggest frustrations with how shaders are taught.
step(y, x) _is_ a conditional! It compiles to identical code as:
float val = (x >= y ? 1.0 : 0.0)
or
float val = 0.0;
if (x >= y) val = 1.0;
Quote
SHADER BASICS 4
STEP AND SMOOTHSTEP
As I mentioned, having conditionals in shader is usually frowned upon, so
"step" and "smoothstep" come in to save the day by giving you a whole lot of flexibility in that regard!
twitter.com/HarryAlisavaki
#shaders #shaderbasics
Fun fact, the infamous Sony Playstation 2 Development Tool, which while much larger shared a lot of design elements with the consumer Playstation 2, are both based off of their now demolished Sony Playstation Tool building in the Ginza district of Tokyo, Japan.
read image description
ALT
Just over a year since my last article on graphics programming. I guess it's about time to post another.
Sharper Mipmapping using Shader Based Supersampling
First person guns is one of those things where there is no perfect solution. All "solutions" are really different hacks with different pros and cons.
I feel like this would be a great topic to do a long form article on to discuss the problem, and the different work arounds.
Quote
Creating an FPS? It's a good idea to render the weapon on a secondary camera, that way you can lower the FOV and it'll never clip through walls! Need weapons? I got pretty cool stylized blasters here: kenney.nl/assets/blaster (public domain, free to use)
#unitytips @KenneyNL
Replying to
I'm sure they're a factor, but it's a smaller factor than everything else in this case. The lack of new pilots issue is one that's been going on since well before COVID.
A very useful and cheap technique for getting fake lighting on 3D meshes is the good old Matcap technique. The basic implementation is to take the view space normals and use the x and y values remapped from -1 .. +1 to 0 .. 1.0. But they have a problem with perspective cameras.
Since a number of people have asked "why is this game important?" I thought I'd post a short explanation. First I'll say the video does a pretty good job of saying why, but I'll add some more context.
Quote
Replying to
Have you never heard of this type of screw before? You'll find them in any workshop. For some reason people usually store them on the ground next to trash cans.
Replying to
It relied entirely on dynamic branches in a giant über particle material.
Why would they do this? For sorting. They used compute shaders to generate and update the particle position and display data in one giant list, and then they just had to sort that one list.
Replying to
To be clear. I don’t mean one draw per emitter, or type of particle. I mean _all_ particles. If you’re someone who’s used to using Unity or Unreal, every single particle used one shared material.
All the different textures, all the different rendering modes, all one shader.
I implemented a couple of different approaches to reconstruct normals from a depth texture. No separate script dependencies, and works for Unity's built in and URP as a post process or on world objects.
gist.github.com/bgolus/a07ed65
low poly box (1 traingle)
Quote
low poly box (6 triangles)
Replying to
Not to mention there just weren’t that many objects around except those that could be destroyed.
So everyone complaining that “the original RE4 didn’t need this” is misremembering that it didn’t need it because those objects where super obvious in other ways.
I just published “Anti-aliased Alpha Test: The Esoteric Alpha To Coverage”
Normal people discovering the horrors of NaN propagation.
Quote
In Super Mario Odyssey, if the Snapshot Mode is activated on the same frame the B button is released while capturing an Uproot, the Uproot will become visually glitched. Over time, it will create areas of corrupted black pixelated space within itself.
Replying to
It’s a big problem for modern games. We keep pushing the amount of detail in games, and it’s making them harder to play games because of it. So nearly every modern game has glows, or a special view mode, etc. that effectively simplifies the world to highlight the important items.
I want to comment on this, because it’s very misleading. And I’m not even going to go into the main article.
There are three tools presented to “help reduce vram”. Let’s go over them real quick.
Quote
Free dev tools by NVIDIA to help game devs reduce VRAM usage in their games:
nvidia.com/en-us/geforce/
Realtime GI is one of those weird things that I feel like we game devs are super excited about, and most gamers absolutely DGAF about. We've been faking / baking it for so long it means the average gamer probably doesn't see the difference compared to the last 20 years of games.
As someone who worked on Beast Rider, it should have been rated N for Nobody.
Quote
Would you like to know more about the history of this classic Penny Arcade strip? @cwgabriel and @TychoBrahe have you covered in the latest episode of Penny For Your Thoughts, available exclusively on #ClubPA! patreon.com/posts/penny-fo
read image description
ALT
Harry Potter 1 PC's default spell effect is using a default UE1 editor icon for its texture.
No one has ever noticed.
Replying to
We eventually laid out a guide with known good versions of Linux and graphics drivers, but it didn't matter. Part of the allure of Linux is the customizability, so few actually stuck to it, and generally wanted to run the game on older hardware we didn't support.
Some time ago I tackled circular progress bars in a somewhat different way than most information you'll find online. I finally took the time to write up what I did and why.
A 6800 word deep dive into abusing GPU derivatives to fix something that already had a solution.
I've written "a bit" about doing outlines, like using inverted shells, render texture blurs, or JFA. But there's one more technique I've alluded to in a few places I wanted to share. Offset multi-pass stencil outlines.
gist.github.com/bgolus/c67c29c
A lesson every good tech artist / vfx artist should learn early ... vertex positions, UVs, normals, vertex colors ... they're all just arbitrary data. Use them however you want if them being something else is useful.
Quote
#UnrealEngine #UE4 #UE5 #UETips
Here's one WPO trick I used to create this night sky.
The challenge was to create subtle per-star lens flares that would always face the camera and remain straight, exactly like billboards. 

I worked on a game that had over 3000 bugs in the issue tracker when it shipped, and the game was never patched to fix them.
Also, no one has even noticed most of them 19 years later.
Replying to
Nope.
Well, there’s a handful of excellent talks from Matt Vainio about the process of making them and the artist facing tools. But this specific fact I don’t think has been talked about publicly anywhere.
Remade this in shader toy for fun.
shadertoy.com/view/WtVGDc
Quote
This is a recently discovered illusion, and it’s really quite striking. The strange effect is called the ‘curvature blindness’ illusion bit.ly/2j8khqV
Task: Hit computer with hammer.
Expected: Computer can't hurt me anymore.
Actual: Computer hit back, hammer crashed.
Replying to
Also for giant projects that take several years to complete, characters might get remade several times. And I don’t mean minor updates to the artwork, I mean completely deleting the content pipeline and tools and starting over as new technologies or hardware becomes available.
Hilarious fact, every few months Twitch contacts LTT about the fact they live stream content to YouTube and Twitch simultaneously and warn them that it's not allowed.
And LTT responds back by replying with the contract Twitch signed that lets LTT ignore those rules in perpetuity
Quote
I love slice / cutaway shaders. They're fairly simple to implement, but also very satisfying to look at.
The short version of the basic implementation is clip based on height or simple plane, and draw the back faces unlit. Done!
Quote
I don't know how many people are interested in this, but I wrote a blog of:
3D printer-like vfx ~How to fill the mesh cavity?~
heyyocg.link/en/3d-print-fi
actual working data is here:
heyyohanashima.gumroad.com/l/nlujvf
Replying to
Graphics drivers are a shit show on Linux. Maybe it's better now, but back then every driver had a new crash on otherwise totally banal code.
But sure, you're welcome to blame the programmers.
Replying to
This was my Asian mother-in-law's reaction too.
Similarly she hated Turning Red.
Reminds me of this banger tweet.
Quote
A sad reminder: Literally no one makes CRT displays anymore.
More specifically, no one knows _how_ to make them anymore.
Quote
NEW VIDEO!!! I Treated myself to something EXTRAVAGANT
youtu.be/kW5X4dU0gnY
Remade an illusion in ShaderToy.
shadertoy.com/view/tdyfRR
This one is an interactive version of this illusion:
Quote
















