Get the latest Education e-news
 

Go Back   Game Career Guide Forums > Programming
Forum Home Register Members List Mark Forums Read

Reply
 
Thread Tools Display Modes
Old 07-06-2007, 02:55 AM   #1
h2osmack
Junior Member

Activity Longevity
0/20 20/20
Today Posts
0/11 sssssss11
Default Game architecture and software engineering

This has been a sticking point for me for a long time. I am a neat freak when it comes to architectures but I can't get my head around them half the time. I look on sourceforge for architecture examples but what I really need is something simplistic and documented. I did a module about software engineering but have yet to put a lot of the work into practise.
Can anyone share stories or direct me in the right path to making a template architecture for a simple game such as space invaders/pong?
h2osmack is offline   Reply With Quote
Old 07-13-2007, 05:35 PM   #2
HagNasty
Super Moderator

Activity Longevity
0/20 20/20
Today Posts
0/11 ssssss123
Location: Toronto Ontario
Default

I'm not exactly sure what you mean by architecture. each language has it's own rules so a generic structure is impossible. Can you be more specific in what you would like examples of?
__________________
~Justin Dooley

C, C++, C#, Objective-C, Java, PHP, SQL, Javascript, Actionscript, HTML, CSS
HagNasty is offline   Reply With Quote
Old 07-15-2007, 05:19 AM   #3
h2osmack
Junior Member

Activity Longevity
0/20 20/20
Today Posts
0/11 sssssss11
Default

I guess my terminology is a bit off sorry. I'm still learning lol.
Sort of a simple game engine that deals with object storage and brings in keyboard control etc.. so that I can use it as a template and build on it, put into a neat object oriented approach (the architecture?) so I can understand it hehe.
h2osmack is offline   Reply With Quote
Old 07-16-2007, 10:52 AM   #4
DMINATOR
Junior Member

Activity Longevity
0/20 20/20
Today Posts
0/11 ssssssss4
Location: Tallinn, Estonia
Default

I don't think there is one "good" choice when it comes to engines. Each engine designer creates something different and it is hard to decide what is good and what is not that good.

The only one who can decide that, is the game programmer who uses this engine.

I can recommend you to just try different engines. I mean "use" them and try to create something with them. That way you can quickly find the points that worked well and design your own architecture later.

A good start is OGRE which has some great ideas and is very well documented. I have also enjoyed The Nebula device structure and code design.

Good Luck !
DMINATOR is offline   Reply With Quote
Old 10-17-2007, 03:02 AM   #5
yaustar
Administrator
 
yaustar's Avatar

Activity Longevity
2/20 19/20
Today Posts
2/11 sssss2263
Location: UK
Default

Roundabout answer: Make Games not Engines

Actual answer: "Game Coding Complete" is one of the best books I have read about an overview on the design of a game 'engine'. Probably overboard for a Space Invaders clone though.
yaustar is offline   Reply With Quote
Old 10-26-2007, 02:52 PM   #6
iddqd
Junior Member

Activity Longevity
0/20 20/20
Today Posts
0/11 sssssss11
Default

OGRE actually isn't a game engine...it's a layer of abstraction between OpenGL/Direct3D graphics routines.

Are you asking for a "point in the right direction" regarding designing an engine or a good engine to use? Fortunately, I haven't had to make too many engines from scatch (I've always kept re-usability in mind)...but when I have had to do it, I generally try and think about the types of mechanics I'll be presenting first. I find it helpful to try and categorize things by what is unique, and what is fairly standard. I then start off with the basic/standard stuff, and keep in mind my unique, more difficult requirements while building from the ground up.

I have also found it helpful to utilize inheritance a lot while designing. For example, you may find that when dealing with lighting, it's easiest to incorporate a generic "Light" class, and build from that. This way, your other concepts don't have to be aware of every type of light you have in the game to stay flexible for your ever-changing needs. All it needs to know is there is some "Light" that's acting on it...not a spot light AND/OR a lamp light. Sometimes it's helpful, sometimes not. Just depends on the project

Other than that, I would just say start small, then iterate through it time and time again as you add more functionality. Although it's more efficient to get a solid design first, then build on that foundation, don't get discouraged if you have to go back to the drawing board a few times. You'll find you learn a ton along the way.
iddqd is offline   Reply With Quote
Old 10-26-2007, 10:33 PM   #7
chrono1699
Junior Member

Activity Longevity
0/20 19/20
Today Posts
0/11 sssssss20
Default

I agree with iddqd. Here's a website that can teach you openGL, http://nehe.gamedev.net/
It'll help you build from the bottom-up.
To add a little more to the conversation as well...sometimes it's good to have a game engine that's been produced by another guy...but in order for you to know the functionality of that engine, you would have to read someone else's codes and know what it means. It's better to start from the very basic and work things up. That way you can build your own engine and still know and understand the 'insides' of it. OOP is a very difficult concept to grasp. Just take it step by step...what makes the engine work? you'd need mathmatical classes that produce point a to point b...so that objects looks and simulates real life...collision detection classes, so that you can have objects in the world seem real where an object can't pass through walls or floors...physics where a sphere can be simulated to a basketball and have that bounce effect...there's more to an engine...sometimes you need a team to atually get it up and running...ayways, good luck on it
chrono1699 is offline   Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Powered by vBulletin® Version 3.6.9
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
All times are GMT -8. The time now is 04:51 AM.






UBM Tech