Jump to content


Photo

Picking out a 3D-engine...


  • Please log in to reply
21 replies to this topic

#1 thenoller

thenoller

    GMC Member

  • GMC Member
  • 208 posts

Posted 05 February 2011 - 10:50 PM

As a huge fan of the Myst-franchise, and recent player of the fully 3D-rendered "RealMYST", I've been thinking about making a 3D-adventure-game for a while now. I thought this was the most efficient way to pick out a suiting engine: Let you guys do it ...thank you.
I've been looking at quite a number of different 3D-extensions and engines for GM, but I was hoping that someone would happen to know just the perfect choice, if these were the requirements:

I would like to be able to (listed after decreasing importance):

  • Render some pretty light/shadow, some basic fog and maybe some particles.
  • Do some basic animations (no more advanced than GMs build-in rotation/moving of single objects.
  • Apply textures fairly easily (for instance via UV-maps edited with UVmapper), preferably with at least 1-bit alpha-channels.
  • Use video as a texture or some sort of overlay (like in Myst/Riven).
  • Easily import objects from, for instance, Anim8or.
  • Render objects partially transparent (like water).
  • Maybe render 2D overlays or objects as additive lightning.

I don't think I'll need to (listed after decreasing unimportance):

  • Animate with bones and morph-points.
  • Use physics and collisions
  • Use fancy shaders.
  • Render reflections or refractions.
  • Ensure a great performance at all times (this is not like I don't care about it, I'm just saying that if any game in the world should be allowed to lag a bit, it should be a non-action game like this).

Clearly you can see that I'm aiming towards something as simple as possible, so I can focus on the game rather than wasting time setting up something I don't need the functionality of.
If anyone knows just the right engine/extension, please respond below.
Thanks in advance :)
  • 0

#2 -=ReNeX=-

-=ReNeX=-

    GMC Member

  • New Member
  • 403 posts

Posted 05 February 2011 - 11:34 PM

You're asking for something completely custom. You can try Ultimate3D, which is a very high-quality interface, or use the internal D3D: you would need just an Anim8or loader and SurfaceFix to do all those things.
  • 0

#3 Robert3DG+

Robert3DG+

    VR Games

  • GMC Member
  • 1831 posts
  • Version:GM:Studio

Posted 05 February 2011 - 11:44 PM

No one has made a general GM 3D engine as far as I know. Just lots of examples and stuff. You're gonna have to search around for the components you need.
  • 0

#4 mcmonkey

mcmonkey

    mcmonkey

  • GMC Member
  • 662 posts
  • Version:GM8

Posted 06 February 2011 - 01:32 AM

Most of that stuff can be done in default GM...
  • 0

#5 Phantom107

Phantom107

    Engineer

  • GMC Member
  • 2589 posts
  • Version:GM:Studio

Posted 06 February 2011 - 11:39 AM

Considering your needs, Ultimate3D will be the best engine for you. It supports out of the box *.an8 importing, which will save you considarable time. The rest of your demands is fairly standard and it's all supported.

However, ultimately GM OGRE is the best graphics/physics/collision engine in GM. Even for 2D. It's way more powerful, uses DirectX9 instead of DirectX8 (Ultimate3D uses DirectX8) allowing higher shader models, runs both DirectX9 and OpenGL, has features for animation morphing, material libraries, and has a ton more features plus it can render much faster than Ultimate3D. But Ultimate3D is easier for beginners since you can import various file formats instantly. With GM OGRE, you have to convert models to the dedicated *.mesh format first, which can be a problem for some users.
  • 0

#6 slayer 64

slayer 64

    GMC Member

  • GMC Member
  • 3274 posts
  • Version:GM8.1

Posted 06 February 2011 - 06:32 PM

real game makers use built in d3d like a boss.
  • 4

#7 thenoller

thenoller

    GMC Member

  • GMC Member
  • 208 posts

Posted 06 February 2011 - 07:07 PM

Thanks for all the great responses. And also thanks for the useless ones - I'm gonna assume that you at least tried.

[...] Ultimate3D is easier for beginners since you can import various file formats instantly. With GM OGRE, you have to convert models to the dedicated *.mesh format first, which can be a problem for some users.


I honestly thought that there were other engines out there besides Ultimate3D and GMOgre3D, but now I decided to go with GMOgre - it's fairly easy thanks to your 3DS-to-Mesh application (thank you so much for that). My only problem is the textures - more specifically UVmaps which are a pain in the A-hole in Anim8or. Plus UVmapper sucks.

Perhaps any suggestions on how to more easily apply textures correctly onto the mesh (external tools, techniques, whatever)?

EDIT: I think I should add that I'm not going to consider GM's build-in functions, as they have such extensive performance-issues.

Edited by thenoller, 06 February 2011 - 07:09 PM.

  • 0

#8 Phantom107

Phantom107

    Engineer

  • GMC Member
  • 2589 posts
  • Version:GM:Studio

Posted 06 February 2011 - 07:24 PM

I honestly thought that there were other engines out there besides Ultimate3D and GMOgre3D, but now I decided to go with GMOgre - it's fairly easy thanks to your 3DS-to-Mesh application (thank you so much for that). My only problem is the textures - more specifically UVmaps which are a pain in the A-hole in Anim8or. Plus UVmapper sucks.

Perhaps any suggestions on how to more easily apply textures correctly onto the mesh (external tools, techniques, whatever)?

There are other engines, but they for the 2D component of GM.

As for that 3DS-to-Mesh app I made, I recently found out that the 3ds2mesh.exe file I was using for it did not convert any normals/animations. Therefore I advise you not to use it. But I have a solution.

Instead, get the program Blender 2.49b: http://www.blender.o...gs/blender-249/ The newer beta versions (current is Blender 2.56) are better (prettiest interface I have ever seen) but I think the OGRE export plugin doesn't support it.... but I'm not sure.
Then install the OGRE XML exporter for Blender: http://www.ogre3d.or...structure=Tools
To convert the XML files to Mesh, you will need OGRE CommandLineTools http://sourceforge.n....3.msi/download
You can setup the exporter within Blender to use the CommandLineTools automatically so you don't have to manually convert XML to Mesh with the CommandLineTools.

For UV-mapping I have found a tool on the internet called LithUnwrap. It's really easy to use. Problem is there are multiple versions from it under the same name, so I have the good one uploaded here: http://www.host-a.ne.../LithUnwrap.zip

Now I'm not sure how this will work out with animations, since I've never worked with them before and I won't be needing them for my game.

An option you should consider is to use Blender for modeling, animating and UV-mapping in one package. Blender steamrolls all free modeling apps and I haven't seen a feature it doesn't have. Using Blender for UV-mapping is better than using LithUnwrap, but personally I like that program and I'm just a beginner with Blender. So it's really up to you. The biggest advantage of all is that if you model/animate/UV in Blender, you don't need to have ANY other tools to create models for OGRE or other rendering engines. (With the exception of tools like GIMP http://www.gimp.org/ that allow you to paint the texture)

Edited by Phantom107, 06 February 2011 - 07:26 PM.

  • 0

#9 Saijee

Saijee

    GMC Member

  • GMC Member
  • 2251 posts
  • Version:Unknown

Posted 06 February 2011 - 08:26 PM

real game makers use built in d3d like a boss.

Real game maker users can make 3D games both ways.

As others have said though, U3D'll do the job clean for you Noller.

Edited by Saijee, 06 February 2011 - 08:29 PM.

  • 0

#10 thenoller

thenoller

    GMC Member

  • GMC Member
  • 208 posts

Posted 07 February 2011 - 01:07 PM

As for that 3DS-to-Mesh app I made, I recently found out that the 3ds2mesh.exe file I was using for it did not convert any normals/animations. [...]

That explains the messed up shadows.. -_-
Besides that, it all looks really great, and I highly appreciate all the help you've been giving. I have one minor problem, though:

[...] To convert the XML files to Mesh, you will need OGRE CommandLineTools http://sourceforge.n....3.msi/download
You can setup the exporter within Blender to use the CommandLineTools automatically so you don't have to manually convert XML to Mesh with the CommandLineTools.

I cannot locate these tools, once installed. No hits on hard-drive-search, and no clue in the install-process on where the files are placed.

Blender needs a directory for the converter, and the converter claims to be installed properly when running the installer again (by displaying a 'repair'-option etc.) Is there any way I have installed the converter properly but just don't know hot to access it..?

Also - this was very helpful, thank you :) :

For UV-mapping I have found a tool on the internet called LithUnwrap. It's really easy to use. Problem is there are multiple versions from it under the same name, so I have the good one uploaded here: http://www.host-a.ne.../LithUnwrap.zip


I will consider a transition from Anim8or to Blender, but as it looks now I won't need either of those tools - I teamed up with a friend and 3DSMax-user currently studying at the 3D-college here in Denmark. He has no knowledge of game making or OGRE however, so hopefully he won't render me completely unemployed.
  • 0

#11 Phantom107

Phantom107

    Engineer

  • GMC Member
  • 2589 posts
  • Version:GM:Studio

Posted 07 February 2011 - 01:15 PM

