Jump to content

Search the Community

Showing results for tags 'saltar'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • General
    • Proyectos
    • Offtopic
    • Unity Feeds
    • Website
    • Youtube
  • Mesa de ayuda
    • Unity
    • Arte
    • Builds & Dispositivos
    • Otras Especialidades
  • Aportes de la Comunidad
    • Recursos
    • Eventos
  • Bolsa de trabajo & Colaboraciones
    • Ofertas y Demandas
  • Post Antiguos
    • General (Antiguo)

Blogs

There are no results to display.

There are no results to display.


Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Especialidad

Found 2 results

  1. Hola! Cómo están? Tengo un pequeño problema con un script que hice. Lo único que hace es limitar el ángulo de rotación de la cámara en Y, pero única y exclusivamente al saltar. Funciona genial, pero he notado que al pasar por el 'grado' 0 (ó -0), hace un giro muy extraño y repentino. He exagerado un poco el salto del player para hacer un corto de ejemplo. El cubo verde representa la rotación 0: https://i.gyazo.com/06151e526fa4f9e3e0ecc557eb60abae.mp4 Nótese como el primer salto es correcto, funciona bien. Pero el segundo... al pasar por el 0 (cubo verde) hace un giro extraño al momento de volver a saltar. Lo que acaban de ver en ese vídeo también ocurre si giro en la dirección contraria a las agujas del reloj. El mencionado script está colocado en el player y así es como se lee: if (!controller.isGrounded) { cameraController.Yaw = Mathf.Clamp(cameraController.Yaw, transform.localEulerAngles.y - 20, transform.localEulerAngles.y + 20); } Ese es todo el código que hice al respecto para lograr esa funcionalidad, así que me imagino que es él quien está mal. A mi corto modo de ver, es como que al estar en números positivos y al pasar a negativos (y viceversa), es cuando se vuelve loco. No sé cómo podría solucionarlo y por eso hago este post Muchas gracias por su amabilidad.
  2. Tengo un problema con raycaster, basicamente queria conseguir que el personaje principal, (un conejito), no pudiera saltar hasta que no tocara el suelo , para evitar algo parecido al juego flappy bird donde encadenabas saltos, pero nada, que no lo consigo, y le he dado mil vueltas y no sé que hacer, os dejo el codigo a ver si me podeis echar una mano using System.Collections; using System.Collections.Generic; using UnityEngine; public class playerController:MonoBehaviour { public float jumpForce = 6.0f; public float runningspeed = 1.0f; private Rigidbody2D rigidBody;//para poder acceder al modulo de fisica del conejito public LayerMask groundLayerMask; public Animator animator; void awake () { } // Use this for initialization void Start () { rigidBody = GetComponent<Rigidbody2D> (); animator.SetBool ("isAlive", true); } // Update is called once per frame void Update () { //el es el boton izquierdo,buttondown es apretarlo hacia abajo if (Input.GetMouseButtonDown ()) { Jump (); } animator.SetBool ("isGrounded", IsOnTheFloor ()); } void FixedUpdate(){//se llama a este metodo, cada tiempo fijo, no a cada frame if (rigidBody.velocity.x <runningspeed){ rigidBody.velocity = new Vector2 (runningspeed, rigidBody.velocity.y); } } void Jump() { if (IsOnTheFloor ()) { //Se le aplica la fuerza a un cuerpo rigido, como es un salto, el vector 2(que es el Y, que va para arriba)y up xq es un salto,despues se usa el otro parametro forcemode2d para añadir impulso al salto rigidBody.AddForce (Vector2.up * jumpForce, ForceMode2D.Impulse); } } //sirve para ver si el conejo toca el suelo, lo explico a continuación: //a la física 2D le pido que me lance un rayo(Raycast),Raycast tira un rayo a this.transform.position(Eso es la posición del conejo en ese momento) //hacia el suelo(Vector2.down) de longitud 1.0f y comprueba si toca el SUELO(groundLayerMask) bool IsOnTheFloor(){ if (Physics2D.Raycast(this.transform.position,Vector2.down,1.0f,groundLayerMask.value)){ return true; } else { return false; } } }
UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...