Heroes_of_Hiis/Assets/Polaris - Low Poly Ecosystem/Poseidon - Low Poly Water S.../Runtime/Shaders/CGIncludes/PMeshNoise.cginc

24 lines
706 B
HLSL

#ifndef PMESHNOISE_INCLUDED
#define PMESHNOISE_INCLUDED
#include "PUniforms.cginc"
#include "PCommon.cginc"
void ApplyMeshNoise(half amount, half noiseFrequency, inout float4 localPos)
{
float4 worldPos = mul(unity_ObjectToWorld, localPos);
half offsetX = NoiseTexVert(worldPos.xz/noiseFrequency)*amount* _PoseidonSineTime;
half offsetZ = NoiseTexVert(-worldPos.xz/noiseFrequency)*amount* _PoseidonSineTime;
worldPos += float4(offsetX, 0, offsetZ, 0);
localPos = mul(unity_WorldToObject, worldPos);
}
void ApplyMeshNoise(inout float4 v0, inout float4 v1, inout float4 v2)
{
ApplyMeshNoise(_MeshNoise, 100, v0);
ApplyMeshNoise(_MeshNoise, 100, v1);
ApplyMeshNoise(_MeshNoise, 100, v2);
}
#endif