As many other that appear here, I am aspiring to be a game developer (programer), and so trying to take my first steps.
First of all, I've read this topic and found it quite usefull :http://www.gamedev.net/topic/628487-so-i-want-to-be-a-game-developer/
Right now I am a computer Science student, going to my 3rd year. Related to programaing I've already have had:
- Scheme (to learn concepts)
- 3 different usages of C (data structures and all the normal things to learn, synchronizations primitives like mutexes and semaphores, and had to make a compiler for a new simple language this year, using other tools like lex, yacc and burg)
- OOP in Java
- emulated assembly (it was not quite assembly, but something adapted to learning)
- CG (and here, learned C++ and OpenGL with glut, also how the graphics pipeline works with all the matrixes and stuff, we made a simple working 3D pacman game)
The thing is, this summer I wanted to start making simple, working 2D games. I know that by knowing how the crude of opengl I should continue twoards the 3D, but I want to have a bit of experience in learning how games work. I tried using Unity, but didnt like it because I am getting used to do things by programing, and that seemed to be the complete oposite, and wasn't able to do anything there. I found XNA to be realy accessible in terms of documentation, and as I already had visual studio from the last semester from working with C++ decided to give it a try.
In around 4 or 5 days I was able to make a simple working 2D Tetris game, and became quite happy to have something, not purely academic working.
Now you know the background, moving to the question:
As the next step I'd like to make sidescroling, so I have 3 questions:
1 - Can anyone explain or link, genericaly, how side scrolling works in terms of programing (or more specificaly in XNA)?
2 - My Tetris game had around 10 classes, (representing the state manager, the generic state, menu state, game state, paused state, and the game classes, block, map, piece (the block is each square) and the current moving piece), all this to a simple tetris. Now, Do a big game really has a huge ammount of classes? Like some for each level? Or am I thinking of it wrong?
3 - All of the games Ive made untill now had colision or movment based on a grid (the pacman movment was fluid, but could only change direction on intersections), so , being 2D or even 3D, how am I supposed to check for colision between lots of diferent corpses? I know it is easy for spheres, as I can go through each object and check arround the radius, but what about more complex shapes like a sprite with a transparency in 2D or a person model in 3D? Does XNA has anything to help in this situation?
Thanks everyone for the help, and sorry for the long post and spelling errors, I am not a native english speaker.
Edited by manelis, 01 August 2012 - 02:34 PM.