Monday, December 24, 2007

Custom Texturing

I have been further learning the Radiant/Doom 3 Editor and have learned a lot about texturing. There are separate channels that the texture must be split up into: specular, normal map (bump), and diffuse. Diffuse= main color information and overall look of object; specular= highlights- a desaturated version of the diffuse with enhanced value gradation; normal map= grayscale version that is used to simulate a height map on a flat surface. An easy way to convert your diffuse maps into a normal map is the NVIDIA Normal map filter: a plugin that can be downloaded from http://developer.nvidia.com/object/photoshop_dds_plugins.html. All three of these separate channels are combined using a material file that tells each how to react to light. This is the magic of texturing! The texture cannot be viewed in its full effect until compiled in game. Texturing is tough business but pays off... in the words of 3D World Magazine: "texturing is 99 percent of the visual experience of a game."

Tuesday, December 11, 2007

Learning Radiant Editor

I have recently done some research on development companies such as Activision, ID, and Infinity Ward. Judging level editors by reading what Activision had posted on their site, it seems that they prefer, in order:

1)Radiant Editor
2)Unreal Editor
3)Quake Editor

Following this advice, I have since been learning tutorials from MODSonline.com and 3DBuzz.com about the Doom 3 Editor since it is Radiant-based. I already have the game and it comes with its own editor- also I like the detail that was achieved in the game. I immediately noticed that the editor has a simpler interface than what I was used to (Valve Hammer Editor). The feature I am most impressed with is the ability to Compile the level in a small window and run through it as if it were in-game. This is extremely helpful for fine tuning the color and distance of lights, etc., to get just the right feel. The editor seems to require a lot more scripting than that of Hammer, where every object seemed to be pre-programmed and the user just throws it in the game and it works. With the Radiant editor, I will be able to learn more about the inner workings of each level and have finer control of the output. At the moment I have a test level built but am planning on using the editor to make a level that has a completely different feeling than that of Doom. There is also a simple way to import 3D models from 3DS Max which also has me very excited. Stay tuned for my first finished level!

Saturday, December 1, 2007

Working with Ambient Occlusion

I have been doing research on how to make models look more realistic. Global Illumination is a very desired method of creating a skylight that simulates realistic soft shadows on a model- in real time during the render. The only problem is that the process takes a lot of the computers' resources and thus adds to the render time. The quick answer to this problem of getting it done while having it look good seems to be "Ambient Occlusion" This method fakes global illumination by creating a global light (usually the default lighting set up in any program when no lights are added to the scene) and figuring where the rays are being blocked by geometry. This creates the appearance of a softer shadow look, and, when composited into a basic phong or blinn shader, produces noticeable results. There is also a way to bake the occlusion into the uv map- so that the model can be updated quickly when rendered at different angels- also helping with the initial positioning of the diffuse map when texturing. I admit I'm no pro on the subject, but it is something worth getting a better understanding of to simulate more realistic models. I will try and render some examples so that it will be easier to understand.