Difference between revisions of "WaterType"

1,077 bytes removed ,  17:29, 8 December 2021
→‎Noise Properties: Added missing 'Enable Flowmap' and 'Blend Normals' settings (Skyrim Anniversary/Special Edition), Moved 3 notes the to Notes section, changed "channel" to the term used by the CK (layer) to relieve confusion
(→‎Noise Properties: Added missing 'Enable Flowmap' and 'Blend Normals' settings (Skyrim Anniversary/Special Edition), Moved 3 notes the to Notes section, changed "channel" to the term used by the CK (layer) to relieve confusion)
Line 93: Line 93:
==Noise Properties==
==Noise Properties==
===Texture Select===
===Texture Select===
Which channel of the noise texture we want to adjust. Currently only use the first 3 channels (RGB)
Which layer of the noise texture we want to adjust. Currently only use the first 3 layers (RGB channels)
 
===Enable Flowmap===
Enables/disables use of flowmaps for waterType.
 
===Blend Normals===
Enables/disables the blending of the normal map textures for the waterType. Used for blending two different waterTypes together that are using different noise textures (e.g. rivers blended into oceans).


===Wind Direction===
===Wind Direction===
The 360 degree direction we scroll this height map channel in. We do not actually rotate the texture data but rather just scroll the texture coordinates based on the 360 degree vector direction. What this means is, you have to build any direction of the wave patterns into the height-map if you want some sort of actual directional movement. (e.g. You wouldn't want waves built on the Y-axis to scroll along the Y-axis causing the waves to appear to move sideways. You would instead want them to scroll on the perpendicular X-axis so they appear to be moving forward in 3D space.)
360 degree direction the height map is scrolled.


===Wind Speed===
===Wind Speed===
Line 102: Line 108:


===Amplitude Scale===
===Amplitude Scale===
Determines the final scaled value of the heights in each height map channel. At 100%, we would be using exactly the heights that are in the texture. Since we combine all 3 height channels into a final normal, we don't want all 3 height channels to be at 100% (unless you have scaled the heights down in each channel manually already). This is because we will have height values reaching above 1.0 and cause the heights to become saturated. This would give us a very flat normal map with the incorrect wave formation. The final look would be as if all waves were at their peak and there was no falloff at all.
Determines the final scaled value of the heights in each height map layer. At 100%, we would be using exactly the heights that are in the texture. Since we combine all 3 height layers into a final normal, we don't want all 3 height layers to be at 100% (unless you have scaled the heights down in each layer manually already). This is because we will have height values reaching above 1.0 and cause the heights to become saturated. This would give us a very flat normal map with the incorrect wave formation. The final look would be as if all waves were at their peak and there was no falloff at all.


===UV Scale===
===UV Scale===
We can scale down any specific height map channel to tile if necessary. I would recommend against using this per-height map channel. A better solution is just to generate the scales you want when you generate the height map channel to begin with. This is better suited for re-using the same height map on a different water surface but allowing you to get some different results to make the water surface look more unique while still using the same height map texture memory. Since artists are restricted to 1 height map per-world-space, this is a good way to have multiple water types that still look different from each other while still using the same height map data.
Scales the size the noise texture is applied to the layer.


===Noise Falloff===
===Noise Falloff===
This determines the falloff curve used for the strength of the normals further from the camera position. The smaller the value, the closer to the camera position will cause the normals to be scaled down until they reach 0. It is possible to have these values high enough so that the normals are at 100% across the entire 5x5 region. However, they will currently not blend correctly into the LOD water unless we come up with some solution.
This determines the falloff curve used for the strength of the normals further from the camera position. The smaller the value, the closer to the camera position will cause the normals to be scaled down until they reach 0.


===Select Noise===
===Select Noise===
This determines what noise texture is used for this water type. In exteriors, this has to match up to the world-space water type or a warning will trigger. In interiors, the restriction is removed allowing each water type to use whatever noise texture it desires. We only allow this since, on average, interiors run faster then exteriors. However, it will still be up to the artist/designer setting up the interior to make sure that they do not abuse the texture memory by going overboard with water types using multiple unique height-maps.
This determines what noise texture is used for the layer. In exteriors, this has to match up to the world-space water type or a warning will trigger. In interiors, the restriction is removed allowing each waterType to use whatever noise texture it desires. We only allow this since, on average, interiors run faster then exteriors. However, it will still be up to the artist/designer setting up the interior to make sure that they do not abuse the texture memory by going overboard with waterTypes using multiple unique height-maps.


==Fog Properties==
==Fog Properties==
16

edits