Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

802
Visualizações
Unity3D Cinemachine: ¿cómo puedo fijarme en el estilo Dark Souls de un enemigo?

Estoy trabajando en un pequeño proyecto experimental en Unity y quiero centrarme en un enemigo. Mi cámara se comporta de manera similar a la cámara de Dark Souls, usando la cámara Cinemachine Free Look. Ahora quiero poder hacer clic en un botón y fijarme en el enemigo, de forma similar a cómo funciona la cámara de Dark Souls, que se muestra en este video . También hice una imagen para explicar lo que estoy buscando. Quiero que tanto el jugador como el enemigo estén en el centro vertical de la pantalla mientras están bloqueados, pero quiero que la cámara siga al jugador, básicamente mientras gira alrededor del enemigo.

He intentado agregar tanto al jugador como al enemigo en un grupo objetivo, pero no se comporta como yo quiero. Claro, mira tanto al jugador como al enemigo, pero no los mantiene alineados como he tratado de mostrar en la imagen y el video.

Imagen que describe el objetivo.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Para mí, en el video, parece que la cámara está colocada alrededor de un punto de pivote (verde) que está fijo en el reproductor. Luego, la cámara apunta a la posición media exacta (punto naranja) entre el jugador y el enemigo seleccionado. También parece que hay un ángulo máximo cuando el enemigo salta.

Ilustración

Una prueba rápida de concepto con el código que hice. Sin embargo, el código es realmente solo una prueba de concepto:

simulacro rápido

 public class CameraScript : MonoBehaviour { public Transform enemy; public Transform player; public float cameraSlack; public float cameraDistance; private Vector3 pivotPoint; void Start() { pivotPoint = transform.position; } void Update() { Vector3 current = pivotPoint; Vector3 target = player.transform.position + Vector3.up; pivotPoint = Vector3.MoveTowards(current, target, Vector3.Distance(current, target) * cameraSlack); transform.position = pivotPoint; transform.LookAt((enemy.position + player.position) / 2); transform.position -= transform.forward * cameraDistance; } }
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda