Доброго времени суток, решил на выходных начать работать с Unity. Познания C# сравнительно низкие. Для начала решил сделать 2д платформер, кажеться что это легче всего.
код
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class player_controls : MonoBehaviour
{
Rigidbody2D rb;
Animator anim;
public float speed = 6f;
void Start()
{
rb = GetComponent<Rigidbody2D>();
}
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.UpArrow))
{
jump();
}
if (Input.GetAxis("Horizontal") == 0)
{
anim.SetInteger("animation", 1);
}
else
{
FlipHero();
anim.SetInteger("animation", 2);
}
}
void FlipHero()
{
if (Input.GetAxis("Horizontal") < 0)
{
transform.localRotation = Quaternion.Euler(0, 180, 0);
} else
{
transform.localRotation = Quaternion.Euler(0, 0, 0);
}
}
void FixedUpdate()
{
rb.velocity = new Vector2(Input.GetAxis("Horizontal") * speed, rb.velocity.y);
}
void jump()
{
rb.AddForce(transform.up * 12f, ForceMode2D.Impulse);
}
}
И сама ошибка: NullReferenceException: Object reference not set to an instance of an object
player_controls.Update () (at Assets/scripts/player_controls.cs:25)
Гугл, гуглил и похожие вопросы смотрел, не особо помогло.
Тут как раз и анимация не работает... Как быть, прошу описать доступным языком.)