Has anyone tried (and succeeded) using the OGRE graphics rendering engine with Xojo?
Hi Peter,
I honestly hadn’t heard of OGRE until now, and it looks really interesting. Are you looking for a ‘Hello World’ type of example so that you can create your own program?
I have to create a fairly complex animated 3-D graphics program and attempts with Xojo are not suitable (slow, irritating flashing). The OGRE documentation doesn’t mention Xojo and I just wondered if anyone here had tried a Xojo-OGRE interface. I’m also looking at Visual C++ as an alternative since its graphics seem much slicker but there’s a steep learning curve to be overcome - I’m fluent in plain old C but C++ is another matter…
It’s me in the morning before coffee…
I take you’ve been experimenting with OpenGL, which is x-plat and built-in. There’s some tutorials for using it with Xojo also.
When I wrote the book on Xojo OpenGL I initially noticed the same issues. The OpenGL control is quite fast and can literally update the frames-per-second in the 1000’s, the problem is the timer. See Limitations on Microsoft Windows. By using a timer:thread pair and not just a timer, I was able to have fast graphics. I think the human eye can see up to about 120 fps, and anything beyond that is a waste of processor time. If a Xojo-OGRE interface uses just a timer, then the same slow, irritating flashing will likely exist just because of the 15 millisecond limit.
Part of the secret in limiting/preventing flashing is to draw all of the graphics in the OpenGL control. Adding a button or other controls on-top of an OpenGL will show flashing because of the 15 millisecond timer limit in Windows. The flashing issue will likely happen in OGRE if a control is placed on-top of the OGRE control.
Peter, In my humble opinion, trying out the OpenGL samples is a good place to start as Sam mentioned and being x-plat is an added bonus to have your graphics on a couple of operating systems.
Thank you – I’ll look into it.
Couple of things I’d like to add that are macOS only.
On the mac, unless otherwise set in the display preferences, anything over 60fps is a waste as the OS will NOT update the screen any faster. Although I will admit there’s nothing quite like knowing your app is cranking out 250fps in full screen
On the Mac, this can be worked around. In fact by default on the Mac overlaid controls don’t even show. You can enabled Layer-Backed views (Triple buffering, no I’m not making this up), but it comes with lots of additional issues. Unless you REALLY want controls overlaid on your OpenGL content, avoid at all costs.