yt-project / yt_idv

Interactive volume rendering for yt
Other
9 stars 6 forks source link

Support compute shaders #142

Open matthewturk opened 3 weeks ago

matthewturk commented 3 weeks ago

We should support compute shaders. These will function somewhat differently, and I think that we should not duplicate too much between our existing display-focused shaders and the compute shaders.

Compute shaders should not have vertex/geometry/fragment, so we need to set up a slightly different object. We can still use a Shader I think, but we won't want to use the same setup for a ShaderProgram. We may end up not using all of Shader, either, since there we handle stuff like blending functions, which aren't relevant to this.

matthewturk commented 3 weeks ago

Another big reason to support these as special-purpose objects is that often they will not need to be computed every render call. For instance, a histogram does not need to be computed constantly.