Infernis@Posted: Sun Aug 13, 2006 6:57 pm :
I'm working on editing some textures. I'm knew at this so there is much to learn. I understand what needs to be done to get Quake 3 textures properly converted to Doom 3. But, if I have a Quake 3 texture which resembles a light and has a shader. How can I make a material file that does the same in Doom 3?

I've opened up some stuff from Doom 3. But I'm not sure what I'm looking at. Found a couple of tutorials but nothing like the shadermanual for Quake 3. A push it the right direction would be appreciated.

Bittoman@Posted: Sun Aug 13, 2006 7:55 pm :

Infernis@Posted: Sun Aug 13, 2006 8:03 pm :
Textures in the D3 engine cannot emit light like in Quake 1/2/3 engine games. What they've done in D3 was to add a pass that sets all pixels to full bright. You can control which areas will be lit like this as well as the color and even cause it to flicker or pulse or change colors (like say a Disco) using other passes. Ultimately here's what you do:

   qer_editorimage   textures/mytextures/light01_d.tga

             blend       diffuseMap
      Map       textures/mytextures/light01_d.tga
      alphatest   .5
      blend           add
      map             textures/mytextures/light01_add.tga

Now the _d.tga is the actual diffusemap, the image you'll see in the editor and in game. This will be pretty much left alone however the _add.tga is the image that will dictate what pixels within the diffusemap will be set to full bright and what color they'll be (the brighter the pixel on the add image the brighter the pixel will render in game). For a visual example open up pak10.pk4 and go into textures/common_lights and find these two textures:


This will show you how the "add" stage will render on top of the diffusemap.

rich_is_bored@Posted: Mon Aug 14, 2006 5:45 am :
Excellent, thanks!

Infernis@Posted: Tue Aug 15, 2006 5:24 pm :
The closest thing to an shader manual out there...

It's not quite as fleshed out as Q3's shader manual, but considering that anyone who bothers to create an account can contribute, there's no reason why it couldn't be.