Game Architechure (long)
I have spent well over 6 months exploring game architecture design and rendering processes, and generally making a mess of things.
I am attempting to create a basic height-map engine (similar to Roller Coaster Tycoon) in OpenGL under the Win32 environment. My first attempts were based upon NeHe''s OpenGL tutorials, which while they provided a testbed for little experiments, lacked any real functionality, such as an effectuve error handler. I did like (in the later versions) the ability to change from fullscreen and windowed mode. But I had a lot of trouble implementing loops to draw points. I have also experimented with the Code off the Cob framework, which was far too complicated. I was unable to get OpenGL working with it, and I added it to the pile in my recycle bin.
I have decided to start from scratch. I''m going to make a clean engine, with a simple interface, but still retaining full functionality and power of the underlying APIs.
What I need is a basic system approach to a game engine. Something like:
WinMain:
Initialize System
Game Loop
Main Game Loop:
Draw World
Do other stuff
....
....
Loop
What my engine requires:
* GOOD error handling and debugging system
* Heirachial system for drawing height-map grid squares (World, Grid, Triangle, Point)
* Dynamic LOD, or some other technique to reduce the number of polygons in squares (each square is made from 8 triangles)
* Variable zoom and rotational levels, which allow the user to move arround the world with more freedom
* DirectSound support for in-game sounds and music
* Support for a 3D model format (undecided, but most likely something from MAX)
*
I DON''T require suggestions on the afore-mentioned features I plan to implement. I have included these as a guide to the sort of functions I want to implement, so that someone who helps out is more informed.
In summary, I require a pseudo-code implementation of a game architecture, and a rendering loop, as well as any other sections which may not be intuitave, such as input and sound. Please DON''T give me code - I need some challenge! However, if anyone has documentation or a tutoral on this or a related topic, I would gladly accept.
Thanks in advance to anyone who helps!
Richard
(Not affiliated with XEOS Digial Development - just using their internet connection :-))
I may not be the smartest man alive, but I have a lot more hair than you!
Bill Stephenson
XEOS Digital Development - Supporting the independant and OpenSource game developers!
quote: In summary, I require a pseudo-code implementation of a game architecture, and a rendering loop, as well as any other sections which may not be intuitave, such as input and sound. Please DON''T give me code - I need some challenge!
50% of programming is the actually psuedo-code itself. Implementation is the other 50%. you''re asking US to do 50% of the work for you?
=======================================
A man with no head is still a man.
A head with no man is plain freaky.
>> 50% of programming is the actually psuedo-code itself. Implementation is the other 50%. you're asking US to do 50% of the work for you? <<
Zipster, he asked for tutorials and/or documentation. He also specifically stated that we shouldn't give him any code
/. Muzzafarath
Mad House Software
Edited by - Muzzafarath on June 10, 2000 4:29:19 AM
Zipster, he asked for tutorials and/or documentation. He also specifically stated that we shouldn't give him any code
/. Muzzafarath
Mad House Software
Edited by - Muzzafarath on June 10, 2000 4:29:19 AM
I'm reminded of the day my daughter came in, looked over my shoulder at some Perl 4 code, and said, "What is that, swearing?" - Larry Wall
Richard seems to have caused quite a stir!
I had a talk to him, and all he wanted was a general description of how a game loop and rendering function should work. I would help him, but he has to learn something for himself too :-P! If anybody can give him a hand, he''d appreciate it!
Simon Wilson,
Lead Programmer,
XEOS Digital Development.
Website comming soon!
I had a talk to him, and all he wanted was a general description of how a game loop and rendering function should work. I would help him, but he has to learn something for himself too :-P! If anybody can give him a hand, he''d appreciate it!
Simon Wilson,
Lead Programmer,
XEOS Digital Development.
Website comming soon!
XEOS Digital Development - Supporting the independant and OpenSource game developers!
quote: Original post by xeos
Richard seems to have caused quite a stir!
I had a talk to him, and all he wanted was a general description of how a game loop and rendering function should work. I would help him, but he has to learn something for himself too :-P! If anybody can give him a hand, he''d appreciate it!
Simon Wilson,
Lead Programmer,
XEOS Digital Development.
Website comming soon!
Quite a stir? There has been three replies (four including this one) when I wrote this. That''s not a stir And why are you also using xeos as your nickname...?
/. Muzzafarath
Mad House Software
I'm reminded of the day my daughter came in, looked over my shoulder at some Perl 4 code, and said, "What is that, swearing?" - Larry Wall
Simon''s just kidding - it seems you got a little bit upset when I asked above.
The reason we all use the same nickname is that very early on, we developed a custom front-end for these boards. It automatically puts our nickname and password, and all we need to do is select our name from a drop-down box, and it sends it off. Simple! :-)
*********************************************
I have been based upon the work I have been doing some work on my architecture. I''d appreciate if someone could peruse it for me, and give me some feedback!
ENGINE DESIGN:
MAIN LOOP:
* Read input and modify required flags / variables
* Calculate AI functions and modify appropriate game data
* Render scene
* Check sound que and update sound thread if necessary
RENDERING LOOP:
* Which Quadtree sector is the camera above?
* Can we see other sectors?
* Calculate LOD for grid squares
* Draw visible grid squares
* Draw objects (people, buildings, vehicles etc.)
I have NO idea how to detect which sectors in a quadtree are visible, but I''m sure I''ll find it somewhere.
Thanks for your help, and I''m sorry if it offends you to ask for help!
Richard
Artist / 3D Modeler
The reason we all use the same nickname is that very early on, we developed a custom front-end for these boards. It automatically puts our nickname and password, and all we need to do is select our name from a drop-down box, and it sends it off. Simple! :-)
*********************************************
I have been based upon the work I have been doing some work on my architecture. I''d appreciate if someone could peruse it for me, and give me some feedback!
ENGINE DESIGN:
MAIN LOOP:
* Read input and modify required flags / variables
* Calculate AI functions and modify appropriate game data
* Render scene
* Check sound que and update sound thread if necessary
RENDERING LOOP:
* Which Quadtree sector is the camera above?
* Can we see other sectors?
* Calculate LOD for grid squares
* Draw visible grid squares
* Draw objects (people, buildings, vehicles etc.)
I have NO idea how to detect which sectors in a quadtree are visible, but I''m sure I''ll find it somewhere.
Thanks for your help, and I''m sorry if it offends you to ask for help!
Richard
Artist / 3D Modeler
XEOS Digital Development - Supporting the independant and OpenSource game developers!
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement