Jump to content
  • Advertisement
a light breeze

looking for 3D rendering middleware

Recommended Posts

I'm looking for a 3D renderer (not a complete game engine) to use for my next project.  I've taken a close look at Ogre and turned away in horror.  I've taken a quick look at Horde3D, but did not get it to compile.  Are there any other (better) options?

I have three absolute requirements:

  • It must be open source, with a liberal license.
  • It must be usable from C++.
  • It must run on my main computer (great CPU, lots of RAM, relatively recent Nvidia graphics card, but OS is Lubuntu).

Everything else is technically negotiable.  Ideally, I'd like it to have low system requirement, great performance, a clean API, no bugs, visually beautiful results.  And a pony.

Share this post


Link to post
Share on other sites
Advertisement

Urho3D is a full game engine, isn't it?  I'm really looking for something that doesn't require me to structure my entire program around it.

Share this post


Link to post
Share on other sites

Your next try should be Irrlicht Engine. It seems to have a very similar proposal to Ogre; 3d real time engine but not a game engine.

There is a list of renderers in wikipedia which can be ordered by license. https://en.wikipedia.org/wiki/List_of_3D_rendering_software But this list is for a different category; not quite engines for you to code with but rendering software ready to render 3d scenes, and possibly not intended to be real time. But, hey, they're open source so maybe you can find something there!

Another thing that comes to mind is Open Frameworks. It's a suite of libraries made for "creative programming", whatever that is. But it's not meant for games and it does render 3D stuff. But it does a million other things as well, which I believe is not what you want right now.

Share this post


Link to post
Share on other sites
30 minutes ago, a light breeze said:

Urho3D is a full game engine, isn't it?  I'm really looking for something that doesn't require me to structure my entire program around it.

You can just use the rendering parts, though. That's what I did for a couple years. I abstracted out the rendering, then used some of my own existing code for all the rest of it. It's lightweight enough for that.

Share this post


Link to post
Share on other sites

hi @a light breeze,

so far all I see is a moral and religious requirement for a considered rendering library. Could you perhaps put a peg in what 3D rendering capabilities are most important to your project. If these requirements are very small with limited expansion and contained target scope, then is an existing library the better choice?  

edit: just noticed.Interesting boost bug catch...
Edited by GoliathForge
oh, the pony...hav' to dust it off.

Share this post


Link to post
Share on other sites

BGFX 

I use Urho3D and I'm happy with it. But Urho3D is a full (lightweight) game engine.

BGFX looks to be good quality and well maintained so far.

Share this post


Link to post
Share on other sites

How did Horde3D not compile? I use it for most of my 3D projects and it works perfectly, it's a quick "cmake ./" followed by "sudo make install".

One tiny thing I did not like about it was that it places it's shared libraries in /usr/local/lib, where G++ does not usually look for, I had to copy paste it myself to /usr/lib.

Edited by midn

Share this post


Link to post
Share on other sites
1 hour ago, costin said:

BGFX 

I use Urho3D and I'm happy with it. But Urho3D is a full (lightweight) game engine.

BGFX looks to be good quality and well maintained so far.

BGFX is not a rendering engine, this is just a rendering API rendering engines could use to avoid developing their own agnostic graphics abstraction interface.

Share this post


Link to post
Share on other sites
On 4/12/2019 at 3:51 PM, DiegoFloor said:

Your next try should be Irrlicht Engine. It seems to have a very similar proposal to Ogre; 3d real time engine but not a game engine.

 

Irrlicht looks good for what it is, but very dated.  Still uses the fixed function pipeline in some cases, and does all mesh animation on the CPU.

 

On 4/12/2019 at 3:53 PM, JTippetts said:

You can just use the rendering parts, though. That's what I did for a couple years. I abstracted out the rendering, then used some of my own existing code for all the rest of it. It's lightweight enough for that.

That's actually a very good point.  I'll take another look at Urho3D.

 

On 4/12/2019 at 10:50 PM, costin said:

BGFX 

 

BGFX looks interesting, but a little low-level for my tastes.

 

On 4/12/2019 at 10:57 PM, midn said:

How did Horde3D not compile? I use it for most of my 3D projects and it works perfectly, it's a quick "cmake ./" followed by "sudo make install".

[...]/Horde3D-1.0.0/Horde3D/Source/Horde3DEngine/egRenderer.cpp:2301:78: error: cannot take the address of an rvalue of type 'float'
        _renderDevice->setShaderConst( _defColorShader.uni_worldMat, CONST_FLOAT44, &Matrix4f().x[0] );
                                                                                    ^~~~~~~~~~~~~~~~

The error itself doesn't look hard to fix, but it also looks like Horde3D is no longer being actively maintained - the last update on GitHub was "a year ago".

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!