Game Engines ... ?

40da7e74fdca33768b6714646853b3f5
0
TheLionKing 101 Aug 27, 2003 at 07:04

Every where we hear that a Game Engine is developed. It is very strong and powerful and has some special effects :blush: . Even for producing special effects demos it is quoted that the engine helps in producing special light effects.

So, my question are these :
* How do you define an Engine?
* What basically is the Engine?
* How do you create it and steps involved in its creation?
* Where can it be implemented and How …?

Maybe stupid … but I am curious to know … :blush:

27 Replies

Please log in or register to post a reply.

F7a4a748ecf664f189bb704a660b3573
0
anubis 101 Aug 27, 2003 at 08:46

an engine basically is something that you feed data and that has a certain output on the other end. like you feed models and textures to a gfx engine and it draws them on the screen. there aren’t only gfx engines of course. you could be developing a scripting engine…
an engine has no standalone functionality though. it needs a client application to feed it data and tell it what to do with that data ( “here is a model. i’d like that to be drawn at [x,y]”).
a complete “game engine” would maybe include many services, such as network services, scripting, AI routines, gfx, etc.

6ad5f8c742f1e8ec61000e2b0900fc76
0
davepermen 101 Aug 27, 2003 at 09:21

well said, anubis. its fun because i’ve seen so much threads about this and nobody knew an answer..

a worlds first on devmaster.net! :D

40da7e74fdca33768b6714646853b3f5
0
TheLionKing 101 Aug 27, 2003 at 10:21

:yes: like (for example) if you buy game and it also contains an editor to build level for the games … what you mean is that editor is the game engine … right :blush:

6ad5f8c742f1e8ec61000e2b0900fc76
0
davepermen 101 Aug 27, 2003 at 10:43

no, the thing that runs the game is.

think of it that way: you can replace levels, models, and all.. for example you replace all doom3 models,levels,scenes,everything in doom3 with.. say.. mario64 models,levels,sounds etc..
it would still be doom3 running in the background, this time displaying the mario64 world. the doom3 that runs then is the engine.. the thing, that makes your game run.

for example, you can buy the quake3 engine, and use it for your own game. done for alice for example, and others. or the quake2 engine, or what ever engine. just the exe + dll’s actually..

40da7e74fdca33768b6714646853b3f5
0
TheLionKing 101 Aug 27, 2003 at 11:25

:yes: Got it …!

;) Any tutorials or guidlines on creaing an engine :blush: ?

F7a4a748ecf664f189bb704a660b3573
0
anubis 101 Aug 27, 2003 at 13:42

google should know about several million =]
you can learn what makes an engine best if you simply read and try to understand the code of other engines… a great place to start is the nebula engine from radonlabs the quake I + II engines might be interesting, too.

0684f9d33f52fa189aad7ac9e8c87510
0
baldurk 101 Aug 27, 2003 at 20:26

I think that finding an “game engine” tutorial will not be what you want. It’s such a big thing, that all you would find would be how to organise the different subsections. Your best idea would be to learn how to make the subsections, gfx, AI, etc. Perhaps only one that you’d like to do.

the quake I + II engines might be interesting, too.

I don’t think that would be a good idea for learning :)

F7a4a748ecf664f189bb704a660b3573
0
anubis 101 Aug 27, 2003 at 20:58

true… mr. carmacks coding style is rotten…

Aebe30cac3048af2b72eaf832b698755
0
Amithran 101 Aug 27, 2003 at 22:49

Sir - I do demand your critique of Carmacks coding style to be retracted with a formal apology.

His code - is most holy (in a non-blasphemis way) as the holy grail. Only the weak of heart whom could not grasp the greatness of his code would dare to call it rotten..

Actually I think you (Lion King guy) could learn a LOT by getting the Quake 3 SDK (source code) and examining it. Goto www.planetquake.com/code3arena and read a bunch of the articles and tutorials for modding it. WHen you are done - you will come out a better person (programmer wise).

40da7e74fdca33768b6714646853b3f5
0
TheLionKing 101 Aug 28, 2003 at 07:38

Thanks guys … I have got the point … thank you all :yes:

F7a4a748ecf664f189bb704a660b3573
0
anubis 101 Aug 28, 2003 at 08:14

i didn’t say that the code is rotten… only that the style, by which i mean the readability of the code, is substandard. i well aware that mr c. is able to produce bitchin fast code. nonetheless i don’t like his way of coding.

0684f9d33f52fa189aad7ac9e8c87510
0
baldurk 101 Aug 28, 2003 at 18:35

single character variables aren’t very readable :). Very good to code though. OK for him.

If you are a seasoned coder, it’s probably a good thing. You can see how the pros do it, and it’s not a problem to wade through the code to find what you want.

