Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

A modern language with generics and quality IDE experience with the ability to write truly composable code is what interests me in the project. Modern shader codebases are truly enormous, but the languages up until recently lacked any tools for composition beyond the function. HLSL got templates in 2021 and GLSL is a dead end with no development.

No Metal support is IMO no problem. I and most of the rest of the games industry couldn’t care less about MSL. Nobody uses it. I’ve seen numbers from Apple that say upwards of 80% of developers they asked target Metal via SPIR-V Cross and HLSL from DXC.

I love what this project wants to do, use a “real” language to get the developer experience while writing shaders. However IMO slang will eat Rust-GPU’s lunch. You are right, borrow checking is not useful for shaders, and slang delivers most of the same language improvements (modules, generics) while being able to target many more platforms. And slang is production ready, unlike rust-gpu.

I’d still love to see what rust-gpu could become though, especially with DX12 moving to spirv in the future. It’s be nice to share rust code between my engine code and shader code.



> No Metal support is IMO no problem. I and most of the rest of the games industry couldn’t care less about MSL. Nobody uses it. I’ve seen numbers from Apple that say upwards of 80% of developers they asked target Metal via SPIR-V Cross and HLSL from DXC.

That is a real, real shame with respect to performance. A number of algorithms one can do with MSL (or really because of tile based rendering) so much faster (nearly no main memory bandwidth consumption). Atleast there is GL_EXT_shader_pixel_local_storage for GL. For Vulkan it appears that there is VK_EXT_shader_tile_image, but I do how widespread it is on Android.

There are other nice features that are Metal-ish only as well (tile shaders are a big deal) but typically the memoryless textures tops my list.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: