Archived

This topic is now archived and is closed to further replies.

Game Engine???

This topic is 5001 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have looked at the possibility of making a game. I understand I should learn C/C++, but what I don''t understand is what makes a complete game engine. I have been told to look at some of the following engines: ================================================ ogre3d http://www.ogre3d.org/ Nebula1&2 http://sourceforge.net/projects/nebuladevice http://www.radonlabs.de/ http://irrlicht.sourceforge.net/ http://neoengine.sourceforge.net/ http://www.realityfactory.ca/v3/ (derived from genesis3d open-s fast way to make fps games) http://www.genesis3d.com/ http://crystal.sourceforge.net/ http://xengine.sourceforge.net/ http://www.panardvision.com/v3/ http://orion3d.alrj.org/ http://apocalyx.sourceforge.net/ (interesting) http://www.cubeengine.com/ (actually a fps engine) NIN engine http://www.illicitdev.net/~ozak Nive 3d http://www.faktiss.com/ NemoX http://perso.wanadoo.fr/malakoff/index.htm mind engine http://medev.sourceforge.net/ ================================================ Thats a good start.. but some claim to not be a game engine, but can be used as an engine. Can someone clarify the components that make up an engine? Does the engine give you a Server and Client environment? Tenebrosity

Share this post


Link to post
Share on other sites
thats a mighty list you''ve got there mate.

A game engine would contain components to handle everything in a complete game, including networking, graphics, input, sound, resource/memory management, scene management etc.

Just to pick a couple from your list, ogre, crystalspace and irrlicht are all graphics/3d engines. They basically fulfill the graphics, and sometimes input, requirements of a game engine. If using these you would have to integrate them with other components to make the game engine.

Something like neoengine on the other hand is a complete game engine, and provides all the necessary tools and libraries for handling networking, graphics etc.

BUT WAIT, while investigating these engines is all well and good, you must first learn how to program AND design. If using an existing game engine, you obviously won''t need to learn the details of octree culling, or memory management, but you will need to know how the various engine components work on an architectural scale. Also if using an object oriented language like c++, you will have to learn the OO paradigm and it''s various quirks, aswell as how c++ implements them.

So learn:
General Programming
OO
Game/System Architecture

C++ can be learnt alongside each of these things.

ON THE OTHER HAND, if you want to dive straight into making games I would consider using a game creation tool like DarkBasic or something. I''ve never used one myself, but I assume its a very easy way to get something up and running quickly.

Share this post


Link to post
Share on other sites
Read the "Enginuity" articles here.
They tell a lot about Game-Engines.

You define what a complete game engine is for you.
If you don''t need sound and network components then the engine doesn''t need those features to be complete.
Just read about what the differences between application-parts and engine-parts of games are.
NeoEngine for example will be a complete game engine.
Some engines are more or less Graphics engines only.

Share this post


Link to post
Share on other sites
making a engine is quite a undertaking, first off you should be more than capable of making some halfway decent games/demos before you even start thinking of making a engine. Then set aside 8-10 months and get a few people to help you.

to find out what make a engine a engine, read the enginuity articles (posted right above this).

Also, you for got a certain engine, now how could you put genesis3d in there and forget it''s bigger brother


___________________
-Nicholas Anton, Owner RaptorTech
-Admin(at)Raptor85.com
-Offer to all Gamedev members

Share this post


Link to post
Share on other sites
A game engine deals with input/graphics/sound/networking. It''s basically a class or library of classes that wrap around an API like DirectX or OpenGL/OpenAL. Example:

GAME ENGINE
^^^^^^^
DIRECTX
^^^^^^^^
HARDWARE

So DirectX makes it easier to deal with the hardware. And a game engine makes it easier to deal with DirectX. You don''t need a game engine, but you''ll spend time writing every little detail needed to make DirectX (or whatever Multimedia API you''re dealing with) work. For instance:


...
LPD3DXBUFFER pD3DXMtrlBuffer;
D3DXMATERIAL* d3dxMaterials = (D3DXMATERIAL*)pD3DXMtrlBuffer->GetBufferPointer();
g_pMeshMaterials = new D3DMATERIAL9[g_dwNumMaterials];
g_pMeshTextures = new LPDIRECT3DTEXTURE9[g_dwNumMaterials];
g_pMeshMaterials[i] = d3dxMaterials[i].MatD3D;
g_pMeshMaterials[i].Ambient = g_pMeshMaterials[i].Diffuse;
// Create the texture.

if( FAILED( D3DXCreateTextureFromFile( g_pd3dDevice,
d3dxMaterials[i].pTextureFilename, &g_pMeshTextures[i] ) ) )
g_pMeshTextures[i] = NULL;
}
pD3DXMtrlBuffer->Release();
...
// this code fragment deals with loading a mesh into your game

// sceen.




// or you could have a class method (function) that takes care

// of all that junk for you. Now all you have to do is type this

