コード例 #1
0
    // This static method will move the transform down to the surface of the terrain
    public static void SnapTransformPosition(SgtTerrain terrain, Transform transform, float offset = 0.0f)
    {
        if (terrain != null && transform != null)
        {
            var oldPosition = transform.position;
            var newPosition = terrain.GetSurfacePositionWorld(oldPosition, offset);

            if (oldPosition != newPosition)
            {
                transform.position = newPosition;
            }
        }
    }
コード例 #2
0
    // This static method will move the transform down to the surface of the terrain
    public static void SnapTransformPosition(SgtTerrain terrain, Transform transform, float offset = 0.0f, float dampening = 0.0f)
    {
        if (terrain != null && transform != null)
        {
            var oldPosition = transform.position;
            var newPosition = terrain.GetSurfacePositionWorld(oldPosition, offset);

            if (oldPosition != newPosition)
            {
                if (dampening > 0.0f)
                {
                    transform.position = SgtHelper.Dampen3(transform.position, newPosition, dampening, Time.deltaTime);
                }
                else
                {
                    transform.position = newPosition;
                }
            }
        }
    }
コード例 #3
0
    // This static method will move the transform down to the surface of the terrain
    public static void SnapTransformPosition(SgtTerrain terrain, Transform transform, float offset = 0.0f, float dampening = 0.0f)
    {
        if (terrain != null && transform != null)
        {
            var oldPosition = transform.position;
            var newPosition = terrain.GetSurfacePositionWorld(oldPosition, offset);

            if (oldPosition != newPosition)
            {
                if (dampening > 0.0f)
                {
                    transform.position = SgtHelper.Dampen3(transform.position, newPosition, dampening, Time.deltaTime);
                }
                else
                {
                    transform.position = newPosition;
                }
            }
        }
    }