Friday, January 28, 2011

Fixed Pipeline Rendering

The scene composer i had in place for the rendering engine seemed to be working fine but yesterday bhanu complained that there wasnt' a way to disable the shaders and render using just the fixed pipeline. He quickly put up a flag that disables the multipass rendering in the scene composer. But unfortunately that didn't work out as expected .. and guess who is to blame.. :D yes your truely "VK" i messed up the scene->reset() part which requires that the lists of objects for each pass be cleared for each rendering (since its' just list of pointers it doesn't really take that long to work out). Any way if we have a post processing phase (in the multipass) we have a fullscreen polygon in the final pass. There was no way of adding this for everypass so i just added it once in the constructor and in the reset i was avoiding clearing the last pass and guess what happens when there is only one pass and you call reset on the scene composer? :) and thats' what happened exactly.. so i fixed that code and now the scene composer adds a full screen poly for the post processing during multi pass rendering. I should probably add a post proc enable flag to make sure i can enable/disable this but i guess that can wait. For now the fixed pipe line is fixed and is made default :) if you want the fancy glsl shaders you should be using "--enable-shaders" (without quotes) as command line argument to start with these shaders.

PS: sorry no pictures :D