Управление персонажем в Unity 2021
HTML-код
- Опубликовано: 9 янв 2025
- Привет! В этом видео я покажу как сделать управление персонажем для 2.5D игры. Мы добавим персонажа с помощью mixamo и найдем для него анимации бега и idle. Надеюсь видео будет вам полезно!
unity управление персонажем
Парень, да у тебя талант объяснять и с дикцией всё чётко! Respect!
Спасибо!!!!, Спасибо. Никогда, ничего не получалось и тут я нашёл этот тутор, я не могу передать словами эту радость
Спасибо тебе огромное! Я новичок и не особо разбираюсь в юнити, а большинство уроков по созданию чего-либо просто говорят делать что-то, не поясняя зачем, но ты реально объяснил мне всё, спасибо!
Дружище, ты крут! Знай это! Медленно, подробно, доступно и по делу! Thank you!
Мужик ты лучший просто! Благодаря тебе я начал свой большой проект, который я хочу выпустить на платформу по типу стим или вк плей, огромное тебе спасибо! Твоё имя увековечится в игре!
господи...не описать какое ОГРОМНОЕ СПАСИБО!!!! 🤍🤍🤍 все так понятно и доходчиво, для абсолютного новичка просто идеально! лайк, подписка, плюсы в карму))
Спасибо, чувак! Я наклацал какую-то херню, что у меня Input Manager перестал работать, пытался решить эту проблему всеми способами(я тогда не знал в чём проблема) и смотрел кучу видео. А твоё помогло найти поломку. Спасибо, что объяснил как работает управление и Input Manager!
Спасибо, очень хорошо объяснил, особенно про Input Manager
Я не знаю кто ты, но ты лучший)
( inside и little nightmares 2 мои любимые игры)
Рассказываю у кого проблема в том, что человек бежит и всё время возвращается назад. Когда качаете анимацию нужно поставить галочку In Place и всё, проблема решена)
Спасибо тебе большое
У меня вообще анимации не работают
У меня такая же проблема, но такой галочки нет
@@Mr.Super0chek есть на сайте посмотри справа снизу
@@Mr.Super0chek эта галочка на сайте миксамо, прямо перед скачиванием на панельке справа анимации, где параметры
Превосходная серия роликов.
Спасибо за труд.
Бро ты просто топ. Можеш сделать видео про добавлени машины и их управления
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour
{
private Animator animator;
private Rigidbody rigidbody;
public float rotationspeed = 10f;
public float speed = 2f;
void Start()
{
animator = GetComponent();
rigidbody = GetComponent();
}
void Update()
{
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
Vector3 directionVector = new Vector3(v, 0, h);
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(directionVector), Time.deltaTime * 10);
animator.SetFloat("speed", Vector3.ClampMagnitude(directionVector, 1).magnitude);
rigidbody.velocity = Vector3.ClampMagnitude(directionVector, 1) * speed;
}
}
лудший
спс помог очень
у меня почему то Ridigbody не работает, всё перепробовал оно не пашет
Бог мне помог
Герои не Носят Плащи
Вау я думал ты позже начнёшь делать этот курс. Спасибо большое♥️
Мне такое видео сделать не очень сложно, а полезно многим. Спасибо за идею тебе❤
@@Maximple это тебе спасибо за уроки😊
@@Maximple ой я от радости забыл лайк поставить,сразу за unity сел. Ничего щас исправлю👌
@@МинМин-п5ш 😄
@@EvilZommbie если что, для создания игр на Unity обязательно знать C#)
Полезное видео спасибо, жду анимации прижка!
Полность согласен. Очень понятно и круто рассказано👍👍👍
как сделать так что бы когда от первого лица играешь то камера вращалась вместе с персонажем с помощью мыши
немного придерусь, переменные лучше обьявлять снчала, чем в самом методе, rb Velocity можно вынести в метод FixedUpdate, переменные лучше называть конкретней, для именований использовать PascalKeys и camalKeys (для локальных переменных)
Придрался, и то неправильно. Фулл передвижение надо в FixedUpdate
Большое спасибо. Красавчик!!!
А как можно сделать 3д сражение, битву, пускай не очень яркую и красочную, допустим для истории
На моменте скрипта(где ставили скорость и после того пробывали как он ходит, первый раз) жётым снизом parameter speed dont not exit
круто, очень круто, но в проекте вышла ошибка: The type or namespace name 'RigidBody' could not be found (are you missing a using directive or an assembly reference?). Вот код:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class control : MonoBehaviour
{
private Animator anm; //animator
private RigidBody rigidBody;
public float speed = 2f;
// Start is called before the first frame update
void Start()
{
animator -= GetComponent();
rigidBody = GetComponent();
}
// Update is called once per frame
void Update()
{
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
Vector3 dirVector = new Vector3(v, 0, h);
animator.SetFloat("speed", Vector3.ClampMagnitude(dirVector, 1).magnitude);
rigidBody.velocity = Vector3.ClampMagnitude(dirVector, 1) * speed;
}
}
у меня такая же, нашёл решение проблемы?
@@eyeshxrt да, нужно писать не RigidBody, а Rigidbody. Вот так все легко
у меня такая беда, когда хотел проверить скритп, запустил игру, а оно почему-то удалило редибоди и колайдер
Бро, порекомендуй какие-нибудь курсы по шарпу? Нашел itproger, bro code и Сакутина. Какой лучше выбрать? Или книги какие-то купить?
На вб или в каком нибудь книжном магазине покупаешь книгу c# для unity, хорошая книга от автора - Ларкович
Проблема в то что персонаж начинает крутиться на месте после того как немного побегает. Как исправить? Скрипт точь в точь написал
такая же проблема
Очень крутое видео! Благодарю!
а как сделать что бы он бежал по направлению камеры?
ЛУЧШИЙ ГАЙД!!!!!!!!!!!!!!!
Что делать если когда я ставлю в source ставлю своего персонажа у меня выскакивает ошибка и я не могу поменять в animation имя анимации
Очень четко супер, но я дошел только до скрипта и при просмотре игры игрок делает анимированное движение на месте и потом куда-то улетает в верх🤣 и вот что показывает консоль типа предупреждение!
Доступен пакет редактора Visual Studio версии 2.0.11, мы настоятельно рекомендуем вам выполнить обновление из диспетчера пакетов Unity для лучшей интеграции с Visual Studio UnityEngine.Debug: LogWarning (object) Microsoft.Unity.VisualStudio.Editor.VisualStudioIntegration: HandleListRequestCompletion ()
Разве это влияет на такое поведение? КТО ПОДСКАЖЕТ ГДЕ вообще обновить ДО ЭТОЙ ВЕРСИИ!?
Привет! Я тебе сейчас скину комент человека у которого была такая же проблема: Персонаж после запуска взлетает в воздух с первой анимацией. Пока не знаю с чем это связанно, кто знает помогите.
Maximple
Тебе надо убрать галочку с Apply rootmotion и все должно стать ок)
Forever Metal
@Maximple Убрал, персонаж исчезает. Мельком увидел что он вверх перемещается очень быстро.
Maximple
@Forever Metal Тогда я думаю ты в скрипте умножаешь координату Y на speed каждый кадр. Попробуй убрать умножение на speed и если сработает, то в этом проблема.
Ему вроде помогло)
@@Maximple посмотрю оке спс, четкие видосы не останавливайся готов спонсировать канал! И еще а где можно с тобой поговорить или показать скрины если что?!
@@oldborodach Спасибо! Ты можешь со мной связаться через Discord и поддержать канал можно через Donationalerts. Ссылки на Discord и Donationalert у меня в шапке канала если что.
Все же доделал я его, но в чем причина этой ошибки кто подскажет?
Assets \ Scripts \ NinjaController.cs (8,23): предупреждение CS0108: «NinjaController.rigidbody» скрывает унаследованный член «Component.rigidbody». Используйте новое ключевое слово, если предполагалось скрытие.
Как исправить!
@@oldborodach Мне кажется это всего лишь предупреждение, что значит его исправлять нет необходимости. Вроде это значит что тебе нужно поменять название переменно rigidbody на что то еще ( rb, playerRigidbody или на что то похожее)
можешь скинуть ниже ссылку на скрипт где ригидбоди пишется и все это, я просто хз че за переменные и так далее у меня не выходит почему то
Тот же результат,бро. Все в точности по настройкам и написанию скрипта автора, но ни фига не работает.
17:10 Можно просто написать .normalized или что-то такое после вектора
это всё круто, но нужно все ровно учить программирование, какие то базовые закономерности, зависимости, переменные влияния, направления и прочее, функции, либо постоянно скрипты качать готовые, который дядя Вася написал уже когда то ранее, а потом ломать голову чтобы их под себя откорректировать)
привет дружище, хотел бы поинтресоваться, есть возможность ли 2.5 под андроид?Я имею ввиду кнопки добавить ? Просто интересно.
спасибо за видео, все прекрасно работает!
Крутяк
Подскажите мне в чем может быть проблема Я делал всё как в видио но мой персонаж не двигается он ходит во все направления как нужно но нет анимации бега он просто скользит
у меня он тоже скользит но и ходет тоже
Все круто, за исключением того что если мы добавляем механику прыжка, то персонаж очень медленно опускается к земле. Что не очень хорошо для любой игры.. от массы RB это не зависит.. Можно играться с гравитацией, но это тоже не очень хорошо, потом будут вылазить костыли.. Есть какое то решение проблемы падения персонажа при прыжке? Подскажи пожалуйста
Блин а у меня ошибку выдает когда применяешь к анимациям Humanoid и Apply нажимаешь. Модели из Maya, может не так сохранил? Хотя анимации в окошке справа проигрываются.
Привет, в чем проблема? Нажимаю на "W" персонаж идёт, ну потом обратно возвращается(когда анимка проиграла)
не могу создать переменную speed, плюсик не clickable, анимация не смешивается, персонаж просто стоит
как я понял, для новых версий юнити гайд уже не актуален, одна неточность в версии ломает все, а искать эту неточность новичку нереально долго
скачал старую версию, теперь уже плюсик clickable, анимация работает, все хорошо
я так и не понял в чем разница))
Надеюсь автор не забросил канал, если это так, не могли бы подсказать как сделать скрипт хождения для Third Person Controller'а, заранее спасибо)
Лови))
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour
{
private Animator animator;
private Rigidbody rigidbody;
public float speed = 2f;
public float rotationspeed = 10f;
void Start()
{
animator = GetComponent();
rigidbody = GetComponent();
}
void Update()
{
rigidbody.angularVelocity = Vector3.zero;
float horizontal = Input.GetAxisRaw("Horizontal");
float vertical = Input.GetAxisRaw("Vertical");
Vector3 directionVector = new Vector3(horizontal, 0f, vertical).normalized;
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(directionVector), Time.deltaTime * 10);
animator.SetFloat("speed", Vector3.ClampMagnitude(directionVector, 1).magnitude);
rigidbody.velocity = Vector3.ClampMagnitude(directionVector, 1) * speed;
}
}
Почему у меня персонаж ходит в бок? Я не не делал для своего персонажа анимации и не писал в скрипте строчки связанные с анимацией
спасибо! но можешь показать на капсуле?
Здраствуйте! Меня интересует такой вопрос как можно сделать настройки управления персонажем чтобы можно было настраивать клавиши на клавиатуре или на мишке, чтобы можно было в настройках перефирию менять на (джойстик,руль,клавиатура,мышка,руль) по своему и. Т. Д . Подскажите пожайлуста
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Move : MonoBehaviour {
public int speed = 5;
public GameObject Player;//здесь ми указываем персонажа как игровой Object;
void Start()
{
Player = (GameObject)this.gameObject; //тут присваиваем персонажа к игровому Object или как-то так.
}
// Ах да вместо player надо ставить имя твоего перса которое записано в Unity;
void Update()
{
if (Input.GetKey(KeyCode.W))
{
Player.transform.position += Player.transform.forward * speed * Time.deltaTime;
}
if (Input.GetKey(KeyCode.S))
{
Player.transform.position -= Player.transform.forward * speed * Time.deltaTime;
}
if (Input.GetKey(KeyCode.D))
{
Player.transform.position += Player.transform.right * speed * Time.deltaTime;
}
if (Input.GetKey(KeyCode.A))
{
Player.transform.position -= Player.transform.right * speed * Time.deltaTime;//персонаж плавно двигается на W,S,D,A;
} //всё легко и просто, как борщ(всё как Вы и просили)
}
}
Единственное нормальное видео на тему. У всех обрубки, часто ваще неправильные и через заднюю калитку (например без rigidbody)... Чтоб вы понимали, перед этим я пробовал 4 разных урока на тему управления персонажем 3D в unity = ни один не работал как надо, с правильным смешением анимаций ит.д. === Я ОТ АВТОРА В ВОСТОРГЕ!
Спасибо большое за комментарий! Очень приятно слышать❤
@@Maximple совет на будущее от зрителей = не нужно показывать в уроке переписывание 100 раз кода = снимай урок по готовому коду с объяснением куда что и зачем вставил, что натянул и как оно работает пошагово
я кста уже норм продвинулся ))) в голове появился каркас как оно все работает в игре
сейчас перехожу к врагам, атакам, смертям и патрулированию платформ и т.п. (в рамках одной сцены) ==== будет что-то непонятно, напишу вопросы
частицы, респавны, смена сцен, катсцены, главное меню, донаты, Admob, работа с Google play и т.п. === пока еще темный лес )))) хочу сделать тело игры и поднять все эстетики механик и оформления
... делать все в одиночку долго = программирую скрипты пока левой ногой, рисую в 3D через жопу и т.д.
@@casinoanime8520 Спасибо за совет) Я с тобой согласен это бы и вправду сократило видео.
@@Maximple дело не в том чтобы видео короче ))) зрители сидят с ручками, ставят урок на паузу и переписывают в тетрадки скрипты.... а потом правят написанное....
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(directionVector), Time.deltaTime * 10);
if(directionVector.magnitude > Mathf.Abs(0.1f))
Все ровно разворачивается при полной остановке
Привет! Тебе надо написать:
if(directionVector.magnitude > Mathf.Abs(0.1f)){
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(directionVector), Time.deltaTime * 10);
}
Это строка значит что если наша длина вектора движения (которая зависит от того нажимаем ли мы на клавиши движения) больше чем 0.1 - что просто маленькая величина вектора, то мы хотим поворачивать персонажа в направлении этого вектора (в направление движения). По логике должно работать) Скопируй и вставь как я написал выше👍 Напиши если получится/ не получится
Нет не помогло
@@funtazygg Тогда скопируй мне весь скрипт и я постараюсь сказать что не так (если хочешь)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour
{
private Animator animator;
private Rigidbody rigidbody;
public float rotationspeed = 10f;
public float speed = 2f;
// Start is called before the first frame update
void Start()
{
animator = GetComponent();
rigidbody = GetComponent();
}
// Update is called once per frame
void Update()
{
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
Vector3 directionVector = new Vector3(-v, 0, h);
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(directionVector), Time.deltaTime * 15);
if (directionVector.magnitude > Mathf.Abs(0.1f))
{
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(directionVector), Time.deltaTime * 15);
}
animator.SetFloat("speed", Vector3.ClampMagnitude(directionVector, 1).magnitude);
rigidbody.velocity = Vector3.ClampMagnitude(directionVector,1) * speed;
}
}
@@funtazygg Я нашел ошибку) Над if (directionVector.magnitude > Mathf.Abs(0.1f)) удали transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(directionVector), Time.deltaTime * 15);
У тебя просто эта строка написана до и в if, а должна была быть только в if👍
подскажите пожалуйста, я прописываю в скрипе speed 5;, и ничего не меняется, он все такой же медленный
У меня нету вкладки Project Settings, да и в целом никаких вкладок, кроме Inspector, когда выделяю скрипт Player_Controller
Ура вышел наконец
Хотел бы задать вопрос:
После установки управления, как показано в видео, можно ли потом его перестроить под джойстик для телефона?
Да
Подскажите пожалуйста, код один и тот же. Но, если я нажимаю кнопки для поворота, работает только один раз, а когда хочу пойти вперед, поворачивается в другую сторону и только тогда он идёт
я лично рекомендую фбкс для юнити выбирать.
А можно написать код через другое приложение?
Помогите пожалуйста после написания скрипта появляется ошибка All compiler errors have to be fixed before you canister playmode!
исправь все ошибки
У меня персонаж не двигается, не увеличивается, нельзя менять capsule collider.
А ещё не отображается extract collider и extract material
А ещё когда ему закидываю текстурку, то при запуске игры он исчезает.
помогите пожалуйста, сделала все так же, но когда персонаж останавливается, начинает крутиться
А почему у меня персонаж летает? Все правильно сделал вродьбы
Проблема: персонажа постоянно разворачивает в изначальную позицию вдоль оси y. Долго тыкал в настройки idle анимации но так и не нашел в чем дело
заморозь поворот по Y
@@ilya_rusin да, я уже в unreal перешёл, кстати, офигенный движок.
@maycksel_official Так готовое это лучше. Лично меня в юньке бесят под каждые проекты писать контроллеров
а как повесить камеру сзади , если просто ее кинуть на объект , то это выглядит каряво и кнопки...
исходник:
using UnityEngine;
public class Moved : MonoBehaviour
{
private Animator animator;
public float speedFPS=2f;
public float RotationSpeed=10f;
private Rigidbody rb;
// Start is called before the first frame update
void Awake() {
rb=GetComponent();
animator=GetComponent();
}
void Movment(){
float h=Input.GetAxis("Horizontal");
float v=Input.GetAxis("Vertical");
Vector3 move=new Vector3(h,0,v);
if(move.magnitude>Mathf.Abs(0.05f))
transform.rotation=Quaternion.Lerp(transform.rotation,Quaternion.LookRotation(move),RotationSpeed*Time.deltaTime);
animator.SetFloat("Speed",Vector3.ClampMagnitude(move,1).magnitude);
rb.velocity=Vector3.ClampMagnitude(move,1)*speedFPS;
}
// Update is called once per frame
void Update()
{
Movment();
}
}
Привет. Ролик классный, но в процессе создания все равно столкнулся с проблемой, что анимация с перемещением нормально не работает
у меня тоже фигня, анимация есть. А движения нету
всем привет , возникла проблема при добавление анимации стойки не запускается анимация бега как это исправить
А как сделать чтобы когда идёшь в бок была другая анимация
у меня проблема помогите где анимации когда они гуманойд все нормально но ставлю персонажа на аватар то гуманойд меняется на генетик
че делать если при открытие скрипта выходит пустота в visual studio. то есть никого кода нету
что делать если нажимаю на скрипт 2 раза у меня нужно открыть его где то, где его открывать?
@Maximple Здравствуйте, а как сделать так чтобы когда шёл назад скорость был ограниченным?
У меня не производится анимация бега, что делать?
персонаж начинает лететь вверх, а если заморозить ось Y, то после пары шагов останавливается и может только крутиться, что делать? P.S. вот код
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour
{
private Animator animator;
private Rigidbody rigidbody;
public float rotationspeed = 10f;
public float speed = 2f;
// Start is called before the first frame update
void Start()
{
animator = GetComponent();
rigidbody = GetComponent();
}
// Update is called once per frame
void Update()
{
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
Vector3 directionVector = new Vector3(h, 0, v);
if (directionVector.magnitude > Mathf.Abs(0.1f))
{
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(directionVector), Time.deltaTime * 15);
}
animator.SetFloat("speed", Vector3.ClampMagnitude(directionVector, 1).magnitude);
rigidbody.velocity = Vector3.ClampMagnitude(directionVector,1) * speed;
}
}
и как исправил?
Привет, подскажи пожалуйста почему камера стоит на месте, а не двигается за игроком?
надо перетащить камеру в игрока
Почему в один момент в видео вдруг всё стало совершено непонятно
Какой смысл оборачивать константное значение в abs? Оно ж и так константное. Или 0.1 может резко стать -0.1?
Это я ошибся, смысла оборачивать константное число в Mathf.Abs нету :)
Не могу поставить скрипт на персонажа выдаёт чтото типа нету сценария или не сходятся названия что далать?
ребят я новикий в unity , я установил последнию версию но когда даю на компонетны уменя нету RigidBody что делать где эго найти скожите поижалуйста
спасибо помог!!!
интересно, почему уже второе видео по списку не показывает как делать управление мышкой?)) а показывает вообще какие то там анимации, хотя в названии видео - управление)
@ali gad видимо у тебя аутизм, раз такие вопросы задаешь))
@ali gad по моему в моем вопросе уже есть ответ. К тому же ты конечно вовремя пишешь, я писал это 3 месяца назад. В вопросе что я написал? Где управление, если автор показывает только анимации. Есть разница между управлением и анимациями? Тебе самому интересно это? Писать ответ комменту который написали 3 месяца назад? Мне кажется моя реакция как раз самая подходящая была. В данном случае.
2:36 о какой Вале идёт речь?))
Помогите пожалуйста, персонаж ходит боком почему-то (( как объяснить Unity где у него перед?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class movement : MonoBehaviour
{
private Rigidbody rb;
public float speed = 2f;
public float rotationSpeed = 10f;
void Start ()
{
rb = GetComponent();
}
void Update ()
{
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
Vector3 directionVector = new Vector3(v, 0, -h);
if (directionVector.magnitude > Mathf.Abs(0.1f))
{
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(directionVector), Time.deltaTime * rotationSpeed);
}
rb.velocity = Vector3.ClampMagnitude(directionVector,1) * speed;
}
}
разобрался, модель в Blender повернул и забыл применить)
У меня проблема....
если я напишу rigidbody GetComponent();, то мне выдаст ошибку, что двуточие не нужно, а когда уберу его, то будет ошибка, и скажут, что оно нужно.
а равно ?
Люди, помогите пожалуйста. У меня почему-то не запускается эта игра (ну в этом месте где сама игра делается). Просто я впервые игру делаю на Юнити. Ответьте почему так пожалуйста!
большое спасибо жду с прыжком
Слушай, а что если extract texture нельзя нажать?
как сделать что бы он бегал на месте
Остановка слишком резкая нужен плавный переход
я не знаю почему,но он не меняет анимацию на бег и не поворачивается(он передвигается)
Нашёл в чём ошибка? У меня сейчас тоже самое
Сам без понятия,вроде все правильно делал,перепроверил 2 раза и все ещё эта проблема
@@matrrroskinstudio Ошибка была в том, что у автора "speed" написано с маленькой буквы. Попробуй написать с большой в:
animator.SetFloat("Speed", Vector3.ClampMagnitude(directionVector,1).magnitude);
Сработать должно
С помощью чего открывать папку контроль персонажа?
Ты решил эту проблему? Если да, то подскажи пожалуйста как решить
Кайф!!!
как же ты хорош
Ну, что?! Эмм. Ты просто супер!!
а что делать если аватар не выбран помоги пж я не могу его выбрать
У меня всегда выскакивает ошибка когда я пытаюсь положить скрипт на объект и мне очень обидно 😢
Проверь что совпадают названия скрипта и класса внутри скрипта. Например public class PlayerController: MonoBehaviour, значит скрипт должен называтся PlayerController
@@Maximple Я проверял все совпадает. Вероятно я неправильно написал скрипт :(
Залетай на мой канал, там выходят уроки по Юнити для начинающих
@@mityasha11 гляну
Почему у меня пишется Please sign in to download
Спасибо за видео! А что делать если при соприкосновении с другими объектами мой персонаж начинает кружится на месте? ( прямо как в интерстеллар) )
Привет, я вроде в следующем видео по этой серии это исправлял. Если нет, то просто напиши у себя в Update следующее:
rigidbody.angularVelocity = Vector3.zero;
я только не помню назвал ли я свою переменную rigidbody в том скрипте
@@Maximple Спасибо большое, помогло! Только теперь, когда я соприкасаюсь с объектом и не прекращаю движение Камера трясётся. А если сделать управление камерой с помощью мышки, это пройдёт?
привет! что делать, персонаж ходит, поворачивает но не проигрываются анимации. вот код
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour
{
private Animator animator;
private Rigidbody rigidbody;
public float rotationspeed = 10f;
public float speed = 2f;
void Start()
{
animator = GetComponent();
rigidbody = GetComponent();
}
void Update()
{
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
Vector3 directionVector = new Vector3(h, 0, v);
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(directionVector), Time.deltaTime * 10);
animator.SetFloat("speed", Vector3.ClampMagnitude(directionVector, 1).magnitude);
rigidbody.velocity = Vector3.ClampMagnitude(directionVector, 1) * speed;
}
}
Проверь что у тебя в Animator есть параметр с названием "speed" - не "Speed" или не "Speeed". Проверь что все правильно написано
@@Maximple привет, спасибо что ответил. Проверил, стоит speed но ошибка все ещё есть
Проверь что speed у тебя стоит как параметр типа float, и что на объекте на котором у тебя висит этот скрипт есть компонент аниматор
@@Maximple а компонент в коде или надо в инспекторе добавить?
Привет я не понемаю все делаю как на видео но он стоит и нечего не делает
Спасибо но еще можешь сказать почему у меня персонаж только разварачиваеться на 180 пожалуйста заметь
слишком сложно для меня 😅 хотел игры создавать 🤣
ИНОПРИШЕЛЕНЕЦ!!!11!!1! :0
Что делать если он двигается, но анимация бега не работает, Тоесть он бегает в анимации Idle
У меня было также. Пока несколько раз не пересмотрела видео. Смотри видео на начале, когда он про аниматор рассказывает. Проверь все ли у тебя совпадает.
@ali gad с аниматором настройки не так поставила и оно не работало