Saints Row IV Format of normal map textures?

I've noticed in SRTT and SRIV you use 2 different formats for the normal map texture.

You have obviously swizzled the normal vectors and thrown away the z vector (as it can be derived using the Pythagoras' theorem).

Do you use 2 different shaders for each normal map type or do you use the so called Capcom normal map hack?

i.e.

Option 1 (2 different shaders):

Shader 1 (low quality normals using DXT1):

x=r, y=g, z=1-sqrt(r*r+g*g)

Shader 2 (high quality normals using DXT5):

x=a, y=g, z=1-sqrt(a*a+g*g)

or Option 2 (The Capcom hack):

x=r, y=g, z=1-sqrt(r*r*a*a+g*g)

(For low quality DXT1 normal r=x vector and a=1.0. For high quality DTX5 r=1.0 and a=x vector).

If you use the Capcom hack then the 2 normal quality methods will be interchangeable.
 
Last edited:
could you please tell me where the normal map for the female character is located so that i can extract it?
 
There are several in packed in the customize_player.vpp_pc file. They are:

Female_Asian.str2_pc / Male_Asian.str2_pc
Female_Black.str2_pc / Male_Black.str2_pc
Female_Hispanic.str2_pc / Male_Hispanic.str2_pc
Female_White.str2_pc / Male_White.str2_pc

Inside each of those there are several textures.

The age textures are for the age sliders. The heavy, ideal, muscular, skinny textures are blended by the body shape triangle.
 
wow. thats a little more complicated then i thought. what im trying to do is modify the normal map to remove the x axis shading (green color of the normal). I noticed that when the character is up side down, the bottom is always shaded because of the normal map. hard to explain but thanks for locating it.
 
Back
Top