With NVidia, Autodesk, Vulkan, Valve, and others supporting it, and pushing for industry adoption, it seems like something Unity might look at adopting into its own eco system. As is, it can be used to produce HLSL, GLSL, WGSL and Metal.
I haven’t used it and am also wondering about other’s experience with it as Unity developers. Do you think it’s worth adopting, does it need to be, reasons for/against?
I have to say it’s a non-starter for any existing game engines as it involves a rewrite of the entire ecosystem, which is not acceptable.
HLSL has already switched its interchange data format to SPIR-V officially so that there should be no issue on cross-platform. So what else significant improvements can SLANG bring the existing ecosystem except a different syntax?
It’s shipped in a VS extension currently but the language server can be built and run separately, and the language server itself is cross-platform (you need to tweak a bit on the csproj to enable build for other platforms): HlslTools/src/ShaderTools.LanguageServer at master · tgjones/HlslTools
sure, there are already some 3rd party language server extensions, heck, i’m the co-author of one, however, none are super great.
additionally, i’ve just yesterday looked more into slang and actually used it to (re-)write some shaders for a current project of mine, and oh boi it was a treat. not only does slang basically support full hlsl syntax by default, so you don’t really have much work when porting existing shaders, no it also supports many different syntaxes overall so you can choose the syntax that you want. after the rewrite of my existing shaders (that worked fine without any real syntax change, but I chose to change the syntax afterall), my new shader code now looks incredibly similar to C#, and that is just the most divine feeling