Material graph based custom shaders



As a Roblox developer, it is currently impossible to create custom shaders, restricting high quality materials to a small list provided by the drop down menu, and a small set of post processing effects. Many solutions have been proposed but in my opinion a material graph akin to the unreal engine or blender would be optimal for Roblox in particular. This hides the implemention of shader components from the developer allowing non-essential parts to be removed on compilation to support lower end devices, cross platform compatibility, composibility and modularization (i.e. take a collection of operations and turn it into a single reusable node), and ease of use for builders/artists. Compilation to other shader languages from a high level graph representation can effectively work via macro substitution.

Depending on tools offered a shader made in a graph editor could use value objects as parameters.

Custom shaders are a standard feature in most engines and would visually bring Roblox up to the standard of other engines. Some example uses:

Screen space lensing
Object specific color correction
Parameter based object transformation, i. e. Visual soft bodies, melting, shearing
Alternative projection such as Orthographic or 2D
Physically based procedural textures
GPU Compute (likely unnecessary but still a possibility)

I couldn’t find any requests along this line but I feel it would satisfy many other requests people have. This request I’d imagine is a long shot but it would be crazy useful. There may be moderation concerns and a reliable way to view shaders might be infeasible but I don’t see it very differently as someone building rude content in a game.