error con el movimiento en unity siguiendo un tutorial
– UnityAssets3Free
hola , por aqui juansito y hoy os traigo
nueva pregunta
estoy tratando de hacer un juego unity usando C# para un curso de desarrollo de juegos. el curso es: https://www.youtube.com/watch?v=b8YUfee_pzc y a las 51:55 ahí es donde estoy teniendo el error. el error es NullReferenceException: Object reference not set to an instance of an object player.FixedUpdate () (at Assets/scripts/player.cs:32)
Revisé y parece ser letra por letra (incluyendo mayúsculas) perfecto, a menos que sea un estúpido. podría deberse a un código obsoleto, algo en unity o simplemente estoy copiando algo mal. De todos modos, aquí está el código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[RequireComponent(typeof(BoxCollider2D))]
public class player : MonoBehaviour
private BoxCollider2D boxCollider;
private RaycastHit2D hit;
private Vector3 moveDelta;
private void start()
boxCollider = GetComponent<BoxCollider2D>();
private void FixedUpdate()
float x = Input.GetAxisRaw("Horizontal");
float y = Input.GetAxisRaw("Vertical");
// reset move delta
moveDelta = new Vector3(x, y, 0);
// swap sprite direction
if(moveDelta.x > 0)
transform.localScale = Vector3.one;
else if (moveDelta.x < 0)
transform.localScale = new Vector3(-1,1,1);
hit = Physics2D.BoxCast(transform.position, boxCollider.size, 0, new Vector2(0, moveDelta.y), Mathf.Abs(moveDelta.y * Time.deltaTime), LayerMask.GetMask("actor", "blocking"));
if (hit.collider == null)
transform.Translate(0, moveDelta.y * Time.deltaTime, 0);
hit = Physics2D.BoxCast(transform.position, boxCollider.size, 0, new Vector2(moveDelta.x, 0), Mathf.Abs(moveDelta.y * Time.deltaTime), LayerMask.GetMask("actor", "blocking"));
if (hit.collider == null)
transform.Translate( moveDelta.x * Time.deltaTime, 0, 0);
```
1 respuesta 1
Encontré un comentario en ese video que funcionó para mí: «cambiar» BoxCollider2D boxCollider privado; «a» BoxCollider2D boxCollider público; «y arrastrar el colisionador de cuadros a la pestaña en el script en su npc»
nota: si aun no se resuelve tu pregunta por favor dejar un comentario y pronto lo podremos de nuevo , muchas gracias
por hoy,hasta la proxima