Ejemplo 1: posición lerp unitaria
transform.position = Vector3.Lerp(transform.position, myTargetPosition.position, speed * Time.deltaTime);
Ejemplo 2: vector3.lerp
Vector3.Lerp(startMarker.position, endMarker.position, fractionOfJourney);
//Smoothly transition between 2 locations over time, fractionOfJourney is time instance
Ejemplo 3: unidad lerp
using UnityEngine;
using System.Collections;public class ExampleClass : MonoBehaviour
{
// Transforms to act as start and end markers for the journey.
public Transform startMarker;
public Transform endMarker; // Movement speed in units per second.
public float speed = 1.0F; // Time when the movement started.
private float startTime; // Total distance between the markers.
private float journeyLength; void Start()
{
// Keep a note of the time the movement started.
startTime = Time.time; // Calculate the journey length.
journeyLength = Vector3.Distance(startMarker.position, endMarker.position);
} // Move to the target end position.
void Update()
{
// Distance moved equals elapsed time times speed..
float distCovered = (Time.time - startTime) * speed; // Fraction of journey completed equals current distance divided by total distance.
float fractionOfJourney = distCovered / journeyLength; // Set our position as a fraction of the distance between the markers.
transform.position = Vector3.Lerp(startMarker.position, endMarker.position, fractionOfJourney);
}
}
Ejemplo 4: unidad vector3.Lerp
//public static Vector3 Lerp(Vector3 a, Vector3 b, float t);
Vector3 pos = Vector3.Lerp(a,b,t);
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)