3rd Party Rendering Engines

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • 3rd Party Rendering Engines

      Hey guys,

      I'am currently looking at 3rd party rendering engines to integrate into my own code base. I am looking for something lightweight with a reasonable simple API which handles rendering (using OpenGL) and maybe scene management but not a lot more.

      So far I found the Horde3D rendering engine (horde3d.org/) which is more or less exactly what I was looking for (only rendering, scene graph and some internal resource management. Completely data driven rendering). The sad part is that it isn't developed anymore because the two guys working on it during their university time are now working full time at companies. There is some community driven development but I am afraid that at some point development stops.

      Of course I know about Ogre but Ogre is such a huge beast and (at least for me) the tutorials are not very clear on how to integrate a minimal Ogre into an existing code base where I can control the resource mangement etc.

      Is there something else out there? Preferably like Horde3D but with a more active community?

      Thanks!
    • I am currently using Ogre and all I can say is that I have found not only is it very easy to use, but the architecture integrates seamlessly with an Actor-Component model, the results are very good to. if you would like to know more about how I integrated it let me know.
      PC - Custom Built
      CPU: 3rd Gen. Intel i7 3770 3.4Ghz
      GPU: ATI Radeon HD 7959 3GB
      RAM: 16GB

      Laptop - Alienware M17x
      CPU: 3rd Gen. Intel i7 - Ivy Bridge
      GPU: NVIDIA GeForce GTX 660M - 2GB GDDR5
      RAM: 8GB Dual Channel DDR3 @ 1600mhz
    • Ogre is actually pretty modular, and allows you to for the most part use only what you want. A good start to ogre is of course on the Ogre Wiki, learn how to get the ogre system up and running, and how to do scene managers/nodes. Also take a look at how they do Cameras/Lights/Entities in Ogre.

      If you want a system that works really well with the actor/component system consider this

      - Every Actor in your game should have an empty Ogre::SceneNode, this represents your visual aspect of even an empty actor, in an editor like Unity3D, even a blank actor has the red, green and blue axes displayed on screen
      - I use an object based state system, so what I ended up doing was I created a new Ogre::SceneManager for each state
      - When a state is created, an event is sent to the Ogre management class you will make, this event delegate will than create a unique scene manager that you associate with the state
      - When an actor is created, an event is sent to the same management class, this time though, it will look for the scene manager associated with the game state your actor belongs to

      At this point you now have a system that matches your actor creation by creating empty scene nodes, which is actually very similar to how Mike and Rez layed out there Scene Manager in the GCC book, except that Ogre is a very powerful renderer that is able to produce really nice graphical results. You are still going to have to hook up things like actor transform events to update the ogre scene nodes, but this should be easy if you already know the GCC engine. At this point you can now use components to start attaching to the scene node, this would be done something like this;

      - MeshComponent - Grab the scene node associated with the parent actor, than create an Ogre::Entity pointing to whatever compatible model you want, I have it set up in XML and Script to be able to customize this to whatever I want, you than attach the entity to the scene node
      - AnimationComponent - You will have to do a bit of leg work to make your animation system work intuitively, Ogre provides you with an easy interface for blending animations of various types, however it does not provide you with the system to transition between those states smoothly and set up complex animation trees, this is something you will have to handle yourself

      The same will go for particleFX, Lights, Cameras, etc. Let me know if you need anymore help, this system is working very well for me and would be glad to help if you have issues.
      PC - Custom Built
      CPU: 3rd Gen. Intel i7 3770 3.4Ghz
      GPU: ATI Radeon HD 7959 3GB
      RAM: 16GB

      Laptop - Alienware M17x
      CPU: 3rd Gen. Intel i7 - Ivy Bridge
      GPU: NVIDIA GeForce GTX 660M - 2GB GDDR5
      RAM: 8GB Dual Channel DDR3 @ 1600mhz
    • Honestly the OgreWiki is the best spot for tutorials, there are a few different sections there with a bunch of tutorials each, there is also a book on Ogre which you may want to check out.

      Though as Ogre is just a rendering engine, beyond the API and a set of tutorials, you won't need much, once you learn how to create the different scene objects ie. Lights, it is mostly API calls after that, wan't the lights diffuse to be purple? Call SetDiffuseColor, want the attenuation to be quadratic? SetRange.

      The design of the engine is almost easy enough to explain itself.
      PC - Custom Built
      CPU: 3rd Gen. Intel i7 3770 3.4Ghz
      GPU: ATI Radeon HD 7959 3GB
      RAM: 16GB

      Laptop - Alienware M17x
      CPU: 3rd Gen. Intel i7 - Ivy Bridge
      GPU: NVIDIA GeForce GTX 660M - 2GB GDDR5
      RAM: 8GB Dual Channel DDR3 @ 1600mhz
    • Spent the last six hours trying to get Ogre compiling and linking under OS X with the current version of Xcode. None of the prebuild things (the SDK or the 3rd party dependencies) worked. Finally it now worked...and I like what I see ;)

      @jmhgny
      Have you seen this ogre3d.org/tikiwiki/MinimalPracticalApplication ?
      I think as a starting point to integrate Ogre into your own application this can be helpful.
    • The first time can be daunting, especially since it is such a huge library, linux is the only exception since the dependencies are quite easy to get through repositories.
      PC - Custom Built
      CPU: 3rd Gen. Intel i7 3770 3.4Ghz
      GPU: ATI Radeon HD 7959 3GB
      RAM: 16GB

      Laptop - Alienware M17x
      CPU: 3rd Gen. Intel i7 - Ivy Bridge
      GPU: NVIDIA GeForce GTX 660M - 2GB GDDR5
      RAM: 8GB Dual Channel DDR3 @ 1600mhz
    • I just started using the new 1.9 release candidate, the game I am working on is still in pre-development stages, so I am fine using an unstable build, I expect it will mature along with our project, there are some REALLY cool features.

      - Proper android support
      - DX11 & OpenGL 3
      - My favorite, the volumetric features.

      The volumetric features are really cool, check out the demos and find the volumetric terrain, it is really powerful in comparison to simple height-mapped terrain, which is unable to do complex geometry such as overhangs and archways.
      PC - Custom Built
      CPU: 3rd Gen. Intel i7 3770 3.4Ghz
      GPU: ATI Radeon HD 7959 3GB
      RAM: 16GB

      Laptop - Alienware M17x
      CPU: 3rd Gen. Intel i7 - Ivy Bridge
      GPU: NVIDIA GeForce GTX 660M - 2GB GDDR5
      RAM: 8GB Dual Channel DDR3 @ 1600mhz
    • There is also a full official tutorial set on the main page of the Ogre Wiki which are quite good.
      PC - Custom Built
      CPU: 3rd Gen. Intel i7 3770 3.4Ghz
      GPU: ATI Radeon HD 7959 3GB
      RAM: 16GB

      Laptop - Alienware M17x
      CPU: 3rd Gen. Intel i7 - Ivy Bridge
      GPU: NVIDIA GeForce GTX 660M - 2GB GDDR5
      RAM: 8GB Dual Channel DDR3 @ 1600mhz
    • Originally posted by mholley519
      There is also a full official tutorial set on the main page of the Ogre Wiki which are quite good.


      Yeah I saw they had a lot to check out after you mentioned it before. I'll have to start doing them when I get back into 3D stuff! If I'm having a hard time getting something made in 2D, I am probably not ready for 3D. :(