Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

190
Views
La cámara de Unity sigue el guión del jugador

Soy bastante nuevo en Unity. Traté de crear un guión en el que la cámara siguiera al actor (con una pequeña diferencia). ¿Hay alguna manera de mejorar el código? Funciona bien. Pero me pregunto si lo hice de la mejor manera. Quiero hacerlo como escribí, así que si tienes algún consejo. Gracias

¿Quizás cambiar Update a FixedUpdate ?

 public GameObject player; // Start is called before the first frame update void Start() { player = GameObject.Find("Cube"); // The player } // Update is called once per frame void Update() { transform.position = new Vector3(player.transform.position.x, player.transform.position.y + 5, player.transform.position.z - 10); }
over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Hacer que la cámara siga al jugador es bastante sencillo.

Agregue este script a su cámara principal. Arrastre la referencia del objeto del reproductor al script y ya está.

Puede cambiar los valores en el Vector 3 dependiendo de qué tan lejos quiera que esté la cámara del jugador.

 using UnityEngine; public class Follow_player : MonoBehaviour { public Transform player; // Update is called once per frame void Update () { transform.position = player.transform.position + new Vector3(0, 1, -5); } }
over 4 years ago · Santiago Trujillo Report

0

Esto siempre seguirá al jugador desde la misma dirección, y si el jugador gira, seguirá siendo el mismo. Esto puede ser bueno para la vista de arriba hacia abajo o de desplazamiento lateral, pero la configuración de la cámara parece ser más adecuada para la tercera persona, en cuyo caso querrás girar la cámara cuando el jugador gire.

La forma más fácil de hacer esto es no solo con código, simplemente haga que la cámara sea un elemento secundario del objeto del jugador, de esa manera su posición relativa al jugador siempre será la misma.

Si desea hacerlo a través del código, puede cambiar el código para que sea así:

 void Update() { Vector3 back = -player.transform.forward; back.y = 0.5f; // this determines how high. Increase for higher view angle. transform.position = player.transform.position - back * distance; transform.forward = player.transform.position - transform.position; }

Obtienes la dirección de la parte posterior del jugador (opuesta al forward de transform ). Luego aumenta un poco la altura para que el ángulo sea un poco desde arriba como en su ejemplo. Por último, configura la posición de la cámara para que sea la posición del jugador y agrega la dirección hacia atrás multiplicada por la distancia. Eso colocará la cámara detrás del jugador.

También debe girar la cámara para que apunte al jugador, y esa es la última línea: configurar la dirección de forward de la cámara para que apunte al jugador.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!