Thread: What should I begin with for 3d game development?

  1. #1
    Registered User MilleniumFalcon's Avatar
    Join Date
    Feb 2014
    Posts
    33

    What should I begin with for 3d game development?

    I have been programming in C from 2010 to present, with my programming journey including a basic networking program, 2D games, win32 apps, among other projects. I am wanting to pursue now one of my biggest goals, which is 3d game development. My main question is what is the best language to use for this based on what I need, and the best API(s).

    From recently working on a rather large 2D game project, I have learned that game development is a lot of work, and there is a lot of different skills involved. From writing my game completely in C with help from SDL 2.0 and SDL 2.0 Mixer, I had little time to learn proper game design and structures, as most of my time was spent maintaining and updating my game engine. This was a nuisance to me, as I want to learn the math involved with development of a game and along with the proper procedures and theories. I think that this will help me apply more mathematics in different areas of programming also, since I don't have a lot of practice algorithms and different mathematical formulas I might need to use in programming. The physics involved in 3D game development would also be a bonus.

    What I desire is a language that will help me learn the theories and concepts in game development and 3D math, without having to reinvent the wheel by constantly having to write interfaces over existing ones. The language that caught my eye is C#, with the XNA API for 3D development for games. I realize Microsoft has stopped actively supporting this API, but I have heard that MonoGame is actively supporting an XNA interface. I was curious if this was the best choice for me, considering my past experience. Along with how much C# I would want to learn before I get started in 3D game development.

    I welcome other language suggestion/API(s) too, if you think they will be better suited to my needs. Please don't suggest game engine software such as Unity and drag n' drop software.

  2. #2
    Registered User
    Join Date
    Nov 2013
    Posts
    107
    Quote Originally Posted by MilleniumFalcon View Post
    I have been programming in C from 2010 to present, with my programming journey including a basic networking program, 2D games, win32 apps, among other projects. I am wanting to pursue now one of my biggest goals, which is 3d game development. My main question is what is the best language to use for this based on what I need, and the best API(s).

    From recently working on a rather large 2D game project, I have learned that game development is a lot of work, and there is a lot of different skills involved. From writing my game completely in C with help from SDL 2.0 and SDL 2.0 Mixer, I had little time to learn proper game design and structures, as most of my time was spent maintaining and updating my game engine. This was a nuisance to me, as I want to learn the math involved with development of a game and along with the proper procedures and theories. I think that this will help me apply more mathematics in different areas of programming also, since I don't have a lot of practice algorithms and different mathematical formulas I might need to use in programming. The physics involved in 3D game development would also be a bonus.

    What I desire is a language that will help me learn the theories and concepts in game development and 3D math, without having to reinvent the wheel by constantly having to write interfaces over existing ones. The language that caught my eye is C#, with the XNA API for 3D development for games. I realize Microsoft has stopped actively supporting this API, but I have heard that MonoGame is actively supporting an XNA interface. I was curious if this was the best choice for me, considering my past experience. Along with how much C# I would want to learn before I get started in 3D game development.

    I welcome other language suggestion/API(s) too, if you think they will be better suited to my needs. Please don't suggest game engine software such as Unity and drag n' drop software.
    Well the language is more of a tool rather than helping you understand the concepts behind the different sub systems in a game engine. That goes for an API also such as OpenGL or DirectX.

    C++ is still the industry standard for the PC and consoles. For mobile devices your looking at Java, Objective-C, C++ and various graphics libraries.

    A 3D game engine can be a huge topic, depending on how many features you want to implement and what platform you are targetting. Your probably best off specializing at first in one area such as rendering, networking, UI.

    For C++ you need to know the works, classes with PM, MI, Virtual functions, arrays, references, pointers, just all core C++. The maths isn't really too bad, it's vector manipulation, matrices, transformations and a few equations. The real difficulty is knowing what goes where, how it all comes together and then being able to run it at a respectable frame rate. So 3D games are about game engine architecture, understanding about rendering algorithms, shaders, physics, animation, collisions, sound, input and how these all merge together into one software component.

    For that you need to read a book like Game Engine Architecture for a start although that's a pretty basic overview of everything.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Experience needed to begin game programming?
    By mccraryp in forum Game Programming
    Replies: 5
    Last Post: 10-10-2013, 12:15 PM
  2. came from 3d to game Development...
    By earthquaketry in forum Game Programming
    Replies: 1
    Last Post: 11-22-2012, 07:30 AM
  3. New to game programming, where to begin?
    By SkyRaign in forum Game Programming
    Replies: 2
    Last Post: 12-07-2005, 08:52 PM
  4. Game Prgramming :- Where to begin ?
    By pritesh in forum Game Programming
    Replies: 7
    Last Post: 01-31-2002, 01:46 PM
  5. development of my game
    By agerealm in forum Game Programming
    Replies: 4
    Last Post: 10-05-2001, 12:40 PM