shin icon indicating copy to clipboard operation
shin copied to clipboard

Implement the rendering pipeline closer to the game

Open DCNick3 opened this issue 1 year ago • 0 comments

I have spent some time carefully reverse-engineering how the rendering pipeline actually works in the engine, and what we have right now is very different from the game. I want to basically rewrite

This will help us to support features like:

  • Masks applied to LayerGroups (which is what shin currently crashes)
  • NewDrawableLayer-based effects (props 0x38-0x54). This is actually the only kind of effects used in umineko, with remnants of the older system (EffectLayer) still being present in the game. ~~What a mess~~
  • #8 (the rendering part)

This will probably also reduce GPU usage a bit: we do a ton of redundant renders right now, while the original engine design seems pretty optimized for some older smaller GPUs.

However I am not sure if it should be done now: wgpu seems to be on its path to resolving gfx-rs/wgpu#1453, which will make it much easier to implement the renderer (no need to manually put the GFX objects into an arena and ensuring they outlive the frame render).

DCNick3 avatar May 06 '24 17:05 DCNick3