evirol Posted July 4, 2023 Posted July 4, 2023 (edited) Anyone know how to convert an orange/red blizzard normal map to the blue/magenta used in Skyrim? I ripped a normal (and other things) out of heroes of the storm to make me a mod but the normals aren't right for Skyrim. Edited July 4, 2023 by evirol
Frayed Posted July 4, 2023 Posted July 4, 2023 I don't have a full solution for you, but maybe I can point you in the right direction by giving you the right terms to search for. I'm not certain what format Blizzard/HotS uses for their normals and I can't tell for certain from your description, but it sounds like what you have are object space normal maps, which you're looking to convert into tangent space normal maps. The difference, in case you're unaware, is that: Object space normal maps describe the surface orientation relative to the overall orientation of the object it's applied to. It's a bit like how we talk about left vs right - it's relative to the direction we're looking. Tangent space normal maps describe the difference from the surface orientation of the object. As an example: if your normal map didn't have to do anything and you wanted to get all orientation information from your mesh itself, the normal map would be just one color. It only describes differences. Some more info here: https://docs.cryengine.com/display/SDKDOC4/Tangent+Space+Normal+Mapping I don't know how to convert one to the other, especially not specifically to Skyrim meshes, but maybe this helps you look for how to do it. Another way might be to go the other way around and swap your mesh to use object space normals. Skyrim uses both: character models use object space, while most others use tangent space. Using Nifskope, I can see that the designated mesh shader (BSLightingShaderProperty) for player models has a flag called Model_Space_Normals that is set, which isn't set for other meshes. It might be as simple as simple as opening up your mesh in nifskope, looking for the BSLightingShaderProperty and ticking that flag. But I've never tried this, and it probably needs a bit of trial and error to see if it works.
Andy14 Posted July 4, 2023 Posted July 4, 2023 14 hours ago, evirol said: Anyone know how to convert an orange/red blizzard normal map to the blue/magenta used in Skyrim? I ripped a normal (and other things) out of heroes of the storm to make me a mod but the normals aren't right for Skyrim. Skyrim always uses a Tangent space normal map (except for head, body, hands etc.). With the help of the Mesh as Obj, a diffuse map and the program xNormal you can create both Tangent Space Normal maps and Object SPace (or Model Space Normal). You don't necessarily need a highpoly and lowpoly obj for this. Alternatively, you can use Gimp to create a Tangent Space Normal from a diffuse/bump or height map. If everything doesn't work, then import the mesh as obj into Blender, check if the UV is correct and bake a new normal map.
evirol Posted July 9, 2023 Author Posted July 9, 2023 Very thorough and informative answers, both of you. Thank you for the replies.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now