Anyways, I've found some time to try and update our engine over to the new ogre build since God knows when I did my last update. I hit into a problem after finally getting everything compiling to find that my own light pre-pass deferred rendering system was broken. Debugging through codes the whole day with my rusty memory of ogre and my own engine, I found out that this change actually was the cause: https://bitbucket.org/sinbad/ogre/chang ... c36c129c53
The reason for my problem was that I'm using a custom render queue that is not part of the scene manager for my rendering technique. With the mentioned change, my custom render queue was never cleared due to that code goes clearing all render queues of scenemanagers instead of the given target render queue. What exactly is the reason for this change? IMHO, this feels like a hack that doesn't fit the API. One should rightly assume that calling RenderQueue::clear() should clear the target render queue and not all scene manager owned render queue. How did this get into trunk anyways?
I think there needs to be some restructuring to fix this since that change talks about "avoid possible inconsistencies". Personally I feel we should introduce a different method for that case and keep the clear() method for actually clearing the target render queue.
P.S. Sorry for being a little rude but this issue frustrates me quite a bit. I've been spending a whole day working on this.


