Primero Movimiento y Salto
Explicación:
- La variable
moveSpeed
controla la velocidad de movimiento del personaje. - La variable
jumpForce
controla la fuerza del salto del personaje. - La variable
rb
es una referencia al componenteRigidbody2D
del objeto que tenga el script. - La variable
isGrounded
es una bandera que indica si el personaje está tocando el suelo. - En el método
Start()
se obtiene la referencia al componenteRigidbody2D
. - En el método
Update()
se obtiene la entrada de teclado horizontal y se utiliza para cambiar la velocidad del componenteRigidbody2D
. También se comprueba si se ha pulsado la tecla de salto y si el personaje está en el suelo para aplicar una fuerza de salto. - En el método
OnCollisionEnter2D()
se comprueba si el personaje ha colisionado con un objeto etiquetado como «Ground» para cambiar el estado deisGrounded
atrue
.
Para utilizar este script, crea un objeto vacío en tu escena de Unity y añade un componente Sprite Renderer
y un componente Rigidbody2D
. Luego, añade el sprite de tu personaje al componente Sprite Renderer
y añade el script PlayerController
al objeto. Asegúrate de etiquetar el suelo con la etiqueta «Ground» para que el personaje pueda saltar correctamente.
Segundo Movimiento simple del personaje
En este código, estamos creando una nueva clase llamada «MovimientoPersonaje» que será la encargada de controlar el movimiento de nuestro personaje.
En la función «Update», estamos obteniendo la entrada horizontal del usuario a través de la función «Input.GetAxisRaw», la cual devuelve un valor de -1 a 1 dependiendo de si el usuario presiona la tecla izquierda o derecha.
Luego, estamos utilizando la función «transform.position» para actualizar la posición de nuestro personaje. Estamos agregando un nuevo vector con el valor de entrada horizontal y multiplicándolo por la velocidad de movimiento y el tiempo transcurrido desde el último fotograma usando «Time.deltaTime».
Recuerda que para que este código funcione, debes tener un collider y un rigidbody en tu personaje y en el objeto al que quieras que se mueva, como se indica en [1]. Además, puedes modificar la velocidad para ajustarla a tus necesidades.
¡Espero que te sea útil!
4 movimiento derecha izquierda y salto sin detectar el suelo
Este código utiliza el componente Rigidbody para mover el personaje. También puedes ajustar la velocidad y la fuerza de salto ajustando los valores de speed y jumpForce.
Para usar este código en tu proyecto, crea un nuevo script C# en la carpeta Scripts de tu proyecto Unity y pégalo. Luego, agrega el script al objeto que deseas mover. En este caso, el objeto sería tu personaje.
Espero que esto te ayude a mover tu personaje en Unity. Si necesitas más ayuda, no dudes en consultar los recursos adicionales que se encuentran en las referencias