Upgrading from 1.7 (4?) to newer version

Anything and everything that's related to OGRE or the wider graphics field that doesn't fit into the other forums.
pupu
Gnoblar
Posts: 1
Joined: Mon Mar 24, 2025 12:43 pm

Upgrading from 1.7 (4?) to newer version

Post by pupu »

Hello! first of all thanks for making this amazing engine, love it.

I pick up an old project that is using 1.7.x and i got few questions:

-How hard it would be to update to a newer version?

-Whats the process?

-Performance wise does it worth?

rpgplayerrobin
Orc Shaman
Posts: 724
Joined: Wed Mar 18, 2009 3:03 am
x 405

Re: Upgrading from 1.7 (4?) to newer version

Post by rpgplayerrobin »

-How hard it would be to update to a newer version?

It depends on the project and its size.
Also, I guess you want to upgrade to Ogre and not OgreNext, since OgreNext is a bit harder to learn and the normal Ogre version is easier for users that used Ogre from 1.7.
For my game, it usually takes a whole week or so when upgrading to a newer version.
Most of that time is to check that the performance is unchanged (or better) for all features in my game (grass rendering, particles, etc), because there have been issues with that in the past for me when upgrading.

-Whats the process?

  1. Build the newer version of Ogre from source (here is my guide for it: viewtopic.php?p=554037#p554037). Try that it works with its samplebrowser.
  2. Link your project to the newly created .dll and .lib files from the Ogre source.
  3. Attempt to Clean+Rebuild the solution and see all compile errors. Fixing things in this step might take a while, since a lot has changed since 1.7.
  4. You can use RTSS if you want to automatically generate shaders for your materials, which also allows you to easily get Direct3D11 working. I suggest you to learn this system completely here if you want shaders (check more about it here: https://ogrecave.github.io/ogre/api/14/rtss.html).

-Performance wise does it worth?

It depends.

If you have a lot of the same entities on the screen visible at once, that you are not currently using instancing for, you can do that in the new version quite easily to gain some performance.
But I guess you could probably also do this on your 1.7 version as well.

Also, you can activate GPU animation quite easily with RTSS to gain performance if you have a lot of skeletal meshes. 20 visible animated meshes in my game has a severe performance loss without using GPU animation, so I really recommend using that if you have that as a bottleneck.

You might think that upgrading to gain access to Direct3D11 might be a big performance boost, but it is not.
My game only loses performance from using Direct3D11 (Direct3D9 is just faster). The only way to get better performance with Direct3D11 is when you also have a lot of advanced features (such compute shaders), but that requires a lot of time to implement and they are not really needed in any way other than visual appearance. So in short, Direct3D11 is only better if you want to have a lot of heavy rendering, and only if you use it right.

If you still want to use fixed function pipeline shaders (shaders generated by the graphic card and not by yourself), then I see no reason for you to upgrade. Those games usually already have an FPS of 500+, and you will not gain a performance boost easily by just upgrading in that case.
Upgrade only if you want to use shaders (automatic ones from RTSS, or your own written ones).