Just a quick update....
I've spent the last couple of days lost in my own stupidity again. I was
working on distilling the 3d engine to get it so that we can just plug in
content. My guinea pig was the map editor. I hooked it up and everything looked
right code wise, but nothing was showing up!!! All the HRESULTs were succeeded.
It was jut plain weird. The view was clearing properly,
but no data. I couldn't figure it out. I finally got it and it was another one
of those silly one line problems. Check this out:
IDirect3DDevice9 has a function clear that clears the buffer to a color.
HRESULT Clear(DWORD Count, const D3DRECT *pRects, DWORD Flags, D3DCOLOR Color, float Z, DWORD Stencil)
Here was my call:
pDevice->Clear(0, NULL, D3DCLEAR_TARGET |
D3DCLEAR_ZBUFFER, 0xff000000, 1.0f, 0);
Can you see the problem yet? I couldn't for the longest time either. The
problem is the 1.0f. That number is supposed to be the Z value that the
depth buffer is cleared to. Silly me. I was clearing the depth buffer such that
everything would fail the depth test. The proper call should look like this:
pDevice->Clear(0, NULL, D3DCLEAR_TARGET |
D3DCLEAR_ZBUFFER, 0xff000000, 0.0f, 0);
Everything worked great after that. I spent another couple of hours ripping
out the all the hacky test code I put in to try to diagnose the problem. I hate
when that happens. It's one of those things that you can't get any help from
DirectX on.
On another note, I've been playing around with DesktopX and the ObjectDock
quite a bit. I really like the object dock functionality. You should download it
and try it if you get a chance. I think it's free. Here's my current minimalist
desktop:

The bar actually autohides, but it'd defeat the purpose of
showing what it looked like if it was hidden. Right?
We also got busted for playing Halo a little too long at lunch
today. Brad is such an Ogre.

(By ScottT)