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

68
Visualizações
Movimiento FPS de la unidad

Creé un controlador fps de cuerpo rígido con un tutorial de youtube y todo funciona bien, excepto el movimiento diagonal, ya que tiene errores de velocidad x1,4. Así que probé vector3.normalized y vector3.ClampMagnitude pero parece que esta no es una opción para mi solución de controlador de fps ya que la velocidad se vuelve constante e invariable. Codigo original:

 x = Input.GetAxis("Horizontal") * speed * Time.deltaTime; z = Input.GetAxis("Vertical") * speed * Time.deltaTime; Vector3 moveVec = orientation.right * x + orientation.forward * z + Vector3.up * rb.velocity.y; rb.velocity = moveVec;

Así que probé esto

 x = Input.GetAxis("Horizontal") ; z = Input.GetAxis("Vertical"); Vector3 moveVec = Vector3.ClampMagnitude(orientation.right * x + orientation.forward * z + Vector3.up * rb.velocity.y, 1.0f) * speed * Time.deltaTime; rb.velocity = moveVec;

Y funcionó, pero cuando golpeo un objeto y algunos cambios de transformación Y aleatorios, vuelo en el aire mientras rb.velocity también se multiplica en velocidad y deltaTime. ¿Algun consejo?

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

0

Separe su entrada de la velocidad actual y aplique el multiplicador de speed solo a la entrada.

Tenga en cuenta que está tratando con una velocidad que está en Unidad Unidad por segundo. => ¡ No querrás multiplicar por Time.deltaTime aquí!

 x = Input.GetAxis("Horizontal"); z = Input.GetAxis("Vertical"); Vector3 moveVec = Vector3.ClampMagnitude(orientation.right * x + orientation.forward * z, 1.0f) * speed; moveVec += Vector3.up * rb.velocity.y; rb.velocity = moveVec;
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