Render Engine improvements - Steelhead-Games/CharmQuarkEngine-wiki GitHub Wiki
Passing textures between passes
Right now, passing render textures between different rendering passes has some issues.
- Ownership is not clearly defined, despite a certain pass needing to reallocate the render texture it writes to on a resize event
- Passing render textures between different passes is extremely clunky
- Passing render textures between features is even more clunky
What should we do about it?
I'm not sure exactly how I want this to be handled, but some well defined and easily extendable render texture manager that only holds writable frames could be a good spot. It might even be possible to reuse the normal texture manager. The exact implications aren't super clear but it would allow for a couple things
- Tons of code reuse. From what I can think of it'd be almost the exact same system as any other texture manager from a purely architectural standpoint
- Easier to debug render textures since they're available to be used on anything else in the system