I cannot locate these tools, once installed. No hits on hard-drive-search, and no clue in the install-process on where the files are placed.

Blender needs a directory for the converter, and the converter claims to be installed properly when running the installer again (by displaying a 'repair'-option etc.) Is there any way I have installed the converter properly but just don't know hot to access it..?

This is where it installs:

C:/OgreCommandLineTools

Also - this was very helpful, thank you :) :

No problem. :)
  • 0

#12 thenoller

thenoller

    GMC Member

  • GMC Member
  • 208 posts

Posted 07 February 2011 - 01:38 PM

This is where it installs:
C:/OgreCommandLineTools


I feel stupid. And then again, it's like "stupid" doesn't even cover it.
  • 0

#13 slayer 64

slayer 64

    GMC Member

  • GMC Member
  • 3274 posts
  • Version:GM8.1

Posted 08 February 2011 - 03:39 AM

Real game maker users can make 3D games both ways.


like you? >_>
i'm such a failure -_-
  • 0

#14 Saijee

Saijee

    GMC Member

  • GMC Member
  • 2251 posts
  • Version:Unknown

Posted 09 February 2011 - 12:14 AM


Real game maker users can make 3D games both ways.


like you? >_>
i'm such a failure -_-

Some GM users are bent on using the default features only, however the chances are the game would turn out looking a lot higher quality by other means, however in cases like mine, there are some games that come out more speed effective by using just d3d.
  • 0

#15 thenoller

thenoller

    GMC Member

  • GMC Member
  • 208 posts

Posted 09 February 2011 - 11:37 AM

Some GM users are bent on using the default features only, however the chances are the game would turn out looking a lot higher quality by other means, however in cases like mine, there are some games that come out more speed effective by using just d3d.


Don't you mean that they come out with smaller filesize/loading time. As for the actual rendering, having experimented a bit with GMOgre, I would like to see any particular 3D job that d3d does better than Ogre.. :S
  • 0

#16 Phantom107

Phantom107

    Engineer

  • GMC Member
  • 2589 posts
  • Version:GM:Studio

Posted 09 February 2011 - 11:43 AM

Don't you mean that they come out with smaller filesize/loading time. As for the actual rendering, having experimented a bit with GMOgre, I would like to see any particular 3D job that d3d does better than Ogre.. :S

There is one thing: simplicity.
  • 0

#17 Saijee

Saijee

    GMC Member

  • GMC Member
  • 2251 posts
  • Version:Unknown

Posted 09 February 2011 - 05:42 PM


Some GM users are bent on using the default features only, however the chances are the game would turn out looking a lot higher quality by other means, however in cases like mine, there are some games that come out more speed effective by using just d3d.


Don't you mean that they come out with smaller filesize/loading time. As for the actual rendering, having experimented a bit with GMOgre, I would like to see any particular 3D job that d3d does better than Ogre.. :S

Screw the file size, if the game is awesome but a gig, the fact that it's awesome outweighs the giant file size. Screw the loading time, a game that is awesome but takes half a minute to load will always be more awesome then a cruddy game that loads in a jiffy.

You want to see the reason why I only do some projects with DLLs and others with d3d? It's because I can have the most graphic images drawn to represent points of collision to the player as possible using d3d.

Have you ever heard of Bullet Hell? I made a game last year, Bullet Life, the one in my sig, making a bullet hell game means having hundreds of bullets, which constitutes a loop to detect if each of them are colliding with the player. And if you do this with a gm using some DLL, you might be lucky to get 150 bullets for 30 fps, but 150 isn't quite a bullet hell experience, not to mention that 30 fps looks bad.
  • 0

#18 toao

toao

    GMC Member

  • New Member
  • 157 posts

Posted 10 February 2011 - 09:13 PM

real game makers use built in d3d like a boss.


Someone should make a minimontage of your comments.
  • 0

#19 slayer 64

slayer 64

    GMC Member

  • GMC Member
  • 3274 posts
  • Version:GM8.1

Posted 11 February 2011 - 02:34 AM

which constitutes a loop to detect if each of them are colliding with the player.

spatial hashing much?
  • 0

#20 Saijee

Saijee

    GMC Member

  • GMC Member
  • 2251 posts
  • Version:Unknown

Posted 11 February 2011 - 07:03 AM


which constitutes a loop to detect if each of them are colliding with the player.

spatial hashing much?

Actually it's more of an issue of drawing hundreds of bullets. Simply: In general you can draw more individual bullets without lagging in d3d then using a dll. But if you happen to not be making a bullet hell shooter, there really is no reason not to use a dll.
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users