wip: HouseOfLeaves & BodiesInWater Blocking
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
#ifndef WATER_INCLUDED
|
||||
#define WATER_INCLUDED
|
||||
|
||||
#include "Assets/_Content/Shaders/Include/Noises.hlsl"
|
||||
|
||||
void Water_float
|
||||
(
|
||||
float3 PositionWS,
|
||||
float3 NormalWS,
|
||||
out float3 Position,
|
||||
out float Height
|
||||
)
|
||||
{
|
||||
float t = _Time.y;
|
||||
|
||||
float depth = length(PositionWS - _WorldSpaceCameraPos.xyz);
|
||||
|
||||
float height = PerlinNoise3D(PositionWS + float3(0, 0, t), .8) * .8;
|
||||
height = dot(height, PerlinNoise3D(PositionWS + float3(t * .2, 0, t * .5), 1.7));
|
||||
height = pow(height, .5);
|
||||
|
||||
// Test
|
||||
|
||||
//float test = ValueNoise3D(PositionWS, 40);
|
||||
//float test = PerlinNoise3D(PositionWS, 40);
|
||||
//float test = PerlinNoise3DLOD(PositionWS, 100, 3.5);
|
||||
//float test = SimplexNoise3D(PositionWS, 40);
|
||||
//float test = WorleyNoise3D(PositionWS, 40, 1);
|
||||
//float id;
|
||||
//float test = VoronoiNoise3D(PositionWS, 10, 1, .05, id);
|
||||
//float test = FBMNoise3D(PositionWS, 10, 2, 2, .5);
|
||||
//float test = RidgedNoise3D(PositionWS, 10, 2, 2, .5);
|
||||
|
||||
// Output
|
||||
|
||||
Position = PositionWS;
|
||||
Position.y += height * .4f - .2;
|
||||
|
||||
Height = height;
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user