I'm not entirely sure what to include in this writeup, usually I talk about all the horrible things that went wrong, but this one was pretty straightforward. The hardest part was properly scaling the cube in Maya to output a cube at the same size as our hand coded cubes. Changing the Maya exporter to output bitangents and tangents was exactly the same as how we were already output the normals. The actual fragment shader code was pretty simple too, just modifying some normals with the new values.
I did find it interesting how DirectX handles multiple textures per mesh. I figured we'd have to explicitly call SetTexture with the specific texture name, their way is much nicer.
Other than that I spent a bunch of time making new text files and cleaning up some things. I took the specular exponent out of the scene file finally, even though I wasn't even using it. Additionally I decided on an expected texture type of 0 to be just a texture and 1 to be texture and normal . This way I can just do a simple int compare in the update loop, might not be the most human readable though. Spoilers, 2 will probably include environmental maps.
I also spent a lot of time figuring out how I broke my specular lighting awhile ago. Apparently I was passing a zero in for light intensity, which when multiplied with my specular lighting went to zero.
Anyway, here's the code.
No comments:
Post a Comment