DEVLOG: Adapting an HLSL Ray Marched Black Hole To In-Game Terminals
This was my first time writing HLSL code, using a tutorial for a black hole.
The initial material only worked using an inside-out sphere, which you had to be inside of.
This limited the use a bit too much in a real game, so I adapted the material in Blueprint to place it on an ordinary (outwards-facing normals) sphere, and used various alpha sections to knock out the background and turn it into a transparent shader.
It can now be used in the world as normal, occluded and so on.
Here a Material Parameter Collection is used to alter the transparency of the glass as the player approaches the terminal, with an overlap in the terminal blueprint.
This disguises the relatively short ray-march distance, which is necessary to keep the shader usable in a game context.
Most self shadowing and so on had to be disabled too sadly, or it’s just too heavy.
Below you can see the SHADOWSTEPS cut down to 2, TBH I may end up cutting it to just 1 or even 0.