#include "c3DEngine.h" // or whatever

...
c3DEngine::loadMesh("myMesh.x");
// and tada! the mesh is loaded--much easier right?



Now possible game engines could be: Programming Role Playing Games with DirectX w/CD ($40) or the TorqueEngine ($100).

Now the book will tell you how to make your own, but why do that when you can just buy one .

Share this post


Link to post
Share on other sites
quote:
Now the book will tell you how to make your own, but why do that when you can just buy one .


GameDev.net will tell you how to make your own game, but why do that when you can just buy one .

Share this post


Link to post
Share on other sites
quote:
Original post by MadKiwi

GameDev.net will tell you how to make your own game, but why do that when you can just buy one .




You''re entirely right. On the other hand though, we make games because we want to--not because we need to (unless it''s your job and you want money for food, clothing, etc). You see a game is a product and a game engine is a tool. Basically what I''m saying is only build an engine if you want to. Otherwise use something that has already been created and focus on what you really want to do--make a game. If you just want to make your own game, then you''re not going to learn how to build a compiler and then create one before you even start on your interactive package are you? Probably not. You are just going to buy MSVC++.NET (or some other pre-made compiler) and start the creative process.

In other words, don''t build a wrench to build your dream machine unless building a wrench interests you. And don''t build your dream machine (Lamborghini Diablo) if it already exists unless the building of one interests you or you would like your own "custom" one (or you can''t afford one, in my case).




"Do not flame people you don''t know in a public forum. Only amateurs do that. Professionals in the industry know they will run into each other over and over. The person you flame this year may the person you want to do business with next year. Don''t burn your bridges," (Diana Gruber, http://www.makegames.com/chapt6.html).

Share this post


Link to post
Share on other sites
Trying to learn C++ now.

Coming from a VB and web development background makes it a challenge. :o

Not concerned with making the whole engine myself, unless theres a valid reason to.

I want an engine that supports DX9, Server/Client (with option to make MMORPG, if needed) good support community and affordable. So far I like the Torque engine, but can it be expanded to support an MMORPG?



[edited by - Tenebrosity on March 26, 2004 1:14:53 PM]

Share this post


Link to post
Share on other sites
You can join the Garage Games community and post in their forums without needing to purchase any of their products.

It''s also for developers using other software, and they have a forum specifically for asking questions prospective Torque Engine licensees.

From the replies I''ve seen to similar questions there, it appears that the FPS demo included with the SDK can handle up to 128 players online at any one time, without requiring any modifications.

As the full source is included, any functionality you can''t achieve using the scripting language can be added by modifying the underlying C++ code and recompiling.

You might also want to take a look at the Realm Wars project, which is being built using the Torque Engine. It''s not exactly a MMORPG, but it''s probably closer than the FPS demo is.

Share this post


Link to post
Share on other sites
www.coolhouse.fi/gekkeiju/

a functional MMORPG (though with the player count in beta not quite so massive yet)

Just recently upgraded from genesis3d to jet3d, and will most likely upgrade to the next version of jet3d, which is DX9 based.

___________________
-Nicholas Anton, Owner RaptorTech
-Admin(at)Raptor85.com
-Offer to all Gamedev members

Share this post


Link to post
Share on other sites
Clueless - Thanks for the link!

---------------------------------------------------

Looking for some advice.

My goals (new to Game development) -
Audio development
3D modeling / Skinning
Develop a Mod for an existing game
Develop a small game for learning purposes
Develop a network capable game for learning purposes
Design and develop a game with some friends for fun, maybe 3rd party engine.
Possible conference display in a few years.
(Yes I want to understnad every apect of this)

My Background -
Play 4 instruments and have formal music theory training (rusty)
Commercial Art degree, with a course in Video Production and 3D (using lightwave.. but had a hard time with it)
Software Engineer with 8 years in the field and working on completing my MCSD .NET 2003.
Math - I can get it done... develop apps that deal with 401k's
I am 28 years old...
(When I start a project it always gets done... even when wife dislikes the time it consumes. haha)

What kind of a learning curve do you think I am looking at?

Am I to old to go from application development to game development?



[edited by - Tenebrosity on April 2, 2004 9:29:06 AM]

Share this post


Link to post
Share on other sites
quote:
Original post by Tenebrosity
What kind of a learning curve do you think I am looking at?



Depends on how fast you learn and how well you can apply new information--basically cognition. In my case, I started game development as a whole (programming, art, music, design, marketing, etc.) about a year ago and I'm doing pretty well (better when I attended school for it). So, again, it depends on the person but mostly on how much time you put in--like anything else.

quote:

Am I to old to go from application development to game development?



No, unless your 70 (which your not) and have some rare jungle disease. And app development is game development--as games are (fun) applications.


[edited by - DIRECTXMEN on April 2, 2004 10:15:33 AM]

Share this post


Link to post
Share on other sites