Jump to content
  • Advertisement
Sign in to follow this  
xinjl

OpenGL question about the workload of developing a game engine

This topic is 3583 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'm preparing for my graduation assignment for master's degree. My tutor has not yet determined the subject and I have to make recommendations. I'm quite interested in developing a game engine based on both Opengl and DX, but have some doubts about its workload, and that if I could do it all by myself in about one and half a year. I'm familiar, and have some understanding about 3d game engine theories, such as geometric transformation, collision detection, BSP occlusion detection, LOD, etc. Have some experience using OpenGVS. but my knowledge about lighting, raytrace, and shading, or experience using OpenGL or DX is little, although I have confidence that I could learn quickly with some tutorial. Could any one give me some pieces of advice? Many Thanks. [Edited by - xinjl on November 18, 2008 8:53:32 PM]

Share this post


Link to post
Share on other sites
Advertisement
I have worked with and on several commercial game engines. What you are describing is a small part of a game engine, the graphics part. I'm sure you could make yet another graphics + mini game engine in 1.5yrs, particularly if you have been accumulating knowledge and code in that direction for some time. A commercially usable game engine has many components, many of which are incredibly boring and in my opinion, the most critical parts are not the runtime engine at all, but the tool pipeline and level editing tools. The tool pipeline being the bit that gets assets from a creation program like 3DS Max or Maya into the game, and the editor being the one or more tools to allow designers to build game content. I suppose one piece of advice I could give you is to download the free 'modding' source code that is available for current games like Unreal Tournament and Doom3, and complete free source for older games like Quake3. The source code and supporting tools should give you an idea of what goes into a modern game engine.

Share this post


Link to post
Share on other sites
Back in 2004, I built from scratch a heightmap generator using Perlin noise, a BSP subdivision routine, plus a software renderer to display the results of those algorithms, and all of it was in Objective Caml. It took me around 48 hours of total work, spread over a few months, and it was done to demonstrate the perlin and BSP concepts, not to be used as a game engine, so it avoided all the nifty things like textures, gouraud shading, and so on.

Share this post


Link to post
Share on other sites
Quote:
Original post by ToohrVyk
It took me around 48 hours of total work, spread over a few months,




what did you do in the rest of the time,study and designing? or were you busying with some other stuff?

Share this post


Link to post
Share on other sites
I used to have lots of enthusiasm for 'reinventing the wheel' and I still find myself doing it when my brain is turned off. The older I get, the more I consciously try to avoid it though. In my opinion, many people have written many, many game engines. I think it's more fun to use some public engine and actually write a game than to write a game engine. Alternatively, if you're interested in learning, pick some aspect that's really cutting edge and focus on that. Take an existing engine or write a super lite one that does the least it possibly can except for the one interesting thing you're doing new. I think you'll be happier in the end and probably more likely to actually finish as well.

Share this post


Link to post
Share on other sites
Quote:
Original post by jdindia
Take an existing engine or write a super lite one that does the least it possibly can except for the one interesting thing you're doing new. I think you'll be happier in the end and probably more likely to actually finish as well.




Very frank. I appreciate it very much.

Share this post


Link to post
Share on other sites
Quote:
Original post by xinjl
what did you do in the rest of the time,study and designing? or were you busying with some other stuff?


Busying with other stuff (class, and developing Darklaga).

Share this post


Link to post
Share on other sites
Quote:
Original post by ToohrVyk
Quote:
Original post by xinjl
what did you do in the rest of the time,study and designing? or were you busying with some other stuff?


Busying with other stuff (class, and developing Darklaga).



Also my case, got a job to do.

Share this post


Link to post
Share on other sites
I've never written a complete game engine, I have only done work on renderers, but I think the best thing about writing a game engine is that you would understand everything about it when its done...the code is yours, and so are the mistakes.

Basically, a frustrating thing about developing on someone else's game engine is that there are always weird things that make no sense, undocumented gibberish, code that doesn't do anything, etc. Your engine will have all this stuff too, but at least you will know about it.

In the end, you will have an engine that hopefully will be designed for whatever application you have in mind, and wont have to struggle to adapt a more general system.

Plus if your engine is good enough you can license to other suckers.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

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

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!