High lighting - glossiness on textures in game

Post » Thu Jun 03, 2010 11:26 am

I'm not sure if this is a good place to talk about this or not, but I suppose a moderator will move it appropriately if needed. I'm having some problems with some new textures I retiled of some vanilla textures. One of them is Jrock01.dds (512 x 512). I've increased it's dds sizes to 1024x512, 1024x1024, 2048x1024 and 2048x2048. The surface is relatively smooth for normal maps in my opinion for a rock texture fyi. Now, the increase of the textures is for the new meshes I created to simulate some larger rock formations designed for MERP. These rock meshes range from 75% to 400% in relation to the largest vanilla rock. The meshes and collisions are fine.

The problem is while in game, they have way, way too much lighting on them. Almost like a mountain of glazed rock candy. I did a little research at Nifskope thinking I need to adjust lighting through the mesh somehow that way. I found a little bit of info and tried testing the removal of the normal map. This fixed my light problem perfectly! But now, while all other objects are affected by weather changes and how they are seen (in snow, fog, rain, etc.), the new rock meshes are unchanged. This solution of fixing lighting may work for smaller, unnoticable meshes, but not for landmarks. That is how large these rocks are in order to simulate the crags of Emyn Muil of MiddleEarth.

I think that the ambient and diffusive settings in Nifskope modify the lighting, but I'm not sure about how to go about this. I'm somewhat familiar with Nifskope and modifying settings, but no expert for sure. Does anyone know how I can fix the high lighting/glossy glaze settings seen in game but not in Nifskope? Or can someone give me a little understanding of what I should look/test for to achieve a normalized Jrock texture?

thanks in advance.
User avatar
Andrew Tarango
 
Posts: 3454
Joined: Wed Oct 17, 2007 10:07 am

Post » Thu Jun 03, 2010 2:58 pm

That is a common problem. The alpha channel of the normal map controls light reflection. You probably saved your normal maps with a white alpha channel, which makes the rocks reflect light like a mirror. Either save as DXT1noalpha or adjust the alpha channel of the normal map. Black is no reflection, white is very strong reflection.

Diffuse and ambient color have no effect in game by the way unless you don't use a normal map. Which, like you already noticed, is not a good idea - even for meshes that are completely flat and don't need normal mapped bumpiness.

One more suggestion is to use a smaller normal map for large textures and save as 8.8.8(.8) (A)RGB. For example if you have a 2048x1024 texture make a normal map that is 1024x512 and save uncompressed. You won't notice the smaller size in game, but you will notice that there are no compression artifacts.

Finally I'm wondering what you did to the JMRock01 texture. Did you simply upscale it? Or paste the texture 4x into the 1024x1024 version for example? If so it is a waste of performance, adjusting the UV map to tile 4x as much is a far better way to do it. Just saying in case you did it that way.
User avatar
Taylah Haines
 
Posts: 3439
Joined: Tue Feb 13, 2007 3:10 am

Post » Thu Jun 03, 2010 5:18 pm

That is a common problem. The alpha channel of the normal map controls light reflection. You probably saved your normal maps with a white alpha channel, which makes the rocks reflect light like a mirror. Either save as DXT1noalpha or adjust the alpha channel of the normal map. Black is no reflection, white is very strong reflection.

Diffuse and ambient color have no effect in game by the way unless you don't use a normal map. Which, like you already noticed, is not a good idea - even for meshes that are completely flat and don't need normal mapped bumpiness.

One more suggestion is to use a smaller normal map for large textures and save as 8.8.8(.8) (A)RGB. For example if you have a 2048x1024 texture make a normal map that is 1024x512 and save uncompressed. You won't notice the smaller size in game, but you will notice that there are no compression artifacts.

Finally I'm wondering what you did to the JMRock01 texture. Did you simply upscale it? Or paste the texture 4x into the 1024x1024 version for example? If so it is a waste of performance, adjusting the UV map to tile 4x as much is a far better way to do it. Just saying in case you did it that way.


Thanks Phitt, that was very helpful. For the Jrock, all I did was split the edges vertically and horizontally (reversed) with a bit of artifact erasing through multilayering and acquired a tile that could be repeatedly connected as a wraparound by pasting several tiles in as you mentioned. I did it this way so the edges would meet seemlessly. 2048 x 2048 is pushing it but it was needed for a couple of meshes so that there would not be any blurriness. That is how large the meshes are at 1x scale. I did try adjusting the UV map scales but anything past 2x scale for the 2048 would blurr. Thus the reason for having several different texture sizes so I can reduce the blurriness. Seriously, the meshes are huge, of which 3-4 of them are in my opinion 'mountain' size.
Your insight is much appreciated. :D
User avatar
Damian Parsons
 
Posts: 3375
Joined: Wed Nov 07, 2007 6:48 am


Return to IV - Oblivion