Open EloiStree opened 4 weeks ago
🤖
// Move along the X axis (local)
transform.Translate(Vector3.right * moveSpeed * Time.deltaTime);
// Move along the Y axis (local)
transform.Translate(Vector3.up * moveSpeed * Time.deltaTime);
// Move along the Z axis (local)
transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime);
// Move along the global X axis
transform.Translate(Vector3.right * moveSpeed * Time.deltaTime, Space.World);
// Move along the global Y axis
transform.Translate(Vector3.up * moveSpeed * Time.deltaTime, Space.World);
// Move along the global Z axis
transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime, Space.World);
// Set position to specific coordinates
transform.position = new Vector3(10, 5, 0);
// Set position to match another object's position
transform.position = targetObject.transform.position;
// Move towards a target position at a constant speed
transform.position = Vector3.MoveTowards(transform.position, targetPosition, moveSpeed * Time.deltaTime);
// Smoothly move to the target position using Lerp
transform.position = Vector3.Lerp(transform.position, targetPosition, moveSpeed * Time.deltaTime);
// Apply force to move a Rigidbody
rigidbody.AddForce(Vector3.forward * forceAmount);
// Set velocity directly
rigidbody.velocity = new Vector3(0, 0, moveSpeed);
// Move forward relative to the camera's forward direction
transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime, Camera.main.transform);
// Move left relative to another object's right direction
transform.Translate(Vector3.left * moveSpeed * Time.deltaTime, targetObject.transform);
// Move along a predefined path or set of points
for (int i = 0; i < path.Length - 1; i++) {
transform.position = Vector3.MoveTowards(transform.position, path[i + 1], moveSpeed * Time.deltaTime);
}
// Move object around a pivot point
transform.RotateAround(pivotPoint, Vector3.up, orbitSpeed * Time.deltaTime);
// Clamp position to stay within defined bounds
transform.position = new Vector3(
Mathf.Clamp(transform.position.x, minX, maxX),
Mathf.Clamp(transform.position.y, minY, maxY),
Mathf.Clamp(transform.position.z, minZ, maxZ)
);
// Set the destination of the NavMeshAgent
navMeshAgent.SetDestination(targetPosition);
// Instantly move object to a new position
transform.position = new Vector3(50, 10, -20);
// Coroutine to move object over time
IEnumerator MoveOverTime(Vector3 targetPosition, float duration) {
Vector3 startPosition = transform.position;
float elapsedTime = 0;
while (elapsedTime < duration) {
transform.position = Vector3.Lerp(startPosition, targetPosition, elapsedTime / duration);
elapsedTime += Time.deltaTime;
yield return null;
}
transform.position = targetPosition;
}
// Move forward in the direction the object is facing
transform.position += transform.forward * moveSpeed * Time.deltaTime;
// Move backward in the direction the object is facing
transform.position += transform.forward * -moveSpeed * Time.deltaTime;
// Move right in the direction the object is facing
transform.position += transform.right * moveSpeed * Time.deltaTime;
// Move left in the direction the object is facing
transform.position += transform.right * -moveSpeed * Time.deltaTime;
// Move using CharacterController (good for player-controlled characters)
CharacterController controller = GetComponent<CharacterController>();
Vector3 move = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
controller.Move(move * moveSpeed * Time.deltaTime);
// Basic movement with arrow keys or WASD
float moveX = Input.GetAxis("Horizontal") * moveSpeed * Time.deltaTime;
float moveZ = Input.GetAxis("Vertical") * moveSpeed * Time.deltaTime;
transform.Translate(new Vector3(moveX, 0, moveZ));