public static float2 Float2(float2 v, uint seed) { var hash = new XXHash(seed); return(math.float2( noise.snoise(v + hash.Float2(-1000, 1000, 1)), noise.snoise(v + hash.Float2(-1000, 1000, 2)) )); }
public static float2 Float2Fbm(float2 v, int octave, uint seed) { var hash = new XXHash(seed); return(math.float2( Fbm(v + hash.Float2(-1000, 1000, 1), octave), Fbm(v + hash.Float2(-1000, 1000, 2), octave) )); }
public static quaternion Rotation(float2 v, float3 angles, uint seed) { var hash = new XXHash(seed); angles *= math.float3( noise.snoise(v + hash.Float2(-1000, 1000, 1)), noise.snoise(v + hash.Float2(-1000, 1000, 2)), noise.snoise(v + hash.Float2(-1000, 1000, 3)) ); return(quaternion.EulerZXY(angles)); }
public static quaternion RotationFbm (float2 v, int octave, float3 angles, uint seed) { var hash = new XXHash(seed); angles *= math.float3( Fbm(v + hash.Float2(-1000, 1000, 1), octave), Fbm(v + hash.Float2(-1000, 1000, 2), octave), Fbm(v + hash.Float2(-1000, 1000, 3), octave) ); return(quaternion.EulerZXY(angles)); }