Difference between revisions of "WaterType"

1,815 bytes added ,  14:03, 9 December 2021
→‎Fog Properties: Added more complete information
(→‎General: Added description for Spell effect and corrected link to ImageSpace)
(→‎Fog Properties: Added more complete information)
 
(7 intermediate revisions by 2 users not shown)
Line 44: Line 44:
==Water Properties==
==Water Properties==
===Open Sound===
===Open Sound===
[[Sound_Descriptor|Sound]] that is played while in close proximity to the waterType.
===Material===
===Material===
[[Material_Type|Material]] that is applied to the waterType.
===Directional Sound===
===Directional Sound===
===Opacity===
===Opacity===
Line 59: Line 63:


===Fresnel Amount===
===Fresnel Amount===
The Fresnel effect gives the observation that the amount of reflectance you see on a surface depends on the viewing angle. The higher the amount is, the more reflective the surface will be due to allowing more reflective viewing angles.
The Fresnel effect gives the observation that the amount of reflectance you see on a surface depends on the viewing angle. The higher the value, the more reflective the surface will be due to allowing more reflective viewing angles.


===Displacement Simulator===
===Displacement Simulator===
Displacement is the waves seen when an actor enters the water.
*'''Force''': The initial force exerted on the water. (e.g. the initial speed of the displacement)
*'''Force''': The initial force exerted on the water. (e.g. the initial speed of the displacement)
*'''Velocity''': The overall speed at which the displaced water should travel. (e.g. how viscous the water is)
*'''Velocity''': The overall speed at which the displaced water should travel. (e.g. how viscous the water is)
*'''Falloff''': Determines the time range before the water displacement dissipates. (e.g. how quickly you want the displacement to dissappear)
*'''Falloff''': Determines the time range before the water displacement dissipates. (e.g. how quickly you want the displacement to disappear)
*'''Dampner'''
*'''Dampener'''
*'''Starting Size''': The size of the ripple.
*'''Starting Size''': The size of the ripple.


===Liner Velocity===
===Linear Velocity===
The X, Y, Z direction that actors/objects are pushed while interacting with the waterType. This should match [[WaterType#Wind_Direction|visual flow direction]] of the water.
 
===Angular Velocity===
===Angular Velocity===


Line 86: 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).
 
===Flowmap Scale===
Scales the size the flowmap texture.


===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 95: Line 111:


===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==
Fog effects applied to water may be thought of as general 'murkiness'. The distance between the Near Plane and the Far Plane is a gradient between full transparency (no fog effect) and no transparency (full fog effect), and determines how quickly objects are obscured. The fog effect is achieved by changing the transparency of the water color, thus has no color in and of itself. To change the fog color, change the Shallow and Deep water colors.
===Above Water/Under Water===
===Above Water/Under Water===
Which fog values to adjust.
Which fog values to adjust. Fog properties may be set in one of two modes: Above Water and Under Water.
: Above water fog is seen when looking down into the water from above its surface.
: Above Water properties affect the appearance of water fog from above the water plane looking down into the water (i.e., shore).
: Underwater fog is seen while under the water surface looking into the distance.
: Under Water properties affect the appearance of water fog while under the water surface looking into the distance.


===Fog Amount===
===Fog Amount===
This scales the overall fog amounts in the water. When looking at the water from above, it is blending between the refractions and the fog colors to determine the final color outcome.
Controls the transparency of the Deep Color water plane. Values range between 0.0 and 1.0. At 0.0, the Deep Color water plane is completely transparent. At 1.0, the Deep Color water plane is fully opaque (no transparency).


===Fog Distance - Near Plane===
===Fog Distance - Near Plane===
The near plane used to determine where the fogging should begin.
Sets the distance in game units below the surface of the water of the Shallow Color water plane. This is where the fog effect will begin. Objects rendered at or before the near plane are rendered at full visibility with no fog effects.


===Fog Distance - Far Plane===
===Fog Distance - Far Plane===
The far plane used to determine where the fogging should end. Everything beyond this value is the full deep water color value.
Sets the distance in game units below the surface of the water of the Deep Color water plane. This is where the fog effect will end. Everything beyond this value is the full Deep color value. Objects rendered at or beyond the far plane are fully obscured by fog effects.


==Depth Properties==
==Depth Properties==
Line 152: Line 170:
= Notes =
= Notes =
* Enabling water damage will disable water splashes.
* Enabling water damage will disable water splashes.
* '''Wind Direction''': Texture is not rotated, but rather the texture coordinates are scrolled based on the 360 degree vector direction. ​What this means is, users have to build any direction of the wave patterns into the height-map if some sort of actual directional movement is desired. (e.g. Users wouldn't want waves built on the Y-axis to scroll along the Y-axis causing the waves to appear to move sideways. Instead users would want them to scroll on the perpendicular X-axis so they appear to be moving forward in 3D space.)
* '''UV Scale''': (original note; may not be accurate) 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 waterTypes that still look different from each other while still using the same height map data.
* '''Noise Falloff''': 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 a solution is found.


[[Category:WorldData]]
[[Category:WorldData]]
[[Category:Object Classes]]
[[Category:Object Classes]]
Anonymous user