Requirements of a simple game engine?

Post your questions, suggestions and experiences regarding game design, integration of external libraries here. For irrEdit, irrXML and irrKlang, see the
ambiera forums
Post Reply
MasterGod
Posts: 2061
Joined: Fri May 25, 2007 8:06 pm
Location: Israel
Contact:

Requirements of a simple game engine?

Post by MasterGod »

I'm creating my own game engine and I would like to know what do you think a game engine should have?

Some notes:
- This engine will be very simple (at the beginning at least)
- It shouldn't be OS dependent although it will be used Only on windows oses.
- Should it have its own API for graphics or should it give the user a way to access irrlicht API to handle graphics?
Image
Dev State: Abandoned (For now..)
Requirements Analysis Doc: ~87%
UML: ~0.5%
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Why shouldn't it be OS dependent if it's only being used on Windows, seems fairly pointless... There's certain things you can't do independent of OS unless you code it twice and check the OS to switch between them to maintaining OS independence could just add unecessary work for you.
Image Image Image
MasterGod
Posts: 2061
Joined: Fri May 25, 2007 8:06 pm
Location: Israel
Contact:

Post by MasterGod »

JP wrote:There's certain things you can't do independent of OS..
Can you give an example please?
Image
Dev State: Abandoned (For now..)
Requirements Analysis Doc: ~87%
UML: ~0.5%
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Simple example; sleeping uses different functions between windows and linux so if you wanted to use sleep in your game engine you'd have to code in an OS check and switch between the two sleep functions and include the different headers which would just require twice as much work.

There's just no point going for OS independence when you know it's only going to be used on one platform. The only reason you'd do it would be to try and get it working on other OS when you'd finished the windows version.
Image Image Image
zeno60
Posts: 342
Joined: Sun May 21, 2006 2:48 am
Location: NC, USA
Contact:

Post by zeno60 »

Ok, so it's 1 month later and you have your tips on how to start creating your engine, now you want to know what your engine should contain? How will this be your engine if you are not taking any initivie and breaking out other engine source code or searching or looking for uml/structure of other game engines. It's all there, your not the first person to ask the question. IMO, if you have to ask how to do something as advanced as creating your own engine, maybe you shouldn't be doing it.
Midnight
Posts: 1772
Joined: Fri Jul 02, 2004 2:37 pm
Location: Wonderland

Post by Midnight »

yeah that second criteria doesn't really even make sense.

it's like saying.. it shouldn't contain the prefix Mc ALTHOUGH it'll only be sold by McDonalds. wtf? :? :shock: :roll:

I think what you were reaching for was that it shouldn't use windows API although it's only made for the windows plateform. besides I'd like to see you completely escape your target operating systems API I don't think thats possible in most cases.


First thing that screamed in my head was this isn't about suggestions for an engine it's about phishing for terminology and getting someone to spill the beans on what a game engine might actually contain.

I think the giant noob banner in your signiture was my first clue.


One thing I want to mention to newbies is that if you don't have the creative thinking skills and ambition to research nessesary information which is the bases of all game design. you'll never create the engine to begin with so your efforts are in vein.

Now I'll spill the beans and take this seriously for no appearent reason.

a game engine should contain a state pattern.. a singleton class.. an auto ptr.. an ambitious event system.. OOP.. a benchmark/profiling system?.. a network engine... a physics engine.. a sound engine.. a task engine?.. whatever else engines you might come up with or need.

that should give you an idea... I told you it wouldn't help lol

oh btw good luck finding an open source liberal lisenced sound engine. niko was smart to capatilize on that front. which is why he charges for that and nothing else because irrlicht has been free for too long and the sound engine was actually complete, new, and there are no other options when it comes to that subject. so he used it as a funnel right into his bank account. lol go niko!! you bastard :)

besides I'm probably missing a lot cause i just rolled out of bed at 4pm and the blood in my kranium is congealed from massive amounts of drugs and lack of exercise. just kidding.. or am I?


P.S.
Isn't it funny how abbreviations like OS can be overly/misused and more common then the words they represent even when they have incorrect plural conjunctions attached randomly?

P.P.S.
Imagine that not ALL americans are stupid.. we're the ones you really hate you just don't exactly know why. :wink:
Midnight
Posts: 1772
Joined: Fri Jul 02, 2004 2:37 pm
Location: Wonderland

Post by Midnight »

doh!

just realised he did that other post... I told you I was groggy I gave you fair warning.

I just realised how bored I am. :roll:
MasterGod
Posts: 2061
Joined: Fri May 25, 2007 8:06 pm
Location: Israel
Contact:

Post by MasterGod »

@zeno60:
1. I didn't ask of anyone to tell me how to make my own engine.
2. I do study irrlicht API and some other game engine API to learn the technical part of making an engine.
Midnight wrote:Now I'll spill the beans and take this seriously for no appearent reason.

a game engine should contain a state pattern.. a singleton class.. an auto ptr.. an ambitious event system.. OOP.. a benchmark/profiling system?.. a network engine... a physics engine.. a sound engine.. a task engine?.. whatever else engines you might come up with or need.
This is the kind of answer to what I asked. thanks btw.
I didn't ask how to make a game engine.
I didn't ask for someone else to do things for me.
I'm still designing my engine and all I wanted to know is what you think should be included in it. I have my own ideas but I want other peoples opinions too.
Now about the OS part, I'll consider what you all said - Thanks.
Midnight wrote:I think what you were reaching for was that it shouldn't use windows API although it's only made for the windows plateform.
Kinda of, but I see I can't now..

And Midnight, what did you mean about the sound engine, can't I use IrrKlang in my engine freely?

Can someone address the "Should it have its own API for graphics or should it give the user a way to access irrlicht API to handle graphics?" Q please..

Last note: This project whole purpose is for me to learn to program better and to develop my skills in game development. I know it will have a lot of flaws because of my current programming skills but this is the best way for me to learn. - I've already learned A LOT just from designing my engine so I know I'm on the right track. I'm sure when I'll start coding I'll learn even more and faster.

PS:
Midnight, what's your problem with the manual banner?
CooL avatar Midnight, you should stick with that.
I always liked your answers, for better or for worse. :lol:
Image
Dev State: Abandoned (For now..)
Requirements Analysis Doc: ~87%
UML: ~0.5%
rogerborg
Admin
Posts: 3590
Joined: Mon Oct 09, 2006 9:36 am
Location: Scotland - gonnae no slag aff mah Engleesh
Contact:

Re: Requirements of a simple game engine?

Post by rogerborg »

MasterGod wrote:I'm creating my own game engine and I would like to know what do you think a game engine should have?
Image
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
MasterGod
Posts: 2061
Joined: Fri May 25, 2007 8:06 pm
Location: Israel
Contact:

Post by MasterGod »

Awesome!
R.O.F.L!

I hope you at least read the whole thread..

PS:
Maybe this would sound better "leave me in your mother" (#5)
Image
Dev State: Abandoned (For now..)
Requirements Analysis Doc: ~87%
UML: ~0.5%
FlyingIsFun1217
Posts: 219
Joined: Fri Apr 13, 2007 8:29 pm
Location: Illinois
Contact:

Post by FlyingIsFun1217 »

JP wrote:Why shouldn't it be OS dependent if it's only being used on Windows, seems fairly pointless...
As long as it's API is kept cross-platform suitable/oriented, there should be no reason to switch to make it heavily single-platform.

Imagine if Irrlicht had been coded in a Windows only style. We have ton's of ports now because people want it on their platform.

As long as you keep it somewhat open to new (EASY!) ports to other systems, others will support it more :)

FlyingIsFun1217
Post Reply