Fossilize icon indicating copy to clipboard operation
Fossilize copied to clipboard

fossilize-synth/fossilize-disasm with only vertex or fragment shader?

Open jpark37 opened this issue 4 years ago • 1 comments

I'm looking at adding Shader Playground support for ACO, but that website seems to only support one shader stage at a time. fossilize-synth and fossilize-disasm seem to do a lot of what I want already, but supplying just a vertex or fragment shader without the other to fossilize-synth leads to a graphics pipeline not being generated.

I tried making some changes to support creating vertex-only graphics pipelines, which kind of works, but the interpolants get optimized away, which isn't what I want for this use case. It seems like I would need to reflect the vertex shader, and create a dummy fragment shader to ensure the interpolants are used. Likewise for the fragment-only case, I would need to create a dummy vertex shader outputting fragment shader inputs to even have a valid graphics pipeline.

Does this sound accurate? If you want any of these changes (vert-only graphics pipeline, --autovert, --autofrag), I can attempt PRs for them.

jpark37 avatar Oct 18 '21 22:10 jpark37

It's possible to autogenerate vertex or fragment shaders depending on the reflected signatures, but it'd require generating SPIR-V from scratch to feed to drivers I think. Certainly possible, but not trivial. It's a useful feature to have I think.

HansKristian-Work avatar Oct 19 '21 14:10 HansKristian-Work