8 ms·
So if I read the article right, this shader emulates those parts of the rendering pipeline of the GameCube/Wii... which to my mind still just sounds absolutely
by chris_wot 9y ago
So if I read the article right, this shader emulates those parts of the rendering pipeline of the GameCube/Wii... which to my mind still just sounds absolutely amazing - does this mean you've had to implement any quirks of the devices into the shader?
Also - does this generalise to other rendering pipelines for other devices do you think?
- phire 9y agoYeah, Though we had already implemented all those quirks in the old generated shaders. The main difference with ubershaders is skip the shader generation/compilation and directly interpret the raw shader binary . > Also - does this generalise to other rendering pipelines for other devices do you think? Modern shader cores are more or less Turing complete, so you should be able to do the same on any other rendering pipeline which fits into 'opengl pipeline model', including other modern GPUs. Though, while it might be possible to run modern shaders in this manor, it won't run fast enough, because you will have to spill some (or even a lot) of the shader's state to the host GPU's main memory. Ubershaders work well for dolphin because the entire mutable state of the GameCube's pixelshaders fit into the available registers, with plenty of space left over. I assume it will work well for other DirectX 8 or even DirectX 9 era GPUs.