• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

What do I need to start developing in OpenGL and D3D?

Stiganator

Platinum Member
I would like to learn to develop using OpenGL (3???) and D3D (9 seems a better choice at this point)

I a newbie so I need to start at square one.

What do I need to download to start some tutorials?

Point me in the right direction.
 
For DirectX:

You need a programming language to program in. Probably C++. Download Microsoft Visual Studio Express Edition if you don't have a C++ compiler. Then go download the latest DirectX SDK (it contains 9 and 10) from msdn.microsoft.com/directx.

After you do that, load up the sample files included in the DirectX SDK install, and see how the programs work, then start analyzing some code. Also the help files with DirectX SDK are fairly good.

 
Also, if you intend to do 3D programming, you'll need to have an understanding of the math behind it. I recommend "3D Math Primer for Graphics and Game Development" by Dunn and Parberry from Wordware Publishing. Read it, learn it, live it. You need good understanding of geometry.


You'll also need a good Intro to Direct3D. I have "Introduction to 3D Game Programming with DirectX 9.0" by Luma, also from Wordware. It's good...not too terribly dull.

I'd recommend some books, because I've yet to see a good online tutorial.
 
I think I have everything I need for DX, but still haven't a clue as to what I need for OpenGL. The website doesn't have anything clearly indicated as a SDK.
 
I'd recommend starting with OpenGL immediate mode if you are a total beginner. Look up 'OpenGL redbook' for all the reference material you need to get started. Other than the wgl extensions to set up the render context in Windows (OpenGL is designed to be platform independent unlike D3D) there is very little setup or platform dependent material and you can jump right into OpenGL's immediate mode commands right away and get something on the screen right away. When tackling something as complex as 3D graphics for the first time, staying motivated is important, and the sooner you get tangible results, the more likely you are not to get discouraged.

Immediate mode is simply a collection of functions like glBegin, glVertex, glColor, glTexCoord, glEnd, wglSwapBuffers, etc.

Getting setup with D3D, esp 9+ with flexible vertex formats, vertex streams, shaders, etc. can be overwhelming and confusing if you've never used D3D before, let alone being your first time with 3D graphics.

Learn with OpenGL first so you can focus on the concepts behind 3D instead of struggling with the API. Not that advanced GL isn't as bad with all the extensions, but D3D by contrast does not have an immediate mode. The reason is it's inefficient for any serious performance demanding work, but it's great to learn on.

Edit: first hit on google: http://fly.cc.fer.hr/~unreal/theredbook/

Other tips if you are serious, is come to learn and understand the math pipeline in software in due time, particularly homogeneous coordinates and the purpose of 'w'. The topic of the w coordinate is considered black magic by 3D beginners and gaining an understanding of it and projection matrices and clipping will make every other what/why/how in 3D clear as day. Or it will just ruin the magic for you and make 3D boring.

As a beginner you'll likely just copy a projection matrix from an example and never touch it again like anyone else, but understanding it in depth should be a long term goal.
 
Back
Top