Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Не работает земля в юнити

Матвей Тюряков Ученик (172), на голосовании 5 месяцев назад
Не работает земля в юнити персонаж просто летит вниз

вот код персонажа

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerController : MonoBehaviour
{
[SerializeField] KeyCode keyOne;
[SerializeField] KeyCode keyTwo;
[SerializeField] Vector3 MoveDirection;
private void FixedUpdate()
{
if (Input.GetKey(keyOne))
{
GetComponent<Rigidbody>().velocity += MoveDirection;
}
if (Input.GetKey(keyTwo))
{
GetComponent<Rigidbody>().velocity -= MoveDirection;
}
}
public float speed = 5f; // Скорость игрока

private Rigidbody rb; // Ссылка на компонент Rigidbody

void Start()
{
rb = GetComponent<Rigidbody>(); // Получаем ссылку на Rigidbody
}

// Метод для перемещения игрока
void Update()
{
float horizontalInput = Input.GetAxis("Horizontal"); // Горизонтальное движение

Vector3 movement = new Vector3(horizontalInput, 0, 0); // Создаем вектор движения
movement *= speed * Time.deltaTime; // Умножаем на скорость и время кадра

if (horizontalInput != 0)
{
rb.velocity = movement; // Применяем движение к Rigidbody
}
}
}земля
Голосование за лучший ответ
temka game killer Мыслитель (9099) 6 месяцев назад
А зачем ты это делаешь

private Rigidbody rb; // Ссылка на компонент Rigidbody

Все пcихически здоровые люди создают игровой объект . GameObject

public GameObject MyGameobject;

А потoм в коде получают доступ к компоненту Rigidbody игрового объекта MyGameobject.

MyGameobject.GetComponent<Rigidbody>().position += Vector3.forward;


Потом вешаешь скрипт на игровой объект.



А потом просто из панели Hierachy ДрагАндДропаешь
в поле скомпилированного скрипта.



Скрипт приобретает вот такой вид

temka game killerМыслитель (9099) 6 месяцев назад
Зажимаешь мышкой и тянешь туда. Это называется ДрагАндДропнуть.
temka game killerМыслитель (9099) 6 месяцев назад
DragAndDrop
Матвей ТюряковУченик (172) 6 месяцев назад
у меня 2д игра
Матвей ТюряковУченик (172) 6 месяцев назад
Покажи как это делать пожалуйста я просто в 1 раз делаю игру
temka game killerМыслитель (9099) 6 месяцев назад
Вот я сделал у себя на компьютере без всяких скриптов. Всё работает. Но я не знаю, как передать мой проект на твой компьютер.
temka game killerМыслитель (9099) 6 месяцев назад
Вот скачивай - это моё облако

https://cloud.mail.ru/public/FJh8/AQkF3swFd

Когда скачаешь. Создай новый пустой проект в Unity и нажми
Asset->Import Package->Custom package и выбери скачанный файл. Когда всё нормально скачается и импортируется зайди в папку Scenes и дважды кликни в этой папке по сцене SampleScene/
Матвей ТюряковУченик (172) 6 месяцев назад
Спасибоо
Матвей ТюряковУченик (172) 6 месяцев назад
Выскочила ошибка
temka game killerМыслитель (9099) 6 месяцев назад
Для 2d двухмерных игр нужно использовать BoxCollider2D этот BoxCollider удали и вставь туда BoxCollider2D


temka game killerМыслитель (9099) 6 месяцев назад
И 2d игры не работают с трёх-мерными объектами. А только со спрайтами. Для этого в любой графической программе нужно сделать jpg или png картинку. Я обычно пользуюсь Фотошопом. Импортировать в игру Unity как asset в программе выделить картинку Потом выделить картинку мышкой


и сделать эту картинку спрайтом.

temka game killerМыслитель (9099) 6 месяцев назад
А кроме как ср спрайтами 2d больше ни с чем не работают.

Можно только использовать надписи GUI.Label и GUI.Button
создавать GUI надписи и кнопки можно только в скриптах. Вот и всё.
Матвей ТюряковУченик (172) 5 месяцев назад
Спасиииибо реально спас
Похожие вопросы