Technical details about »Applied Mediocrity«

(September 4, 2009)

As you may or may not have noticed, my latest intro won the PC 64k competition at Evoke 2009. Unlike my previous demos and intros, it actually featured a few effects that go beyond fixed-function rendering or per-pixel lighting. For all who are interested in how it works, I’ve written this small article that explains how each of the eight effects in the intro is done, as well as some general insight into the creation process of the intro.
Read more …

nVidia driver bug?

(July 8, 2007)

While testing my current work-in-progress demo on my brand-new Vista-powered and GeForce-8-equipped laptop, I noticed some really strange rendering glitches. Since this was the only machine where the bug occured, so I thought it would be some bug in my code that caused incompatibilities with that particular driver version for that particular chip revision or perhaps Vista. However, a friend had the very same problem on a GeForce 7 card, Windows XP and a much older driver than the one I use on my main development PC, which has a nVidia card, too. This meant that the problem needed some serious debugging :)
Read more …

Sticking to the Anti-Direct3D camp

(February 21, 2006)

As I already mentioned some time ago, the 3D API of my choice is OpenGL. There are two main reasons not to use Direct3D, the only alternative to GL. The first reason is of course platform-(in)dependence, because I develop stuff for both Windows and non-Windows systems. OK, platform-independence isn’t really a crucial issue for demos as Win32 is the main platform for new-school demoscene stuff nowadays. (Nevertheless, a multi-platform demo still gets some additional appreciation, but that’s nothing you’re going to win a compo with.)

Reason number two: Direct3D is said to be much more complex. I don’t have seen much Direct3D code yet, so this part is mostly prejudice. Today, after a brief IRC conversation with a friend who codes D3D stuff for a living, I decided to give the DirectX Sample Browser (which is part of the SDK) a try. I really wanted to rethink my attitude towards Direct3D. Alas, it ended in disaster — instead of curing me from my aversion for D3D, looking at the tutorials reinforced my anti-D3D opinion …
Read more …

Modern OpenGL with lcc-win32, the hard way

(February 4, 2006)

I love OpenGL. Whenever I want to do some real-time 3D stuff, OpenGL is the API of my choice because of its simplyness and platform-independence. But honestly, OpenGL can also be a bitch sometimes. For example, there is no portable way of using textures with non-power-of-two dimensions. Another major annoyance is the way »modern« extensions are handled. To use recent technology like shaders, you need C header files that contain all definitions of the new functions, constants and so on. Annoyingly, these aren’t available in some development environments: Out-of-the-box OpenGL support ends at version 1.1 in both MSVC and my favourite dev system, lcc-win32. Read more …