SoftGeL - This section is dedicated to covering various aspects of rendering raster graphics using pure software rendering. Graphics APIs such as OpenGL and DirectX use hardware to render raster graphics. Like the other sections there is no real roadmap. Tutorials will simply progress through various concepts as I decide to cover them.
PHP 3D - Things get a little more advanced here, introducing you to the concept of lighting and ends with a simple ray tracer. The main purpose of using PHP was to get access to true color graphics and provide you with a direct example of just how applicable these lessons are to any language and any system.
Real Time 3D - PHP is fine for doing static images but the idea is to do real time software rendering and that is best done with C++. A language which allows us to get as low level as we want. These tutorials will show how to create a simple real time ray tracer as well as how to create a Wolfenstein 3D clone with true color graphics and high resolution renders. There really is no set stopping point for these tutorials. As many topics as I can come up with will be posted here. These tutorials are immediately applicable to any system that can plot a pixel but doesn't have a high powered graphics card. Porting the code simply requires translating the lesson code if needed and then supplying a core that can access the system's video memory to display the software render to the user.
Java 3D - The java tutorials will quickly move through simple to where Real Time 3D left off and then continue on to more advanced topics. The reason for using Java is quite simply that I need to learn Java and I find the best way to learn a language is by porting and enhancing complex projects from other languages. Java is also 100% free.
Blackjack - If you're new to programming or new to Object Oriented programming this is the series for you. These lessons will cover the process from creating a design document to creating a final product. Our final product will be a blackjack game that you can supply an infinite number of player types for and then have them compete against each other in a massive tournament. This will get you well aquainted to the concept of Artificial Intelligence (AI) and Non-Player Characters (NPCs) which will come in handy for every game you will every make.
The goal of this site is to start at the bottom with the basics of software rendering and work up to more advanced concepts. And, unlike most sites, at each step along the way there will be a ready to compile collection of code that applies the lesson. The lessons actually go over the key points of the code. Not everybody can just read a book and understand the theory so here we apply the theory into a practical application for you.
All Tutorials Copyright 2004-2007 Icarus Independent
View the License Agreement