FrameListener doesn't have FrameRenderingQueued?


20-06-2011 17:30:49


I was experimenting with the Mogre basic tutorials and especially with the Bootup sequence, since I am looking for a way to make my code be independent from sample frameworks. I am familiar with ogre already from using python-ogre but just wanted to revision a bit to see what new and different there is in mogre syntax.

Problem is, that when I want to register a FrameListener, with
mRoot.FrameRenderingQueued += new FrameListener.FrameRenderingQueuedHandler(GameLoop);(where GameLoop is basically just a renamed method for OnFrameRenderingQueued from the tutorial)
I get these very strange errors:
Error 1 'Mogre.Root' does not contain a definition for 'FrameRenderingQueued' and no extension method 'FrameRenderingQueued' accepting a first argument of type 'Mogre.Root' could be found (are you missing a using directive or an assembly reference?)
Error 2 The type name 'FrameRenderingQueuedHandler' does not exist in the type 'Mogre.FrameListener'

Everything else is working like it should, which would mean that at least the necessary files and .DLL's are where they should. If I change that FrameRenderingQueued (and the handler) to FrameStarted or FrameEnded, it works flawlessly, but I am unable to use the FrameRenderingQueued. I'd like to, since it was suggested as the most efficient way to have your game logic/AI/whatever computed because the GPU can process the rendering at the same time as the CPU handles the computations.

I'd like to get this fixed as soon as possible, so I can hop into proper development, so any help is greatly appreciated :)


20-06-2011 18:35:45

Looks like you're using an older version (< 1.6) of Mogre.


20-06-2011 18:47:25

That was true, removed the 1.4.6 and installed 1.7.1 fixed the problem. I really should have read the small print under "Mogre Installation" >.>

Thanks a lot!