Need Some Guidance

Started by
13 comments, last by jpetrie 14 years, 10 months ago
Hello everyone. This is my first post. I'm and intermediate c/c++/c# programmer and so interested in game programming world, particularly, in games graphics technology. I'm planning to start an individual journey based on books and gamedev resources self studying to grasp a lot about game graphics programming and make small projects to improve my skills regarding this topic, and i collected some information and necessities that i must get hands on to end the journey successfully. They way i'm intending to study in something like the "spiral model", meaning that I will study the materials in parallel and go through topics from different resources over and over as needed, while making small projects to make sure that I understood the practical parts. The goal is to be able to create and examine many of the modern graphics techniques and how they are embedded in modern games engines, so i can start another "professional" journey that will make me capable of joining large scale games workshops/project and even to work on game company in the future. Before I list the topics i collected, there are some standards i decided to follow: Language: C++ Compiler: Visual Studio (c++) 2008 Graphics API: Direct3D9 Modeling tool (when needed): Maya 2009 The ones between [ ] brackets are either optional or further readings in the future. Here are the main resources and topics: programming: -be as proficient as possible in c/c++ (c/c++ Primer "from cover to cover!") -good understanding of data structures specially their game-related applications (Data Structures and Algorithms for Game Developers) -good understanding of Win32 API basics, and digging on the UI topics a little more(Programming Windows API 5th edition) -[Microsoft Foundation Classes MFC / Component Object Model COM knowledge] ---------------------------------------------------------------------------- Games: - Having overall knowledge of DirectX9 in general and Direct3D9 in particular, and master the fundamental futures (Introduction to 3D Game Programming with DirectX9.0c A Shader Approach / Special Effects Game Programming With DirectX) - General knowledge of game desing (game architecture and design) -[ (3D Game Engine Programming) ] ---------------------------------------------------------------------------- Maths: - improve Algebra skills needed in computer Graphics (Essential Mathematics for Games and Interactive Applications : A Programmers Guide 2nd Edition) - [general calculus skills improvement?] ---------------------------------------------------------------------------- Graphics: - Reading the theoretical part and basics of computer graphics (Computer Graphics with OpenGL) - 3D Modeling essentials in Maya - [Practicing some classic Windows GDI and DirectDraw] --------------------------------------------------------------------------- Other: - have fair knowledge about Operating Systems, and the Windows OS in particular (Operating Systems: Design and Implementation) - fair/general knowledge about computer architecture (Computer Organization -by Hamacher Vranesic Zaky -) ------------------------------------------------------------------------------ That's all. The question now is: What do you think? :) Well, all I need are suggestions and advices from people who are either starting like me or professionals. any comment or modification/addition will be very appreciated :) Thanks in advance, and looking forward to your opinion.
Advertisement
Quote:Original post by ShinKoKyuu
Modeling tool (when needed): Maya 2009

To use this one legally, unless you already own it or have access to it through work or something, you'd be looking at an investment of 2000 bucks at least (5000+ for the high-end version). May I recommend the freely available and decently powerful Blender? You can also legally get a free and powerful version of Visual Studio, namely Visual Studio Express.

Quote:Original post by ShinKoKyuu
The question now is: What do you think? :)

Not much to say, since everything you said so far was pretty general. Apart from linear algebra, you also need a good foundation in trigonometry. Quaternions are optional but won't hurt (using them is much easier than grasping the math behind them). Calculus will of course help with physics.
The obvious first thing to do is write some kind of game. Make it small to start with. Pong is a common suggestion, if you are feeling more adventurous go for breakout (note that you can use the same "engine" for both games).

One thing you will always need, and i think this is one of the only things you will ALWAYS need, is linear algebra knowledge. Learn to use a linear algebra library fo some kind. For 3d stuff this is absolutely vital for your understanding of anything remotely complex.

Also, do yourself and everybody around you a favor; start small. Dont try to be the next WOW.
Don't thank me, thank the moon's gravitation pull! Post in My Journal and help me to not procrastinate!
Blender!

oh yes, i heard a lot about this one. looks cool and easier than Maya though!

Thanks a a lot :)
isnt blender only available for use with python?
Thanks speciesUnknown

actually I wrote some simple games in .Net/c# before, but will try to finish at least one known classic game as a beginning.

I know game programming is a very wide area full of physics/AI/software engineering ..etc, and i believe i can't WOW myself and this requires a team. that's why i choose to improve myself in graphics mainly to be a productive team member in the future.. maybe :P
Quote:Original post by BlueBan007
isnt blender only available for use with python?


I'm not sure what you're getting at. You can do various things inside Blender in Python (like, write an entire game, because Blender has a game engine built in). You can of course export your model to any file format you want (if there's no plugin, you can write one in Python easily) for loading in whatever programming language you want - nothing is restricting you to Python.

Quote:Original post by ShinKoKyuu
will try to finish at least one known classic game as a beginning.

I know from personal experience that this can be pretty hard. I have written a rudimentary 3D renderer and am on my second GUI toolkit but am still not done with my Pacman and TicTacToe clones ^_^;;; All I can say is, just get it done!
hehe

well lightbringer, I know my plan is not easy at all and full of challenges, but starting simple thing from the scratch and finish it may give me motivation when i see it done and say (look at that! I'm the superman! :P)
hehe

well lightbringer, I know my plan is not easy at all and full of challenges, but starting simple thing from the scratch and finish it may give me motivation when i see it done and say (look at that! I'm the superman! :P)
Quote:Original post by BlueBan007
isnt blender only available for use with python?


Blender is designed to let you write scripts with Python that help you get more out of Blender. However, the end result of whatever you're doing with Blender is a model file. And files are just files. You can take the resulting file and read it with code written in any language.

This topic is closed to new replies.

Advertisement