I can see you mention you have a portfolio and thats good. If you havent already --> Get yourself a good sketchbook setup on conceptart.org and a portfolio to showcase your work (ie deviantart).
Id honestly say for now - bypass working on your ideas and your projects, you probably dont know enough already to get a mod team together or know what to ask coders to produce for you to put things together. Look around on moddb indiedb websites for any projects recruiting artists so that you can work to other peoples ideas as well as your own. Im not saying drop your ideas entirely but just put them on hold and gain experience in working in indie mod teams so you are used to producing concept art and game assets for a group project. That will also give you contact with programmers and sound engineers etc.
No offence but posting on a forum board will not always honor a response from the members of said forums, especially when you cannot see the formatting of a question before counting it as a view post. You want to be a game programmer. Well, you're in the right place and that's a good start. Did you do any research on why you want to use C++, or did you just take someone's advice as a golden rule? What can you tell us about game programming with C++ or programming with it general? What about compared to the languages you mentioned that you have experience in? Answer those questions for us and then people will understand your learning path and assist you further. Cheers, Pash
first of all thanks. Second of all about those question you asked.1.yes i take advice from someone and start to learn C++,and i can't tell you anything at all about game programming With C++ because i don't have any clue and knowledge in this field. about question 2.i don't know which of those language i said, what capability had in Game Fields and as i said before i don’t have expert skill of those Language. Maybe right now my skill about C++ so better other than those language. i create this topic because i want to assure this is right path i choose and i want to know what is best option for me in next step so i create this topic and hope someone help me to figure out. and lack my information in Game Development issue Because of my country.
Oh thanks BaneTrapper for your Mean post.oh i'm sorry for waste your precious time and im so sorry of all gamers In World becuase i take time of DAVID CAGE.
Sorry, I'm now confused by what you're saying. So you don't have experience in those other languages? Have you read the stickies in these forums? In all honesty you can't ask people to help you if you haven't at least done some groundwork yourself. Re-visit this post after you understand why you are going to use C++ to make games and then we can send you in the right direction. Here's a checklist for you:-
- I will use C++ to make games because......
- I can make games using only C++ Y/N? Elaborate.........
- I can name the pros and cons of using C++ for game programming......
- When comparing C++ to other languages such as Java/C# & XNA/Python Pygame etc etc I stand by my decision to use C++
I appreciate English isn't your first language but you're going to have to do some reading to understand some principals that will help you make some learning decisions. Also, truth be told, don't ponder on choosing a language for too long at the expense of actually making your first few games like tic tac toe,pong, breakout etc.
No offence but posting on a forum board will not always honor a response from the members of said forums, especially when you cannot see the formatting of a question before counting it as a view post.
You want to be a game programmer. Well, you're in the right place and that's a good start.
Did you do any research on why you want to use C++, or did you just take someone's advice as a golden rule? What can you tell us about game programming with C++ or programming with it general? What about compared to the languages you mentioned that you have experience in?
Answer those questions for us and then people will understand your learning path and assist you further.
Thanks Josh, you the man. Seriously I appreciate a Engineering Lead taking time out of their day to look am some scrub/noob code.
To answer your question about ball/wall collision. I am not really sure how i would do that, but your question has certainly given me something to think about. I don't know if I know a more efficient way to handle that collision.
To answer your other question about my Sprite Manager. I suppose I could could have the brick laying in my StartGame() be a method specific to brick rather than it being in the StartGame(). Or maybe i could have my StartGame stuff in the loadcontent
I will really think about how to improve my code. thanks for the head-ups.
Simply put and to cover Josh's pointers "code refactoring". Take this scenario in a breakout as your chosen game:-
- you decide to add falling power ups that are spawned when bricks break.
Think about what you need now to catch those falling power ups with your paddle and or the ball maybe? Where would your code need editing?
The same applies to sprite manager combined with game logic in this case. Never be afraid to break your code down and make it useable for later projects. Remember your next game might need collision detection but there are no balls and bricks!
Have a good read, trust me its worth it. Its not a GOLDEN RULE, but as mentioned in the bottom article, it does help very much in the early stages because you aren't ripping a single class to pieces to try and get something working.
And yes, you should. As others have mentioned, re-usability is a must for game development. You could create a ScoreTracker class that tracks your players score. Then you could re-use that class for all your future projects, you can add to it, improve it or make it completely bespoke.
As Java is familiar with you, you could try this path:-
This is an awesome free resource you can download free online - http://math.hws.edu/javanotes/ - I can't recommend it enough. Start by following those notes through and get a firm grasp of computer science/programming basics.
Once you have the basics you can then look at this as a stepping stone to actually getting some games going using purely Java - http://www.amazon.co.uk/Beginning-Java-Programming-Jonathan-Harbour/dp/1435458087/ref=sr_1_1?s=books&ie=UTF8&qid=1341814742&sr=1-1 - This is a very good resource to get you into programming Java games as applets (mainly), and also you will learn which IDE's (Integrated Development Environment) are popular for programming in Java (although Eclipse is probably still the best choice anyway). A word of warning about programming java applets, they can be a real pain to get working sometimes (but there is JWS to make things much easier).
As you move on and get more confident there is - http://jmonkeyengine.com/ - as a game engine choice to program in. It's well documented and seems to have a good community to ask questions from. It also comes bundled with its own SDK....which looks good. This was my choice of game engine in Java before I switched to C# and XNA (which isnt a game engine of course, but more a language and a framework or scaffolding if you like). I don't consider learning Java first a waste of time, it's a fantastic primer language and usable for cross platform game making.
Lastly, since your question is about game development, you have to actually work on your design skills as well to really appreciate how you should approach game design. For this I recommend this book - http://www.amazon.co.uk/The-Art-Game-Design-lenses/dp/0123694965/ref=sr_1_1?s=books&ie=UTF8&qid=1341815432&sr=1-1 - For me, it is the perfect read on game design. It covers important concepts such as game design through iteration, anthropology and other human studies, which allow you to understand the very basics in human thinking. A good game can be a great a game if you get your design fundamentals right.
I HTH and I wish you good luck and lots of fun.
I would suggest C# - kinda more fun and motivating to have some GUI easily available.
Don't know how that is done in Java. Only used it for small console apps.
Sorry phayer, I am not being insulting here but I read this at least 10 times and I am not sure I understand what you are saying? If by GUI you mean IDE (Integrated Development Environment), then yes good call, Visual Studio is a good IDE, has everything you need including Intellisense, ability to mouse wheel zoom into your code (trust me if you're getting old like me this is a big help and I don't think even Eclipse supports this out of the box) and generally the debugging information seems to be helpful.
I'm going to go out on the limb and say learn C++ first. Java can be easier for some people, but the transition from Java to C++ is a rather bad one. Many may suggest C# while its very elegant, I wouldn't considering the primary tool used to develop games unless you intend to use XNA, its better used for tool development. Languages like C# tend to wrap everything up for you in nice easy to use objects that you don't have to think too much about.
I don't like the idea of people suggesting that C# is a stepping stone to what they perceive as harder languages, you can easily learn C++ right away if you want. It is not conceptually harder to learn C++, its just like any other language, plus its very powerful. Once you know C++ you will begin to understand a lot of lower level coding going on, and be able to truly understand what a computer is doing. Especially if you eventually take up assembly. This in return makes you a better programmer within all languages.
Plus you will never get anywhere in life, yet alone game programming if you shy away from what is hard.
However if your planning on focusing on android you need to know java, if you prefer to do iOS you need to know Objective-C.
I completely respect your opinion of course. I was just mentioning C# is a very useable/used language for game development. I wasnt suggesting that it's a a stepping stone to a harder language, I am saying it was a good choice for me to do this and offered it as a suggestion to the OP. I have some good sources from Rob Miles (c# Yellow book, which is free I might add and his XNA 4.0 book, which is not free but so far I have found it a very good introduction into using the XNA framework).
Of course in an ideal world you would go from bare metal assembly up the ropes to C/C++ and then to the managed languages with frameworks. However, in a world with two friends making a game part time.....you will want to see results fast from a motivational point of view, so maybe a managed language with some pre-defined frameworks are a better choice to start with?