Archived

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

Pixel_Sticks

Game Enigines Oh My!

Recommended Posts

ya i am new to game programming and fairly new to programming(with fair amount of time spent with qbasic and C++) but i am confused on this whole game engine thing. What exactly is the "Game Engine"? Is it just the code that makes the environment react in certain ways or what, i am totally in the dark on this one. Everyone seems to recomend "tricks of the wondows game progrmming gurus" I would love to buy it but i will have to wait until i have money left after bills....blah. Any information would be appreciated, thanks.

Share this post


Link to post
Share on other sites
A game engine, in OO programming is your physics, rasterizer, input, output, basically a break down of your world into its basic elements. maybe terrain generator... everything but graphics and game specific code. it is ment to be very portable between game projects. It is something that is obviously very popular. Every one is trying to make a better game engine, and where engine design is strong in one area, is weak in another.
Jonathan Redig
redigjohn@yahoo.com

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
> Uhh... last time I checked an engine INCLUDES graphics, only game specifics are excluded.

Depends. Normally it does not include graphics, since the graphics engine is a totally separate entity, a kind of plug-in DLL. So you can have different versions or 3D-API''s working with a standard interface to your game engine.

Share this post


Link to post
Share on other sites
So how does one start making a 3D engine?
Or are there some out there we can look at and learn from?

"I envy you, who has seen it all"
"And I, young sir, envy you, who have yet to see it for the first time..."
- Daniel Glenfield
1st October 2001

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
quote:

Originally posted by tom76

So how does one start making a 3D engine?


Heh, that''s a good question. When the time is right, just start building what you think a 3d engine would require. When I started building my first 3d engine, I didn''t know what to do, so I built a little program with triangle rendering and sorting functions. Later I made a crappy little ''world editor'', read up on this mysterious bsp stuff and next thing I knew, I had a 3d engine. I say when the time is right because you have to be comfortable with being able to think about something, and then be able to put it in code. I suggest starting out with a 2d engine if you''ve never built an engine of any sort before. Just basically begin programming functions that can be called to perform various tasks like LoadTexture(&pTextureBuffer) or RenderTile(&pVertexBuffer, ...), or don''t forget PlaySound("hello.wav") and ReadMouseInput(). Just start programming functions and eventually you''ll end up with an engine!
Cheers

Share this post


Link to post
Share on other sites
I''m doing a 3D engine and have been planning what functions to include, but am stuck on the environment section (as opposed to player, enemy classes etc.).
I only want it to be basic right now, but what should I have in the environment class? I have a lights() function, but am not sure whether I should have loading textures in it.

Also, is there information on BSP trees on gamedev? I think I''ll need to learn about them to do the layout.

"I envy you, who has seen it all"
"And I, young sir, envy you, who have yet to see it for the first time..."
- Daniel Glenfield
1st October 2001

Share this post


Link to post
Share on other sites
Keep textures in class TEX, lights in class LIGHTS, objects in class OBJ. Group related function in a class; if a function in unrelated to any, globalize it.

I came, I saw, I got programmers block.
~V''''lion

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
"Tricks of the Game Programming Gurus" is good - but dated - at least the version I have - too much on video mode switching - maybe there are newer versions - or similar titles with updated info. Each section is written by a different author and there''s no general overview to tie everything together - but it''s a great starting place.

An engine is an engine - just like a combustion engine - several sub systems working together to produce a desired result. Consider how an automobile engine operates in general. The carburator mixes inputs from the fuel system and the air intake. The timing system ensures that the spark plugs fire at the appropriate time. The pistons are connected to the crankshaft. The crankshaft rotates when the pistons are pushed down, the crankshaft turns a gear, the transmission amplifies the rotation and turns the driveshaft. The differential gear transfers the torgue from the driveshaft to the axle and from there to the wheels and on to the tires. Forward motion ensues and then you crash because there''s no steering or braking mechanism! :-)

Share this post


Link to post
Share on other sites
quote:
Original post by tom76
So how does one start making a 3D engine?
Or are there some out there we can look at and learn from?

"I envy you, who has seen it all"
"And I, young sir, envy you, who have yet to see it for the first time..."
- Daniel Glenfield
1st October 2001


One that I tried called Jet3D, if it still exists is Open Source and free to download. Beware, it''s a pretty big engine and lacks a bit of speed but it did wonders for the project I was working on and if something didn''t work like we wanted to, we had the source to modify the engine...



"And that''s the bottom line cause I said so!"

Cyberdrek
Headhunter Soft
A division of DLC Multimedia

Resist Windows XP''s Invasive Production Activation Technology!

"gitty up" -- Kramer

Share this post


Link to post
Share on other sites