Learning CG from MESA source

Started by
1 comment, last by SoftRend 13 years, 4 months ago
Hi All,

First post and Merry Christmas to you!

I've read some good texts this year that has helped with learning of graphics programming:

Lamothe's "3D Tricks"
Van Verth and Bishop's "Essential Mathematics for Games"
Dunn and Parberry's "3D Math Primer"

Lamothe's was handy insofar as a basic working implementation goes. I'm interested in learning CG from a low-level point of view purely for educational purposes. I've also read the OpenGL red book.

I thought I'd take a look at the latest mesa source code - OMG! That implementation really is comprehensive - but I wonder how people have got on with actually digging through the sources and learning from it? I've been using MS Visual Studio 2008 debugger on the source for the last week or so - but I might just have to give up on it. Most of the code I've stepped into so far seems to be jumping through many many many hoops manipulating pointers, structs and seemingly interminable data movement. I've yet to get to the "meat" - i.e. transform, lighting, clipping and rasterization. Actually I have looked at the rasterizer along with Hecker's texture mapping articles.

I've been programming for over 10 years and have some experience of writing basic software renderers.

So, can someone point me at the source of a software renderer that they found instructive and learned from...? Looking at the MESA source feels like I'm being burried by an avalanche such is the monsterous size of it...

I'm mostly interested in the fixed function pipe. I have 6 months available to look at software rendering full-time purely for my own education and interest. I'm not at all interested in writing graphics programs using an API.

Cheers,

SoftRend.
Advertisement
I've found the BurningVideo software renderer rather instructive; it's part of Irrlicht so the full renderer source is available as part of the core Irrlicht source package.
[size="2"]www.coldcity.com code, art, life
IainC

Thanks for the mention of the Irrlicht Engine - I had that on my HD at one time and have since completely forgot about it. I'll certainly grab it again.

I've persevered a while longer and have finally got to some TnL in the mesa code. I think I'll stick with it - should learn a lot now I'm finally getting a handle on the mesa structs...

I had an early version of mesa way back when it was around OpenGL 1.2 or 1.3. The complexity back then was way less than it is now - not surprising given the new OpenGL features and vertex and pixel shaders...

Cheers IainC,

SoftRend

This topic is closed to new replies.

Advertisement