Jump to content
Posted 25 August 2012 - 12:13 PM
Posted 26 August 2012 - 07:12 AM
Posted 26 August 2012 - 09:35 AM
Edited by lride, 26 August 2012 - 09:36 AM.
Posted 26 August 2012 - 09:39 AM
Edited by Rectangle, 26 August 2012 - 09:42 AM.
Posted 26 August 2012 - 01:47 PM
This is extremely useful and I appreciate everyone's repplies, especially this one. I thank you kindly for your advice and I'll make sure to follow it!
If you are exclusively targetting Windows, I'd actually start out by learning DirectX 9. OpenGL is cross-platform and pretty standard for most OS's and devices, but even with the utility libraries it has a lot of manual labor and gets quite intricate early on for a beginner. Many concepts between them are quite similar, and I do recommend eventually learning both, but DirectX is a better starting point IMO and AFAIK is the only way that you can port your games onto the Xbox360 platform (via the XNA Framework). However, if you haven't familiarized yourself with the basic Win32 API concepts of window creation and GDI graphics, then yes I would definitely recommend starting with OpenGL + utility libs. Alternatively, there are 3rd-party libraries such as SDL which are both cross-platform and fairly high-level, making everything easier, so there's something to think about as well.
Google is your friend. Type in the name of the framework you wish to use + "tutorial" or "example" and you will have nearly everything you will ever need right there.
Matrices are a mathematical structure primarily used in 3D graphics programming, and are a college-level concept derived from linear algebra. For graphics, they aid in the position, scale, rotation and translation of an object in 3D world-space. Before getting involved in them, I would definitely recommend sticking to a 2D environment where simple high-school algebra and trigonometry come into play using 2-dimensional Vectors.
To learn the syntax, just keep checking the API reference docs, samples/demos, and online tutorials. Bookmark the ones you are learning along the way if you need to.
As stated by the previous poster, the same applies for any API you are learning. For Win32 API stuff, check the MSDN.
As suggested above, a good place to start is a simple game of Tic-Tac-Toe or Minesweeper, or a card game like Solitaire. Once you've done that, I'd move on to something that uses 2D sprites, such as Pong, Asteroids or Tetris, and then move up to Tile-based games such as Mario, Zelda or virtually any 2D side-scroller or top-down RPG. By then, you should be prepared to implement 3D effects in a 2D environment (using 3D vectors), and perhaps you could even try a 2.5D isometric game like Starcraft or Diablo. Then, it's finally time to move forward into a fully 3D environment. A good place to start there would be a 3D space-shooter.
It's a long path but if you stick with it and don't skip any steps, you won't regret it later on. Personally, I've had to go back and forth over the years, learning everything out of order, and it's complicated my 3D programming skills to say the least. Good luck!
Posted 28 August 2012 - 02:32 AM
Edited by Tordin, 28 August 2012 - 02:33 AM.
Posted 28 August 2012 - 07:56 AM
Posted 28 August 2012 - 08:28 AM