Starting programming in 3D with C++

shadowprotocol
  • Starting programming in 3D with C++ shadowprotocol

    EDIT: There aren't sufficient enough tutorials for what I'm trying to do in Python, so I'm going to take my time and slowly build up my skills in C++. It's hard to trip and not land in a book of C++ tutorials on game development and 3D programming.

    Once I get passed the basic syntax for classes in multiple files with preprocessor declarations, what is the next step in 3D?

    Do I use DirectX or OpenGL? If I use DirectX, are there sufficient enough books on the subject for a BEGINNER? Same question for OpenGL. I love programming books, I just feel that most of them are way below par - they either have good general explanations and terrible source code, or vice versa.

    Thanks for your time. I'll do my best to turn this into an active discussion on the matter.

  • Maybe before jumping in to OpenGL it would be helpful to start with something higher level like Panda3D. It provides a much simpler scene graph and animation interface, as well as numerous other supporting systems. It still isn't as simple as a 2D environment, but it should get you started a lot faster.

  • http://nehe.gamedev.net/default.asp is pretty good for learning opengl. I can't find anything for pyopengl though.

  • I just started this path with the OpenGL SuperBible and I would say its a good(long, 700 hardcore pages) path to start if you are confident, focused and dedicated. It starts really good and then it build up to the complicated shaders in a very nice way.

    Its a real challenge to do 3d programming at all and we (in gamedev) not only want to do 3d programming, we want 3d GAME programming, which makes things 10 times more complicated. Because everything is more complicated from modeling movement, to collision detection and all the way to assets and textures, everything is exponentially more complicated.

    I would say that the road ahead(to do a cool, nice, 3d game) is looking something like this from where I am standing:

    • Learn openGL(read a book or 2) (< I am in the middle of this>)
    • Do stuff with openGL(do a toy project or 2)
    • Learn about 3d engines(read a book or 2)
    • Do a 3d engine(do a prototype)
    • Make a simple game
    • Learn more (think, read, see other engines)
    • Do a better 3d engine/settle for a 3d engine made by someone else
    • Feel confortable with 3d, do big projects.

    So all and all, it seems like a path of over a year to get there, and I really hope is worth it!

  • There are more tutorials online for OpenGL than Direct3D, last I check. Beginning OpenGL Games Programming has a second edition, so it may be more recent. If you are looking to do an engine, I have read C++ Games Programming from Start to Finish and found it helpful.

Tags
c++ 3d opengl directx
Related questions and answers
  • I have the book iPhone 3D Programming; this book taught be a lot about overall c++ iPhone application architecture and iPhone OpenGL ES. But a lot of the book is obviously about 3D, so most of the book wasn't that useful to me. I also have Game Coding Complete 3rd Edition; this book taught me a lot about game engine architecture but the emphasis is on c++ windows desktop game programming. I am looking for c++ 2D game engine architecture books. I'm not looking to use any frameworks; I want something more geared towards 2d c++ game engine architecture. Any suggestions? Thanks.

  • ), but it also goes into advanced OpenGL topics in Parts 2 and 3. For DirectX, what is the current material we should be reading to learn? Books & websites with tutorials welcome. Are there any modern books available that go through the CURRENT version of DirectX that are intended for a beginning audience with a decent grasp of C++, but with no experience for DirectX at all? This one seems to be highly praised : Introduction to 3D Game Programming with DirectX 10

  • , that will let me import 3d meshes into my game, ready to use? The solution/middleware should be: easy to use easy to port efficient not consuming too much memory with unnecessary things containing all the above mentioned features plus things I haven't considered yet Programming language is: C++. Currently, I'm developing under Windows 7, Visual Studio 2010, and OpenGL ES 2.0 emulator. Later...Say I develop a game for mobile platform running OpenGL ES 2.0. I have done 2D part, and now I wish to import some 3D objects. The imported 3D objects must contain the following: Vertices

  • I'm creating an FPS game. I'm writing my own game engine. So far all the backend stuff is going great. I'd like to support md2 as the native file format for 3D Objects, but I also want to use skeletal meshes. Does anyone know if the md2 file format supports skeletal meshes? In-case you need to know, I'm going to use blender as my Mesh creation tool and C++ as my programming language... Thanks For got to mention, the engine is based on OpenGL... Alright, for anyone who is reading this, I just found the Doom 3 md5 specifications (http://tfc.duke.free.fr/coding/md5-specs-en.html). It gives

  • don't really need 3D. The editor usability is a little worse than Unity3D in my opinion and it wasn't clear to me how to start programming. I think it requires C++ for coding, so that's a negative too. I want to have fun, and c# is fun ;) SDL. Quite frankly, I'd still need to port to all those different SDL implementations. And I don't like OpenGL style programming, it's just plain ugly. And it needs... to use Flash, but I don't know if it scales well enough. I'm not a scripter, I want some real APIs that I can work with inside a proper IDE. Just for information, I looked at several alternatives, I'm

  • of wasting it on incorrect approaches. I use Softimage as my 3D authoring tool. Target platform is OpenGL ES 2.0 running on mobile devices (iOS, Android). Programming language: C++. ...After careful consideration to use middleware, I have decided on creating my own 3d file format format to export meshes from 3D authoring application (Softimage) into my game. I will need to export... intelligence, aggressivity, etc..) ..another assets.. Can I kindly ask for a hint, how to construct my custom file format. How to organize data within my files, please? Does anoybody have a good adivce

  • this summer and I have a good grounding on the web side of things. I've also done some very basic c++ (what i would consider basic). My c++ skills basically comes down to different tutorials on things... I take and the language that I base my first decade of programming on. This is important to me so please do not dismiss it as another student who likes games and wants to code them. I'm a hungry young...? Absolutely any opinion of debate on this topic is appreciated as I'm fairly lost on what to do. Thanks for reading my rant and I'll finish up here. Look, I'm good at Java but its not the best thing

  • this idea and I'm wondering how steep the learning curve would be to eventually create such an overlay (not exactly as advanced as the ones mentioned above). I'm currently programming mainly in C#, I have no experience with C++ whatsoever nor DirectX. During my education most focus was placed on C# and Java. As I much prefer C# over Java. My skill set for C# isn't bad. As I recently graduated I wouldn't call myself a C# wizard however. The main questions I have are: Where do I start with my goal to create overlays for games? Does anyone here have any experience with it? How steep would

  • happy to outsource graphics and sound, leaving me with coding, game design, level design and so forth. Do I need to learn C++ properly, or can I rely on my C# and .Net knowledge? If I'm going to leave C++ out of the equation, am I seriously limiting myself with regards to platform agnosticism? Given that my memory of mathematics (high school level) is hazy at best, how much time I do I need... but forced myself to wait on, as there are only so many hours in the day to devote to projects. I am an experienced web developer (12 years) with most of my experience programming in C# and .Net (8