View Single Post
Old 07-29-2014, 12:32 PM   #13   Add To Ignore List  
Finzy Corp. CEO
Finzy's Avatar
Joined: Sep 2005
Location: Whatshisoffice
Finzy is offline
Default Re: General Modding Standards and Information

Finzy's Guide to: Proper use of custom normal maps & gloss maps!

Ever wondered why the console is always bitching about stuff like this a thousand times?

Standard shader in object [#ObjectAddress(CStandardShaderArgs, 0xb6000025)] has wrong texture set for normal map! ('Content/SeriousSamHD/Models/SexyLady/GiantTits_normals.tex')

...Even though you applied the normal map and it's "showing" fine on the model? Well truth is, it's not displaying it properly and it's not put in there correctly.

The game doesn't read textures correctly as normal maps unless the filename ends with _NM.tex and they are flagged as normal maps. To fix this, before creating the texture, the .tga file must end with _NM.tga, like so:

GiantTits_NM.tga -> GiantTits_NM.tex

Now when you go to create the texture, the game will recognize it as a normal map! The "flags" property will list "normalmap", and it will automatically choose 8 bit translucent or similar as the compression (which you can't change). Then, simply create the texture and apply it as a normal map, and it will display properly on the model like any other normal map texture in the game, without throwing errors.

...Ever wondered why your custom gloss maps don't seem to do anything?

Well they don't on their own if you just slap them to a model and don't do anything. To get them to show, you need to give a value to coating specularity (in the layer map), between 0-1 (ranging from less precise to more precise, for example 0.95). Then, go to coating color, and start raising that color, and hey presto, you'll notice that the specularity will actually start to show on the model (depending on the gloss map you chose of course; if you still see nothing it could be that the gloss map is too dark, or it's not a true gloss map). Also, like with normal maps, you need to specify a uvmap to use for the gloss map, and its stretch value. The game's gloss maps are named _GM.tex, and for general convenience you should also name your own custom gloss maps the same way. I'm not sure if gloss maps are dependent on having the same end to the file name like normal maps, but it sure can't hurt to name all your textures that way. Lastly, if it's a custom player model rip, you can with good conscience assume that specularity related textures are intended to use as gloss maps.

All this applies to both SS3 and SSHD. Hopefully people find it useful cause I noticed quite many custom player models and even levels seem to be suffering from this.
  Reply With Quote