I'm looking for a Simple, Well-designed open source game engine for study.

Started by
11 comments, last by gamefish 18 years, 6 months ago
I've checked some of the engines in sourceforge, but they are either too complex or too confusing. please recommend one for me.
Yang Yu - Software Engineer, UISoft
Advertisement
You could check out Dave Eberly's Wild Magic Engine here.

It is not necesarily the simplest engine, but if you want to study the architecture and some fairly clean code, its free for download. You can also check out his books for further clarification of the concepts as well. I swear by some of his techniques...
Appreciate for your recommendation, I heared about his book, is it really cool?
by the way, I can't open the link in your post, are you sure it is correct?
Yang Yu - Software Engineer, UISoft
Quote:Original post by gamefish
I can't open the link in your post, are you sure it is correct?


It works for me, check to see if you have any software running that might block sites. Not sure why it'd trigger on that site, but it can happen [wink]
I'd recommend Ogre - probably most popular open-source engine nowadays. It's really simple and one could say it's well-designed as well (OO, multi-platform, multi-graphics API, "transparent" shaders languages support).
Maciej Sawitus
my blog | my games
If you are looking in sourceforge, then do not miss Irrlicht. This is simplest engine I ever seen, yet still powerful enough, with shaders, etc.

You could also look for hes successor, IrrlichtNX, which is not under development any more, it will be replaced by Lightfeather. Lightfeather release is expected in next 48h as alpha. It is based on IrrlichtNX, but engine is writen from scratch, while keeping some old stuff for compatibility.

http://irrlicht.sourceforge.net/
http://www.irrlichtnx.mmdevel.de/
http://lf.mmdevel.de/

What language(s)?
Quote:Original post by Roboguy
What language(s)?

C++.
I'm a freshman and just want to study the engine architecture and need some fairly clean code, like Jason.Z said.
I'm digging my way through OGRE & Irrlicht now. But I don't feel good :(
And I can't access to the Wild Magic Engine, may be something is wrong with my proxy.

Everything is just too hard for me. My be I should change my question to:
What should I learn before turning to study an engine?
Yang Yu - Software Engineer, UISoft
Well, definetelly learn something about DirectX and OpenGL first. It will be hard to follow code otherwise. Or first, try to learn something about game development technics in general: scene, scene nodes, scenegraph, frustrum culling, matrix and quaternion technics (transformations), billboarding, alpha blending, materials and renderpasses, portal rendering, etc.
Quote:Original post by gamefish
Everything is just too hard for me. My be I should change my question to:
What should I learn before turning to study an engine?


I'd summarize knowledge needed to understand engines like Ogre as follows:

1. Understand basic Object Oriented Programming concepts

2. Of course linear algebra on a very basic level.

3. Understand well typical fixed pipeline like in OpenGL or Direct3D.

Up to the level that you know what is possible and what is not.
You should understand what are most common bottlenecks when using OpenGL / Direct3D and what impact they have on data representation and the whole rendering pipeline.

4. After you understand fixed pipeline, then learn about shaders (HLSL, GLSL).

Again, like with fixed pipeline, you should know what can/should be done using shaders, what can't/shouldn't.

5. Basic knowledge on 3D models representation (hierarchical skinned models and static ones).

6. Basic knowledge on spatial structures to store 3D scene (Octree, KD-trees, sectors & portals, more...).

Hope this helps.
Maciej Sawitus
my blog | my games

This topic is closed to new replies.

Advertisement