Aebe30cac3048af2b72eaf832b698755
0
Amithran 101 Aug 29, 2003 at 00:02

If you have trouble reading carmacks code you are a nubi. Haha - get it ? A newbie? ahahaha ziiiiing.

I think your mad his code isn’t cluttered with // this line does this
comments. You actually have to know how to follow programming with out comments.

It may seem difficult or ackward at first = but spend a good amount with his source and I think you’ll come to see it as pretty easy to understand as well.

6ad5f8c742f1e8ec61000e2b0900fc76
0
davepermen 101 Aug 29, 2003 at 07:50

his code style is rotten. i’m no newbie and i can understand his code and i can state because of that his code style is rotten.

even he states his code is rotten :D (well, not “rotten”, but a mess..).

btw, an engine is nothing big. but a big thing to understand how it exactly works. the components of the engine can get quite big, too, depending on what features you want to add..

the most complex thing in programming is not how to solve a certain problem, but how to organize tons of “problem-solutioners” together to make it a working full program/engine..

in graphic-terms: you can make a particle demo, a bumpmapping demo, a stencilshadow demo, an animated mesh demo, a small rigid body demo, a simple fps-demo, a tree-generation-demo, and all. but making it all work together, thats hard. very hard. and not because you don’t know how to do it actually. but because you have to do it, and its rather complex to orient yourself then in it.

F7a4a748ecf664f189bb704a660b3573
0
anubis 101 Aug 29, 2003 at 08:15

amithran : what is your problem ??? good for you if you like his coding style… i don’t, so whatv ??? i’m certainly no newbie and i wouldn’t make that comment about his code if couldn’t understand it. but maybe you are the newbie for thinking that john carmack is “the god” of coders. which he isn’t. and also maybe you are the newbie because you haven’t read enough other engine code to judge what good coding style is. also if you would have carefully read my post you would have noticed that i didn’t criticize the code itself but simply the way it was written… it’s form. but sorry if i stepped on your toes…

I think your mad his code isn’t cluttered with // this line does this
comments. You actually have to know how to follow programming with out comments.

that is about the most moronic remark i have read so far…

F7a4a748ecf664f189bb704a660b3573
0
anubis 101 Aug 29, 2003 at 08:32

If you have trouble reading carmacks code you are a nubi. Haha - get it ? A newbie? ahahaha ziiiiing.

so you agree then that the code is difficult for a newbie to read ? fine because that was the hole point…

the quake I + II engines might be interesting, too.

I don’t think that would be a good idea for learning

0684f9d33f52fa189aad7ac9e8c87510
0
baldurk 101 Aug 29, 2003 at 18:17

cool down anubis. No need to get insulting.

I think we can all agree that coding styles are really just opinions. You might be able to say that Carmack’s isn’t newbie friendly, but anything else will just become flaming.

40da7e74fdca33768b6714646853b3f5
0
TheLionKing 101 Aug 30, 2003 at 06:03

:yes: Yeah! the code is ofcourse intend for intermediate programmers. Not for nebies.

Well … all seems to be going towards flaming :blush: !

0684f9d33f52fa189aad7ac9e8c87510
0
baldurk 101 Aug 30, 2003 at 11:13

Well … all seems to be going towards flaming

Not if I have anything to do with it :)

F7a4a748ecf664f189bb704a660b3573
0
anubis 101 Aug 30, 2003 at 11:56

sorry if i lost my temper…

0684f9d33f52fa189aad7ac9e8c87510
0
baldurk 101 Aug 30, 2003 at 16:25

it’s OK, we all do sometimes. I’m certainly not innocent of that :D.

I knew it wasn’t like you, so I wasn’t too worried. I knew you’d come round ;).

6ad5f8c742f1e8ec61000e2b0900fc76
0
davepermen 101 Aug 30, 2003 at 18:40

“Peace, Love and Happiness!” :D

i just want to wish you all a great weekend!

0684f9d33f52fa189aad7ac9e8c87510
0
baldurk 101 Aug 31, 2003 at 08:22

Thank you, and the same to you davepermen!

F7a4a748ecf664f189bb704a660b3573
0
anubis 101 Aug 31, 2003 at 09:48

hey… davepermen ! good to see you happy again !

6ad5f8c742f1e8ec61000e2b0900fc76
0
davepermen 101 Sep 01, 2003 at 12:15

well it was just for one day :( anyways, at least one day…

0684f9d33f52fa189aad7ac9e8c87510
0
baldurk 101 Sep 01, 2003 at 17:25

one day is better than none!

Take what you get :).

6ad5f8c742f1e8ec61000e2b0900fc76
0
davepermen 101 Sep 01, 2003 at 17:48

yeah.. it was a nice day.. almost felt like i did that summer..

damn.. i’ll never forget that summer.. :( why can’t it be more?..