These tutorials focus mainly on OpenGL, Win32 programming and the ODE physics engine. OpenGL has moved on to great heights and I don't cover the newest features but cover all of the basic concepts you will need with working example programs.
Working with the Win32 API is a great way to get to the heart of Windows and is just as relevant today as ever before. Whereas ODE has been marginalized as hardware accelerated physics becomes more common.
Games and graphics utilities can be made quickly and easily using game engines like Unity so this and Linux development in general will be the focus of my next tutorials.
ODE (Open Dynamics Engine) Template
By Alan Baylis 20/12/2004
Download the ODE Template with Source Code
The ODE template is an example program that shows how to combine a Win32 based program and OpenGL rendering with the ODE physics library. I will follow up this release with a tutorial that discusses in detail the various functions that make up the program. To get the most out of this example program you should be familiar with both the Win32 and OpenGL APIs. If you are new to Win32 and OpenGL programming then you may want to look at my previous tutorials for Win32 and my OpenGL tutorials/examples.
You can download the complete source code and binaries for ODE from the official ODE website here. It has been released by Russell Smith under the terms of the GNU Lesser General Public License. The example program was compiled using the Dev-Cpp compiler (Version 4.9.5) available here. To help make the task a little easier I have put together a small zip file that contains all the ODE files you will need to compile my example program, click here to download.
In the zip file you will find two dll files called 'libode.dll' and 'libopcode.dll', you will also find two folders called 'ode' and 'drawstuff'. Copy the dll files to the lib folder of your compiler and copy the two folders to the include folder of your compiler. I have only made one change to the config.h file which is located in the ode folder; this was due to a conflicting definition of int32 in winsock2.h. Once you have copied the contents of the zip file then open the Dev-Cpp project file (ode.dev) in my example program and press F9 to compile and run the program. If all went well with the compile then you should see a small dialog window with a console window behind it. Click Ok on the dialog window and the program will open up to a full screen window displaying a grid with two large wall sized blocks resting on the grid. These two blocks are joined using a hinge joint but they are not joined to the grid. To see how the hinge joint operates you can press 'b', 's' and 'c' to fire blocks from the camera position at the right hand side block, it will swing on its hinge like a door.
I hope you find the example clear and helpful. I'll get busy and write a full tutorial for this example in time for the next update and I look forward to writing many more tutorials for ODE in the future.