Jump to content

Enabling reflection in NifSkope (Fallout 3)


Vault86Overseer

Recommended Posts

  • 10 months later...

I wanna reply to this and say that I have solved the problem. to enable reflections in a FO3 NIF, Enable the following shader flags:

SF_Environment_Mapping

SF_Multiple_Textures

 

Then, add an environment mask texture "texture_em" in the second to last texture slot under your mesh's texture set. This can be generated here: http://cpetry.github.io/NormalMap-Online/ under the Specular section. Essentially, this em texture IS your spec map.

Link to comment
Share on other sites

I feel I have to correct a few things
Specularity, glossiness and reflection are three different things.

Speculartity has to be understand as the how material react to light.
Is it shiny or dull?
Is the shininess diffused over the material or is it pinched?

The first question is dealt with the Specular Map, the Alpha layer of the Normal Map. Dark zones will be dull, clear ones will be shiny.
So you draw your Normal Alpha layer according to which zone you want shiny and which is dull.

The second question is dealt in the Material section of the nif with the setting "Glossiness". The lower the value, the more diffused the gloss will be.

Environment Mapping or Cube Mapping is a way to simulate what is reflected on your object. A special kind of texture is projected on your object.
The slot for these textures is second to last, the naming convention is Name_e.dds
There's a few EnvMap provided by the game. You can create your own.

EnvMap is projected equally over your object. If you want some part not to be reflective, you'll need to add an Environment Mask. The darker the mask is, the less the CubeMap will go through. Naming convention is Name_em.dds, its slot is the last one.

Inside the nif, at Shader level you have to enable SF_Environment_Mapping flag for the CubeMap to work efficiently.
There's a couple of other settings related to it.

If you enable SF_Environment_Mapping flag without referencing a CubeMap, game will put one in default.

More about Environment/Cube Maps
https://wiki.nexusmods.com/index.php/Photoshop_environment_mapping
https://wiki.nexusmods.com/index.php/Photoshop_cube_maps_in_Fallout_3

Link to comment
Share on other sites

  • 4 weeks later...

Technically, specularity is a 0-255 value from the alpha channel. The pixel shader will use it to determine how bright that pixel is relative to its angle to the light source and the camera, which depends on its normal vector. It determines how much the light's color will further brighten the color of that pixel. It come down to how strongly the light source brightens that pixel.

 

So, in the normal map, the RGB layer is used to give each pixels a normal vector, which you can think of as an arrow that determines where that pixel is pointing. The NVidia normal map creator for Photoshop has an algorithm that basically determines each pixel's angle based on its brightness. It can create the illusion of bumps, cracks, and edges based on the brightness of each pixel. So in situations where the differences of color are not supposed to make the surface less flat (like dirt on a wall), you gotta smooth out those area before creating the normal map by giving them a solid color. Or In the NVidia screen you can set the Scale value to 1 or 0 to determine how strongly differences of brightness affect the angle of the normal.

 

You can play with both values in a normal map to get the intended effect. The RGB value determines the normal vector's angle to the light, and the alpha value determines how strongly (or how specular) the changes in the normal vector influence the brightness of the pixel.

 

Of course it also comes down to how detailed the mesh is to begin with. Bethesda's meshes are extremely simplified for efficiency, using the least number of vertices possible. This means you have to now rely on the texture and normal map to create the illusion of a 3D effect.

 

You also have other tools, like the specular color in the NiMaterialProperty of the mesh. I guess this color is added to the mix of the other calculations to further determine each pixel's color. Then there are the Environment Mapping and Window Environment mapping, The problem I have run into is that all of those things can end up making the final result way to bright.

Edited by GamerRick
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...