Post

Replies

Boosts

Views

Activity

Comment on Cannot debug Metal shaders with Indirect Command Buffers
It's indeed a bummer that not all GPU debugging features are supported for ICB workflows. Having said that, the GPU trace does show the buffers, geometry, textures, etc for ICB-issued draw calls, so it's definitely still useful. Side note: the equivalent of printf for graphics programming in general is outputting specific channels in your fragment shader. I.e. the values from only albedo map, normal map, ambient occlusion, etc. In my experience with Vulkan, actual text logging from a shader is not practical due to the sheer volume of output. My own workflow is to develop a CPU-driven, non-ICB pipeline first, then port it to a GPU-encoded ICB. More work, but it saves time in the end.
Dec ’21