Which C/Cpp 3D-Engine

Which C/Cpp 3D-Engine could you recommend to be used in a professional game?

The team prefers a commercial engine because of guaranteed support and so on. Still, if an Opensource 3D-Engine would be very good, no problem.

So far the following 3D-Engines have been recommended to me:
[]Gamebyro / Netimmerse (http://www.ndl.com/gamebryo_engine.cfm)
[
]Renderware (http://www.renderware.com/renderwareplatform.htm)

Opensource:
[*]Nebula Device (http://nebuladevice.sourceforge.net)

Anybody with some more ideas? Or even experiences with the above ones?

Still can’t see the point of trying to interface to a C++ game engine when it’ll be a world of pain (and it will, oh yes). Just use a Java based one. Xith looks promising. Not sure where Ogre is at.

Cas :slight_smile:

[quote]Still can’t see the point of trying to interface to a C++ game engine when it’ll be a world of pain (and it will, oh yes).
[/quote]
A possible scenario would be that the Cpp game engine calls the Cpp 3D-Engine as well as some Java “modules” (for example the scripting engine, or such - as described somewhere in this forum’s Vampire Masquerade thread). Not decided yet, but possible.

[quote]Just use a Java based one. Xith looks promising. Not sure where Ogre is at.
[/quote]
Well, if I could I would. Unfortunately it’s not my decision.

The graphic guys need bones/skeletons now, together with some really good importers for their animation. Funny ways they use: 3d modeler -> Maya animator -> 3d-Engine importer tool -> and so on.

The developers say they want the guarantee to be able to call the hotline/email support of the 3d-Engine company in the case of cases (sp?).

Ogre is C++.

What parts do you want to do in Java? Scripting?

We’re using RenderWare right now and are pretty happy. It’s C based. But we wrote some C++ wrappers around it to help out with the game code. We chose RenderWare because we’re developing for the XBox, but want to go to PS2, and RenderWare allows that with out too much headache.

They switched to RenderWare from NetImmerse before I arrived, because they did not like how much control NetImmerse takes from the programmer, that’s what they told me anyways.

I can’t give you any specific recommendations based on the desire for dirty Java because we aren’t using any Java this go around. But RenderWare has proven to be a good API for us.

[quote]What parts do you want to do in Java? Scripting?
[/quote]
Yes, for example. Maybe Java won’t be used at all in the game but just for dev tools and such.

[quote]We’re using RenderWare right now and are pretty happy. It’s C based. But we wrote some C++ wrappers around it to help out with the game code. (…)
They switched to RenderWare from NetImmerse before I arrived, because they did not like how much control NetImmerse takes from the programmer (…)
But RenderWare has proven to be a good API for us.
[/quote]
Many thanks for that info. That’s the practice values I’ve been looking for.

The game runs on PC, but not on on the current console generation (Ps2, Gamecube, …) because they’re too slow for its purpose.
When the game’s finished it would be nice however if it could be ported to the next console generation. Maybe to the Mac, too.

Would Renderware be oversized for the purpose? Will it run on Ps3, too?

Oh, and Renderware doesn’t run on the Mac… :frowning:

Not solvable probably.

[quote]Not sure where Ogre is at.
[/quote]
http://www.ogre3d.org
http://sourceforge.net/projects/ogre
http://www.bytelords.de/cowiki/426.html

Browsing the CVS ogre/ogreaddonns/Ogre4J folder has source of Ogre4J java wrapper. I havent used it thought and bytelords site has only few docs about it.

Ogre is good :slight_smile:

Been looking at Ogre4j. Its only partly done. Just about enough to get the demo running and thats it. And yeah Ogre is nice!

[quote]Been looking at Ogre4j. Its only partly done. Just about enough to get the demo running and thats it. And yeah Ogre is nice!
[/quote]
Ogre has a spinoff Axiom project, where its rewritten (not native lib wrapper) in 100% csharp for dotNet platform. They plan to support Mono platform as well.

Thanks for the input. Ogre… Opensource… Personally I like Opensource but how well does an Opensource 3d engine fit to a commercial game project? Any personal experiences please?
The developers will encounter problems/questions sooner or later and then it’s a must to be able to get fast and good support…

Ogre is for desktop PCs “only” (I don’t mind personally and it’s million times better than just Windows). What to say however if a publisher want to see the game running on PS3 one day? For example with RW I think it’s very possible that it will run on PS3, too… So you could say: “yes yes yes no such a big problem”.

Personally I like the unreal engine quite a lot.

I especially like the facts that it has very easy yet powerful java-like OO scripting and an incredible development environment/editor.

It runs on PC and Mac out of the box, but is portable to other platforms as well (there is a PS2 port for Unreal Tournament and Deus Ex for example).

But it depends on your needs (what kind of game are we talking about?), if the unreal engine is appropriate.

[quote]We’ve still to evaluate how computing intensive the scripting will be, how easy to use is have to be, etc. Maybe we’re going to use Python (simpler but slower) , or Java (much complexer compared to a “pure” scripting one, but faster - as fast as C/Cpp). Will have to see.
[/quote]
Game scripting is (almost by definition) not computing intensive at all since the scripts are usually just executed occasionally. So I wouldn’t make performance of languages the main focus in your choice.

Not always - scripts can sometimes be continually executed. Depends if you’re expecting them to be fast or not.

Cas :slight_smile:

If you mean by continually: every game tick, then yes. That’s still occasionally compared to the raw meat of the engine. But sure in the end it always depends on your needs but usually performance requirements of scripts are not that important.

[quote]We’re using RenderWare right now and are pretty happy. It’s C based. But we wrote some C++ wrappers around it to help out with the game code. (…)
They switched to RenderWare from NetImmerse before I arrived, because they did not like how much control NetImmerse takes from the programmer, that’s what they told me anyways.
[/quote]
The project owners I’m partly freelancing for, finally decided to use Netimmerse. It reminds me somewhat to Java3d/Xith3d because it’s also scenegraph based, in contrast to Renderware. Also it’s truely object orientated in contrast to Renderware. The importers are nice; no need to worry about animated bones. :wink:

The big disadvantage is that it’s not Java, but C++, which is a pain in the back.
Another disadvantage is that NI isn’t available for Mac, just for PC + Consoles. Which is a shame, because I hear so many good storys about happy Mac developers compared to those (including me) battling with Win32.

Btw, EA bought british Criterion, the creators of Renderware. :frowning:
http://www.gamesindustry.biz/content_page.php?section_name=dev&aid=3879

Hmm. I would disagree and say that in general it is computing intensive, based on the way that modern commercial games are developed, where scripting is often a very big part of the resource usage. c.f. the interest in LOD-AI because AI demands today are far beyond what a game can achieve.

I’ve also heard several horror stories from commercial developers who’ve used python, naively accepting the words of the python evangelists:

“It’s faster to code, and if it’s too slow to execute, you can just re-write the affected parts in C/C++”

Yeah, theoretically. But…the people I’ve heard from have discovered that when you get to that point almost EVERYTHING needs rewriting in C, to the extent that Python can easily be a net producitivity loss.

Shrug. Someone else I know was going to write a paper outlining where an how python is terrible for games development, based on his own experiences (and he likes python, he just is fed up of it failing in important places). In the end he bottled out, concerned at the backlash that would probably hit him :(.

c.f. our discovery with survivor that Beanshell is 80%-99% the speed of java for everything…except some loops! You could get a long way into writing yoru game in beanshell before discovering THAT nasty aspect (although at least with beanshell you can copy/paste into java, unlike python to C).

If there’s any good comparison sheet available which outlines the pros/cons for using Phyton versus Beanshell I’d be interested in this, too.
I know there are some threads here around where scripting languages have been discussed, but a “all on one paper” thing would be top.

[quote] I know there are some threads here around where scripting languages have been discussed, but a “all on one paper” thing would be top.
[/quote]
In one of the threads on scripting someone posted who had tried them all (every language that targets the jvm). Very interesting.

http://jirr.sourceforge.net/ is a jni wrapper for the irrlicht engine.