Multiple shader passes on a material
Posted: Fri Mar 06, 2020 11:15 am
Hello everyone.
I'm developing a port of Wallpaper Engine for Linux and I decided to use Irrlicht as the graphics engine early in the development because I already used It on other projects. After reversing the wallpaper's format and how the original Wallpaper Engine renders things I realized that it was doing multiple shader passes over textures. The most common case is textures that have a shader to apply alpha and another to apply an effect on it (for example, water ripple effects). Looking through the irrlicht's documentation I do not see any way to apply multiple shaders to the same texture so I cannot really replicate this functionality and googling the issue doesn't seem to be helpful either.
I tried to hack something rendering to textures but I can't really get any good result and I'm not so sure that might be the way to go.
This is the repository if anyone is interested in taking a look: https://github.com/Almamu/linux-wallpap ... separation
Has anyone implemented something like this before that can point me in the correct direction? Will there be support for this in the future in the engine?
Thanks in advance!
I'm developing a port of Wallpaper Engine for Linux and I decided to use Irrlicht as the graphics engine early in the development because I already used It on other projects. After reversing the wallpaper's format and how the original Wallpaper Engine renders things I realized that it was doing multiple shader passes over textures. The most common case is textures that have a shader to apply alpha and another to apply an effect on it (for example, water ripple effects). Looking through the irrlicht's documentation I do not see any way to apply multiple shaders to the same texture so I cannot really replicate this functionality and googling the issue doesn't seem to be helpful either.
I tried to hack something rendering to textures but I can't really get any good result and I'm not so sure that might be the way to go.
This is the repository if anyone is interested in taking a look: https://github.com/Almamu/linux-wallpap ... separation
Has anyone implemented something like this before that can point me in the correct direction? Will there be support for this in the future in the engine?
Thanks in advance!