Tips for creating a game engine please?
Tips for creating a game engine please?
Hi, I'm a novice in the engine creating topic and so I'm asking for development tips so I wont have to recreate my engine every time I encounter something useful that I should have thought about before I began it all.
Actually, your a novice programmer... You ask a lot of rudimentary questions, hardly ready to design a game engine IMO......so I wont have to recreate my engine every time I encounter something useful that I should have thought about before I began it all.
Instead of "building an engine" why don't you just build a simple game or two using Irrlicht just the way it is and get familiar with coding *before* taking on a task like this?
If you don't understand the basic elements, you're not going to get very far in designing and implementing an engine which is comprised of those very same elements.
-
- Admin
- Posts: 3590
- Joined: Mon Oct 09, 2006 9:36 am
- Location: Scotland - gonnae no slag aff mah Engleesh
- Contact:
What he said. You're asking how to make a complete blacksmith's forge and tools, when you've never done any blacksmithing.
Most engine developers (IME) end up spending more and more time working on their 'engine demo' app anyway. You might as well do that in the first place.
Most engine developers (IME) end up spending more and more time working on their 'engine demo' app anyway. You might as well do that in the first place.
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
The thing is that working on this project should be the practice I need to evolve. I think this is the way I will learn to program right - by doing mistakes and learn from them and earn coding experience.
You got a better/faster way? I'd be more then glad to hear your opinions.
I've tried making a game first and then I understood I need all these systems to control every aspect of the game, I couldn't continue because every time I wanted to do something (Main menu for example) I saw I was doing almost everything wrong and repeated it again and again so I thought about making my own VERY VERY simple game engine that will not just teach me how to program better but will be of use in any other "learning" game I will create. My engine should only contain the basic features I need to make a simple game. Later on when I'll be better I'll remake the engine as good as I can.
And so, I'm asking for tips that will make the journey easier and hopefully make me a better programmer.
PS:
You got a better/faster way? I'd be more then glad to hear your opinions.
I've tried making a game first and then I understood I need all these systems to control every aspect of the game, I couldn't continue because every time I wanted to do something (Main menu for example) I saw I was doing almost everything wrong and repeated it again and again so I thought about making my own VERY VERY simple game engine that will not just teach me how to program better but will be of use in any other "learning" game I will create. My engine should only contain the basic features I need to make a simple game. Later on when I'll be better I'll remake the engine as good as I can.
And so, I'm asking for tips that will make the journey easier and hopefully make me a better programmer.
PS:
I wont learn if I wont try.SiriusCG wrote:Actually, your a novice programmer... You ask a lot of rudimentary questions, hardly ready to design a game engine IMO...
Not a complete set, just the basic tools.rogerborg wrote:You're asking how to make a complete blacksmith's forge and tools, when you've never done any blacksmithing.
-
- Admin
- Posts: 3590
- Joined: Mon Oct 09, 2006 9:36 am
- Location: Scotland - gonnae no slag aff mah Engleesh
- Contact:
^^^
What he said.
What he said.
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
The problem with this in my opinion is that people who learn to program by "mistakes" will never work out as C++ dosen't tell you "Hey, you made a mistake on this line, heres how to fix it..." It will let you get away with a tremendous amount of 'oopsies.' Now, learning syntax by making mistakes is a way to go I guess, would take a lot longer than just picking up a basic C++ manual for a good month to learn the how and why something does another thing. The problem is that good programming, at least when applied to game programming, deals with good logic, and logic cannot be taught by making mistakes because bad logic will still work and just because something works, dosen't mean it is right.MasterGod wrote:The thing is that working on this project should be the practice I need to evolve. I think this is the way I will learn to program right - by doing mistakes and learn from them and earn coding experience.
You got a better/faster way? I'd be more then glad to hear your opinions.
I've tried making a game first and then I understood I need all these systems to control every aspect of the game, I couldn't continue because every time I wanted to do something (Main menu for example) I saw I was doing almost everything wrong and repeated it again and again so I thought about making my own VERY VERY simple game engine that will not just teach me how to program better but will be of use in any other "learning" game I will create. My engine should only contain the basic features I need to make a simple game. Later on when I'll be better I'll remake the engine as good as I can.
And so, I'm asking for tips that will make the journey easier and hopefully make me a better programmer.
PS:I wont learn if I wont try.SiriusCG wrote:Actually, your a novice programmer... You ask a lot of rudimentary questions, hardly ready to design a game engine IMO...Not a complete set, just the basic tools.rogerborg wrote:You're asking how to make a complete blacksmith's forge and tools, when you've never done any blacksmithing.
Program what will be beneficial to your learning, don't just sweat to make a pretty looking demo to show off to friends and declare you are a game designer. Think/Research better, easier, more efficient ways to complete tasks and implement them by hand, commenting every step of the way. (i.e., no copy/paste/forget)And so, I'm asking for tips that will make the journey easier and hopefully make me a better programmer.
The "pretty looking demo" has already been done ...zeno60 wrote:Program what will be beneficial to your learning, don't just sweat to make a pretty looking demo to show off to friends and declare you are a game designer. Think/Research better, easier, more efficient ways to complete tasks and implement them by hand, commenting every step of the way. (i.e., no copy/paste/forget)MasterGod wrote:And so, I'm asking for tips that will make the journey easier and hopefully make me a better programmer.
Now seriously, I'll think I'll start with pen and paper instead of jumping to coding so fast, thinking what exactly I want and then how is it going to be done - like you said, I think I need to research bit better/more.
IrrWizard is a great guide! There is a lot to learn from it, Thanks.omaremad wrote:Download irrwizard, setup the basic framework, observe and learn; if you dont understand how stuff works read using google.
PS:
@zeno60: You've got me thinking about things I didn't thought to be important, that's the kind of tips I was looking for, thanks..
-
- Admin
- Posts: 3590
- Joined: Mon Oct 09, 2006 9:36 am
- Location: Scotland - gonnae no slag aff mah Engleesh
- Contact:
That's a genuinely good idea. A whiteboard and some marker pens would also be a good investment.MasterGod wrote:I'll think I'll start with pen and paper
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
-
- Posts: 1029
- Joined: Thu Apr 06, 2006 12:45 am
- Location: Tennesee, USA
- Contact:
Almost every coding project I do starts out this exact way. I start looking at the project from a very high level and then drill down into areas where I think I may need to do extra work. I will look at the lines, circles, arrows and notes on the whiteboard, making adjustments and changes until I feel there is enough solidity to start coding.That's a genuinely good idea. A whiteboard and some marker pens would also be a good investment.
Even then the paradigm I try to use is write code as 'generic' as possible so that I don't paint myself into a corner later on...
This is the hallmark of a good coder... work it out, think about it, change it on paper as concepts BEFORE you write a single line of code. Don't lock yourself in to doing something "only one way"... be flexible and honest enough with yourself to work within your skills.now seriously, I'll think I'll start with pen and paper instead of jumping to coding so fast, thinking what exactly I want and then how is it going to be done...
You'll get there, but it takes time and experience... I've been at it for around 20 years now and I still learn new things with every project.
BTW, Irrlicht has one of the cleanest, well thought-out APIs I've seen. You can learn a lot just by studying the API docs and working at understanding the Class diagrams.
Cheers!