コード例 #1
0
        public static float2 Float2(float3 v, uint seed)
        {
            var hash = new XXHash(seed);

            return(math.float2(
                       noise.snoise(v + hash.Float3(-1000, 1000, 1)),
                       noise.snoise(v + hash.Float3(-1000, 1000, 2))
                       ));
        }
コード例 #2
0
        public static float2 Float2Fbm(float3 v, int octave, uint seed)
        {
            var hash = new XXHash(seed);

            return(math.float2(
                       Fbm(v + hash.Float3(-1000, 1000, 1), octave),
                       Fbm(v + hash.Float3(-1000, 1000, 2), octave)
                       ));
        }
コード例 #3
0
        public static quaternion Rotation(float3 v, float3 angles, uint seed)
        {
            var hash = new XXHash(seed);

            angles *= math.float3(
                noise.snoise(v + hash.Float3(-1000, 1000, 1)),
                noise.snoise(v + hash.Float3(-1000, 1000, 2)),
                noise.snoise(v + hash.Float3(-1000, 1000, 3))
                );
            return(quaternion.EulerZXY(angles));
        }
コード例 #4
0
        public static quaternion RotationFbm
            (float3 v, int octave, float3 angles, uint seed)
        {
            var hash = new XXHash(seed);

            angles *= math.float3(
                Fbm(v + hash.Float3(-1000, 1000, 1), octave),
                Fbm(v + hash.Float3(-1000, 1000, 2), octave),
                Fbm(v + hash.Float3(-1000, 1000, 3), octave)
                );
            return(quaternion.EulerZXY(angles));
        }