Title: How big shoud an engine be?
Description: answer in CCs
Gmakermaniac!!! - January 12, 2005 11:03 PM (GMT)
What would you do? I would probebly end up with a 100cc engine.
ih8censorship - January 12, 2005 11:54 PM (GMT)
id say it would be reletive as to what you wanted it to accomplish...
Gmakermaniac!!! - January 13, 2005 01:05 AM (GMT)
ok, I'll define large project..... an fps comparable to doom :D
it'll take me years to get to that point
ih8censorship - January 13, 2005 01:26 AM (GMT)
id say youd want everything in there, but only very general stuff so the engine could be re used for any 3d game.
C-Man - January 13, 2005 07:14 AM (GMT)
yes i'd agree , anything that you can reuse later
dr voodoo - January 13, 2005 09:41 PM (GMT)
| QUOTE |
| it'll take me years to get to that point |
Normaly it is a good idea to estimate the time you need the multiply it by 3 or 4 and then you will have an approximativ value of the real time you will need. I'll assume that "years" means 10 years, so we will end up with 40 years. Now assuming that a person starts working with 20 and retires with 60 then this will be a whole life's work.
I voted for MFC like because it's rubbish to judge code on it's size anyway.
PS: what's cc?
ih8censorship - January 13, 2005 10:52 PM (GMT)
im assuming "cc" refers to cubic centimeters- what a lot of engines (in the us anyway... especialy for off road vehicles) are measured in.
TheHawgMaster - January 13, 2005 11:07 PM (GMT)
Small, the simpler the better.
Game making tips:
Make a few really good objects and reuse them instead a million crappy ones.
Don't be afraid to hardcode stuff when needed.
Hard coding is way better than having to pass long parameter lists.
Nobody cares about a story line.
Unless you have time to waste pick a game stile has no story line and even the world/levels are reusable.
If your game is going to be multiplayer I think you should consider dropping the single player mode altogether.
dr voodoo - January 14, 2005 02:40 PM (GMT)
| QUOTE (ih8censorship @ Jan 13 2005, 10:52 PM) |
| im assuming "cc" refers to cubic centimeters- what a lot of engines (in the us anyway... especialy for off road vehicles) are measured in. |
I though you'd use cm³ for that?
Gmakermaniac!!! - January 14, 2005 09:05 PM (GMT)
there interchangable, they both mean the same thing
IllegalEnzyme - February 8, 2005 11:59 AM (GMT)
if you mke the engine too big then you loose sight of actually making the game, unless your objective is to make an engine sdk in which case make it as large as possible!
FrozenKnight - March 1, 2005 08:38 AM (GMT)
my personal belief is that there should be 2 maybe 3 levels to an engine. the core should be just that a cleanly written very fast heart to your game. the second level / part should be the translation level which should include code that translates your game data files to information your core engine can understand. such as a script parser, and resource manager. the 3rd otional componet is for online games which is the networking componet which is pretty much self explanatory.
the reason i believe the first part should recieve the most work is becasuse it is responsiable for dislaying your graphics and controling hte movement of your world. this is the area that should recieve the most work because it would realy suck to have a game that requires a 4 GHZ processor. i remember when i got tribes vengence and saw that it required a 1 GHZ processor as a minimum requirement the first thought i had was they should have been able to cut some fat out of the game somewhere.
Shackleb0lt - March 4, 2005 09:09 PM (GMT)
uh, don't call me noob, but I'd like to know the exact definition of 'engine'. I thought it was a piece of code about something you wanted to repeat a lot in your program and didn't want to write it every time you wanted to use it... but, how can a code be measured in cc??? :wacko: that makes me think of a car engine :mellow:
C00L - March 4, 2005 09:52 PM (GMT)
| QUOTE (Shackleb0lt @ Mar 4 2005, 09:09 PM) |
| uh, don't call me noob, but I'd like to know the exact definition of 'engine'. I thought it was a piece of code about something you wanted to repeat a lot in your program and didn't want to write it every time you wanted to use it... but, how can a code be measured in cc??? :wacko: that makes me think of a car engine :mellow: |
yeah I allways thought they measured coding by the line
Consumed - March 5, 2005 02:13 AM (GMT)
I think he's simply using it as a hypothetical measurment to see how involved/complex the engine should be. For instance 50cc might be just a few functions/structs that make things a little easier to do a certain task. 200cc might mean an engine the size of DirectX.
FlameLover - March 5, 2005 03:07 AM (GMT)
I'd agree with Consumed. Expect an engine of 200cc is more comparable to GameMaker, while 50cc is just OpenGL/SDL etc. and a few 'homebrew' functions to make drawing a pixel easier, for example.
Viper - March 5, 2005 07:58 AM (GMT)
Gamemaker < OGL.
Gamemaker sucks.
C-Man - March 5, 2005 08:11 AM (GMT)
example of an engine ogre3d , crystal space , NeoEngine etc ...
Shackleb0lt - March 5, 2005 02:30 PM (GMT)
I have a nice game made with Gamemaker and c++...
C-Man - March 18, 2005 07:10 PM (GMT)
how can it be nice if it's made in GM :blink:
FlameLover - March 18, 2005 09:19 PM (GMT)
While GM is a learning tool, it CAN be used to make good games. I don't really use it anymore, but I don't see why people just bash it. I bet half of you have never even tried it. But I have to say that OpenGL, SDL etc. are more 125cc, I didn't realize there depth before.
C-Man - March 18, 2005 09:38 PM (GMT)
I have tried it and it sucked
even the most trivial of games made in is slow and resource hungry
also the GML thing teaches *young coders* aweful habits
makes them beleave its so easy and that it's the best thing out there
and some never quit it
there are ofcourse a few rebilitated
but compare that number with the number of uber n00b's it creates
some noobns gets GM makes some cheep *game* starts thinking he can actualy
can make games
FlameLover - March 18, 2005 11:12 PM (GMT)
True... a guy I know is using GM to make... you guessed it, an MMORPG. and just because he has chat and people wlaking around, he thniks the easy bit is over. And he plans to store all info client side... And I tell him to try C++, and he says no, GM is... better. So I get what you mean, but it DOES have a purpose.
C-Man - March 19, 2005 07:55 AM (GMT)
and i bet that MMORPG takes 2GHz+ with 256MB ram as minimal requiroments
and when 10 people connect it crashes
Shackleb0lt - March 21, 2005 09:45 PM (GMT)
how come c++ is designed to be "better" than GM? How can you design something like that to be better?
donprogc++ - March 21, 2005 10:35 PM (GMT)
C++ is a programming language, there doesnt have to be a compiler for it, because the language is more theoretical (thats how it first started)
GM is a program which has its own language (which is similar to c++ syntax wise) but GM interpretts it and the techniques it uses makes it go really slow.
C-Man - March 22, 2005 06:14 AM (GMT)
c++ was invented in 1980's ( looooooooong before GM ) and standartised in 1997
( still no GM then ) . Its designed to be better then C (witch was invented in 1970's for
the purpose of making Unix ). GM just copied the syntax for it's own sripting purposes.
scripts are interpreted hence real slow and consumed more resources.
FlameLover - March 22, 2005 11:29 PM (GMT)
Also, GM is limited to the functions built-into it, which are still very primitive compared to todays vertex shaders and mutli-threading, etc.
DeAs91 - March 22, 2005 11:50 PM (GMT)
| QUOTE (C-Man @ Mar 22 2005, 06:14 AM) |
c++ was invented in 1980's ( looooooooong before GM ) and standartised in 1997 ( still no GM then ) . Its designed to be better then C (witch was invented in 1970's for the purpose of making Unix ). GM just copied the syntax for it's own sripting purposes. scripts are interpreted hence real slow and consumed more resources. |
That's true, GM was invented 1999. For those who's interested:
Read this
aab - March 31, 2005 04:03 PM (GMT)
Id imagine my engines getting too big when i start doing this just to access and x coordinate:
| CODE |
LocalX=(int)this->tiles[this->Sobj.bushes[thisBush].Layer][this->Sobj.LiftTokens[this->Sobj.bushes[thisBush].Layer][this->Sobj.bushes[thisBush].LiftIndex].TileIndex[0]] //and finally.... .x;
|
(started to appear after i had to change my engine from allocating related std::vector<> objects through pointers (as the memory location of the entire list ended up changing every time i 'push_back()'d), and had to replace the pointers with using the objects index in the list instead..)
I was immediately put off GM.
There were so little options to do anything solid, and everything was so inefficient.
The buffering was poor too. i get the same results setting up my own double buffer using gdi.
I honestly dont think gamemaker has a place. Simple languages such as BlitzBasic offer far better results with less effort, assumming the user is willing to learn what the 'effort' involves.eg:
| CODE |
graphics(640,480) image=loadimage("image.bmp") drawimage(image,200,200) flip() waitkey() end
|
fast Direct X results with perfectly smooth doublebuffering, syntax highlighting....and much more control also being able to use dll code made in eg:c++.
GM is frustrating to me: it takes longer to do anything involving the menus etc, instead of just typing a few words...
KTC - April 1, 2005 12:07 AM (GMT)
Seeing how quite a few people dislike gamemaker (including me), it made me smile when I read this email (Sent out to informatics staffs & student at the University of Edinburgh recently).
| QUOTE |
Dear all
The Edinburgh International Science Festival starts this Friday, 1st of April and runs until 10 April. If you're trying hard to entertain your children over the holidays, then the Science Festival is worth a try.
.....
The University of Edinburgh's show is called Discover Science and contains a mixture of drop-in activities and workshops. It will take place at the Royal Museum on Chambers Street, opening hours 10am-4.30pm Mon to Sat, 12noon-4.30pm on Sunday.
Informatics is providing the following entries:
....
- Gamemaker, a workshop on how to create your own computer game, 6-10 April, ages 10+, entry is £5.
.... |
:D :rolleyes:
DeAs91 - April 1, 2005 08:43 AM (GMT)
lol. I didn't quite get that, is there a competition, or do you learn :P my bad english fault
yahn - July 31, 2005 02:36 AM (GMT)
well i don't program games in c++ only dlls for games i program in an interpreted language. Anyways I like to make my engine core self explanitory so that if I wanted someone else to help me that would understand everything going on and I wouldn't have to explain it. I like to make my engine complex enough so that when I'm completed with my engine I can start making my game and never look back. When I program the core I don't really program it to be a perfect mold for my game. I program it so that it will do whatever that type of game needs to do.
So if I'm programming a turn based strategy I'll program the movement and attack system into the core. I won't enclude character attacks and stats into the core, I put those into an independent part of the engine. This way I could easily make another turn based strategy totally different from the first.
Viper - July 31, 2005 08:58 AM (GMT)
You know.. this topic was 4 months old.