Как сделать платформер на Unity #2 | Анимации и слежение камеры
HTML-код
- Опубликовано: 27 сен 2024
- В этом видео мы продолжаем создавать платформер на движке Unity.
Добавим анимации и слежение камеры за игроком.
Скачать пак графики для платформера:
Яндекс. Диск - yadi.sk/d/oDaU...
Гугл Диск - drive.google.c...
Как сделать платформер на Unity #2 | Анимации и слежение камеры
unity, как создать игру, разработка игр, unity уроки, создание игр, unity tutorial, unity 2d, платформер, как сделать игру, unity 3d, unity3d, 2d платформер, юнити, c# уроки, c#, c# unity, 2d, с# unity уроки, как скачать юнити, c# tutorial, cube company, c# unity tutorial, как сделать свою игру, програмирование, visual studio, learn unity c#, c# for unity, как начать создавать игры, c# dersleri, unity 2d tutorial, learning c# for unity, learn c#, learn c# for unity, курс по изучение с# unity, игры, c# tutorial for beginners, создание, геймдев, игра, для начинающих, создание игр unity, game, unity2d, platformer, 2д, как создать, tutorial, анимация, как создать свою игру, создание игр для новичков, как, gamedev, разработка, разработчик игр, обучение, инди игры, программирование, юнити уроки, design, основы, sprites, indie gamedev, геймдизайн, как сделать, unity уроки для начинающих, graphical, создание платформера unity, дизайн, графика, уроки по unity, assets, урок, игровые движки, уроки, персонаж, 2d игра, games, создание 2d игры, гайд, 2d platformer, unity 2d уроки, game dev, how to make game, unity 2d платформер, move, unity 5, код, создание игры, 2d platformer unity, asset store, animation, unity 3d tutorial, game dev для начинающих, спрайты, си шарп, как создать платформер на юнити, castadude, beginner, первая игра, unreal, юнити 3д, создание игр в unity, геймдев с нуля, android, управление в платформере на юнити, brackeys, уроки по юнити, development, develop, создание платформера на юнити, платформер юнити, геймдев с чего начать, как сделать управление на юнити, создание игры на unity, как создать игру на андроид, как сделать платформер, unity2d платформер, tutorials, 2д платформер, artalasky, пиксельарт, заргеймдев, юнити2д, #уроки, для ничинающих, юнити 2д, уроки на русском, unity tutorial 2d, 2d unity, easy, курсы программирования, прыжок, unity создание игр, игра на unity, движение, jump, 2d спрайты, создать игру бесплатно, создание 2d игр, unity платформер уроки, 2d платформер на unity, игровая графика, игровой движёк, как создать игру на unity, уроки unity, упровление в unity, #unity, game design, zargamedev, графика для игр, void, войд, студия, public, паблик, unity 2д платформер, bool, privat, прайвет, вижуал, юнити анимация персонажа, работа с персонажом, animations, flip, как создать 2d платформер, unity, unity3d, android helper, tutorial, programming, c#, game dev, юнити, туториал, движение камеры в unity, движение камеры за персонажем unity 2d, как сделать движение камеры за персонажем в unity, плавное движение камеры unity, camera follow 2d, двигаем камеру за персонажем в юнити, двигаем камеру за игроком в unityпрограммирование, development, разработка игр, animation
Спасибо монтажору за обрезки скриптов просто 10\10
Сарказм?
++, было бы намного удобнее вставлять полный экран в уроках, а не пол экрана, и в не наше поле зрение кликать куда то, либо что то писать
@@imya2288 я могу скинуть готовый скрипт, полностью рабочий
@@Киберволк-ц6ы если можно
@@Киберволк-ц6ы и мне если можно
Почти никого не остается на Ютубе из тех ребят, которые начинали снимать на эту тематику. Держись, главное не бросай **
Ребята код для камеры:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CameraController : MonoBehaviour
{
[SerializeField] private Transform player;
private Vector3 pos;
private void Awake()
{
if (!player)
{
player = FindObjectOfType().transform;
}
}
private void Update()
{
pos = player.position;
pos.z = -10f;
transform.position = Vector3.Lerp(transform.position, pos, Time.deltaTime);
}
}
PS: Скрипт надо прикрепить к камере и дать обьекту тег Player, а то у некоторых Hero не распознает.
Что делать если скрипт не работает? Всё сделал, но место игрока канвас двигается
@@catssteam возможно не туда прикрепили скрипт
Крч: player = FindObjectOfType().transform;
Спасибо братан от души!
все правильно но камера не двигается
Не обижайся, но по твоим видео очень хорошо учиться, ведь ты в некоторых местах так говнокодишь, а в некоторых не рассказываешь что и как, что человек начинает сам искать информацию, и узнает гораздо больше, чем в любом уроке
Это так, я тоже начал изучать Unity. И я тупой был вообще, не понимал, почему так, вроде язык C++ и С# освоил, студентам их програмки решаю, как семечки щелкаю. А оказывается что в Unity надо запоминать все классы, методы и т.д.
Когда несколько раз одно и тоже сделаешь, тогда начинаешь делать все быстрее, а потом уже до такого автоматизма доходит, что вот то что тут показывают в уроках можно за пару минут сделать. И вот я смотрел этот урок и чувствовал себя ничтожеством потому что делаю все аналогично, а ничего не работает. В итоге я за 2 дня только разобрался где я наошибался, зато я хорошо запомнил и смог в дальнейшем с легкостью видеть где фиксить баги. А что касается его кода, не так уж и говнокодит). Можно написать красивее, но в принципе работает же у него все. А для новичков неважно как код написан, с опытом все учаться писать красивее. Это как разговаривать на английском учиться, сначало говоришь как в детском саду, а потом с опытом разговариваешь красиво). Но вот эти обрезания, мне тоже не нравятся если честно, смотришь смотришь, а потом опа, и уже все готово (ну вы там в папочку загляните там файлик появился), а я черт подери куда-то случайно запихнул первую анимацию даже не заметив, и 2 часа думал что не так. Мне то как новичку откуда было знать что в Unity аниматор появляется том месте. Короче бред) Зато, как ты правильно сказал, заставляет разбираться самому))
@@Samurai-yh8og получается видимо зря я сделал всё так как в видео, и не было никаких ошибок 🤔
подскажите как добавить уже созданные анимации?
У меня они есть просто не сохранились в редакторе...
@@Samurai-yh8og
У меня все получилось, хочу объяснить частые ошибки:
1. Камера не работает:
Во-первых, вам нужно создать отдельный скрипт-файл(как Hero), и в нем писать код, который в этом видео. Дальше вы добавляете этот скрипт к Main Camera(чтобы ее было видно в панели с компонентами), потом нажмите маленькую стрелочку, чтобы развернуть и там будет всего два пункта(Script, но его нельзя изменить, и player). В пункте Player нажмите на круг в круге(правее всего) и выберете Hero. Если код у вас, как на видео, то должно сработать.
2. Не работают анимации:
Проверьте, как вы сохранили файлы(большая буква или маленькая, как называется). У меня файлы с большой буквы, поэтому код Hero выглядит так: using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Hero : MonoBehaviour
{
[SerializeField] private float speed = 3f;
[SerializeField] private int lives = 5;
[SerializeField] private float jumpForce = 7f;
private bool isGrounded = false;
private Rigidbody2D rb;
private Animator anim;
private SpriteRenderer sprite;
private States State
{
get { return (States)anim.GetInteger("state"); }
set { anim.SetInteger("state", (int)value); }
}
private void Awake()
{
rb = GetComponent();
anim = GetComponent();
sprite = GetComponentInChildren();
}
private void Run()
{
if (isGrounded) State = States.Run;
Vector3 dir = transform.right * Input.GetAxis("Horizontal");
transform.position = Vector3.MoveTowards(transform.position, transform.position + dir, speed * Time.deltaTime);
sprite.flipX = dir.x < 0.0f;
}
private void FixedUpdate()
{
CheckGround();
}
private void Update()
{
if (isGrounded) State = States.Idle;
if (Input.GetButton("Horizontal"))
Run();
if (isGrounded && Input.GetButtonDown("Jump"))
Jump();
}
private void Jump()
{
rb.AddForce(transform.up * jumpForce, ForceMode2D.Impulse);
}
private void CheckGround()
{
Collider2D[] collider = Physics2D.OverlapCircleAll(transform.position, 0.3f);
isGrounded = collider.Length > 1;
if (!isGrounded) State = States.Jump;
}
}
public enum States
{
Idle,
Run,
Jump
}
Код рабочий можете сверятся
Вот код CameraController:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CameraController : MonoBehaviour
{
[SerializeField] private Transform player;
private Vector3 pos;
private void Awake()
{
if (!player)
player = FindObjectOfType().transform;
}
private void Update()
{
pos = player.position;
pos.z = -10f;
transform.position = Vector3.Lerp(transform.position, pos, Time.deltaTime);
}
}
Оба кода рабочих
Продвиньте в топ, чтобы другим помочь, пожалуйста
@@ВладиславСергеевич-я9я что делать если анимация персонажа Ран работает часто чем Айдл
@@ВладиславСергеевич-я9я можно твой телеграм или дискорд?
Чувак, ты икона
Спасибо
Я же не одна здесь, чтобы сделать игру для защиты проекта?
+
только мне для школьного проекта надо. Можешь подсказать, что делать если работает только анимация покоя?
ХВХВХВХ не думала, что ещё есть такие
@@ma_liberta ... ну я хпэхажахаэха да я лох
Я лабу в универе получил сделать платформер... так что вы не одна)
Видео хорошее, спасибо !!! ))
Только толи я прослушал в каком моменте было сказано, что скрипт - CameraController необходимо было повесить на MainCamera :)), толи и правда не было сказано )), так небольшое дополнение ))
Так это еще и отдельный скрипт я вообще это в первом написал
Я реально такой тупой. Чел не обьясняет, как делать анимацию бега и прыжка, а потом все такие - СПАСИБО, ВСЕ ПАНЯТНО......
Если у кого-то персонаж при прыжке судорожно переключает анимацию падения, то ловите таблэтку: просто создайте отдельно анимацию падения(falling), потом в Animator проведите стрелку от Any State к falling, задайте Equal = 3. Потом в методе, где проверяется находится перс на земле или нет, допишите это: if (rb.velocity.y < 0.0f) State = States.falling; и private bool isFalling = false; (это в начале строки, где мы указываем значения прыжка, скорости передвижения и тд)
Спасибо, мил человек
Держите рабочий скрипт Hero:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Hero : MonoBehaviour
{
[SerializeField] private float speed = 3f; // скорость движения
[SerializeField] private int lives = 5; // скорость движения
[SerializeField] private float jumpForce = 15f; // сила прыжка
private bool isGrounded = false;
private Rigidbody2D rb;
private Animator anim;
private SpriteRenderer sprite;
private States State
{
get { return (States)anim.GetInteger("state"); }
set { anim.SetInteger("state", (int)value); }
}
private void Awake()
{
rb = GetComponent();
anim = GetComponent();
sprite = GetComponentInChildren();
}
private void FixedUpdate()
{
CheckGround();
}
private void Update()
{
if (isGrounded) State = States.idle;
if (Input.GetButton("Horizontal"))
Run();
if (isGrounded && Input.GetButtonDown("Jump"))
Jump();
}
private void Run()
{
if (isGrounded) State = States.run;
Vector3 dir = transform.right * Input.GetAxis("Horizontal");
transform.position = Vector3.MoveTowards(transform.position, transform.position + dir, speed * Time.deltaTime);
sprite.flipX = dir.x < 0.0f;
}
private void Jump()
{
rb.AddForce(transform.up * jumpForce, ForceMode2D.Impulse);
}
private void CheckGround()
{
Collider2D[] collider = Physics2D.OverlapCircleAll(transform.position, 0.3f);
isGrounded = collider.Length > 1;
if (!isGrounded) State = States.jump;
}
}
public enum States
{
idle,
run,
jump
}
Просто лучший
Большое спасибо
НЕ ПРЫГАЕТ ЧЕЛ
У МЕНЯ
@@dota2trainer559 переделай скрипт , проверь нет ли ошибок
Ну так то он не работает: при прыжке анимации прыжка нет, при ходьбе анимации ходьбы нет. И выдаёт ошибку: "параметр "state" не существует"
Альтернатива проверки состояния IsGrounded:
private bool isGrounded = false; // Она уже должна быть создана выше, как в видео
private void OnCollisionStay2D(Collision2D collision)
{
isGrounded = true;
}
private void OnCollisionExit2D(Collision2D collision)
{
isGrounded = false;
}
}
Друг, подскажи вместо чего подставлять твой вариант кода?
Огромное спасибо
Если у кого-то проблемы с анимациями можете попробовать сделать так:
Попробуйте открыть таблицу с Animator’ом и в inspector в Conditions поставить State - Equals - 0. Проделайте тоже самое в run и jump, только в run выставьте Equals 1, а в jump Equals 2.
В скрипте, в “private States State” напишите в скобках State с большой буквы.
Мне помогло
А хотел спросить, если от Any State можно сделать только одну связь, можно что-то сделать?
Я немного переделал код, но у него выглядит так удобно
Хотелось бы так же
Спасибо помогло с анимацией прыжка, думал поседею почему не работало)
какой в жопу кандитиос
СПАСИБООООООООООООООООООО
Заработала анимация!!! State с большой буквы нужно писать!!! Автор видео - косепор!) Из-за его ошибок столько времени теряешь и вообще желание продолжать исчезает! Сцуко!
Над 7 минутами пришлось 2 дня думать ,что исправить. С начало в комментах увидел, что state на State поменять. Ушла ошибка. Потом проблемы с анимацией, она поверх Hero появлялась и на половину ниже. Решено было переделать её заново. И в итоге Получалось ,что я последующие sprite не добавлял к новым анимациям, а сами анимации перетаскивал , а нужно было как бы на спрайт накладывать эти изображения. Может кому помог. Аналогичных вопросов в комментах не обнаружил. Зато за эти 2 дня лучше код начал понимать , а то при написании понимал 30% написанного) Андрей,33 годика.
Огромное спасибо, прям дословно мои проблемы описал, особенно про 2 дня и что касается анимации)) Никитка, 22 годика
Можешь объяснить насчёт анимации? У меня такая же проблема, но я не могу понять, как это исправить.
@@neverm1ndr на данный момент забросил с этим делом и сейчас не смогу вспомнить что и как...
Тоже самое говно. Но я решил что будет проще написать свой код. И получилось норм
Очень нужен ответ что это значит: У меня тоже персонаж вниз уходит его анимация прыжка
Получалось ,что я последующие sprite не добавлял к новым анимациям, а сами анимации перетаскивал , а нужно было как бы на спрайт накладывать эти изображения. Может кому помог.
Если камера не следит за игроком попробуйте в дереве иерархии переместить камеру ниже Hero.У меня так сработало
Привет, отличное видео, но у меня появились баги!
1. Когда я запускаю игру и прыгаю то у меня может 2 прыжка нормальных а потом прыжок в космос и так циклично
2. При добавление анимации, flipX перестал работать (поправочка: починил, в Hero появился Sprite Renderer который мешал)
О, помог с flipX, спасибо)
у меня тоже проблема как у тебя в 1 первом пункте
тоже помог с flipX
за 2 мое уважение
@@samuraikendo5153 не за что
Спасибо за реализацию! Очень интересно, хоть и по гайду, но все же самому делать игру. Как и многих, напрягают немного обрезанные части кода, не понятно, что куда идет. Просто крупный шрифт полного окна вполне читаемо смотрится и с монтажом меньше мороки. Ну и этот тот формат видео, в котором комментаторы позарез нужны, иначе лагов много возникает в процессе!! Тем не менее, спасибо за такой труд!
Почему у меня только анимация покоя показывается а другие не включаются
возможно тебе уже не нужно но думаю другим пригодится: в Animator в parameters нужно создать поле под названием ИМЕННО state
Я создал, проблема не ушла
После добавления анимации, игрок перестал поворачиваться и смотрит только в одну сторону. Что делать???
Решил проблему?
Сделай как ты сделал анимацию для прыжка и бега отдельно
пожалуйста помогите, анимация прыжка работает отлично, но вот анимация idle и run не переключаются между собой, у меня на земле постоянно idle.
Почему когда я написал код он перестал поворачиваться назад когда я добавил анимацию?
У меня тоже после добавления анимации перестал поворачиваться.
Тоже самое, смог исправить?
@@al_re_art8 нашёл решение?
@@ReyKapcher Убери на hero sprite renderer
всё получилось, видосу лайк, переходим к 3-ей части
ТОПП, у всех камера резкая, а ток у тебя, вышла плавная, жалко что ютуб запросил
При активации скрипта camera controller - игра создает невидимые текстурки и перс движется сам по себе(скользя по платформе). Что делать в таком случае?
Ты лучший!
что делать если он у меня пишет огромное количество раз 2 ошибки:
MissingComponentException: There is no 'Animator' attached to the "Circle" game object, but a script is trying to access it.
You probably need to add a Animator to the game object "Circle". Or your script needs to check if the component is attached before using it.
и
'Hero' AnimationEvent has no function name specified!
Альтернатива для камеры из другого проекта (без FindObjectOfType):
using UnityEngine;
public class CameraController : MonoBehaviour
{
[SerializeField] private Transform objTransform;
[SerializeField] private Vector3 offset = new Vector3(0, 0, -10f);
[SerializeField] private float camSpeed = 5f;
private void Update()
{
Vector3 newCamPos = new Vector3(objTransform.position.x, objTransform.position.y, offset.z);
transform.position = Vector3.Lerp(transform.position, newCamPos, camSpeed * Time.deltaTime);
}
}
Скорость камеры можно менять (Cam Speed)
В самом Unity на objTransform перетаскиваем игрока (Hero, родительский объект). Внимательно проверяем offset если камера улетает, он отвечает за расстояние камеры до игрока и у меня он по стандарту по оси Z и равен -10f.
Спасибо тебе огромное!!! помог ппц
не робит
Скиньте полные коды пожалуйста! Я так просто не понимаю.
Анимации не работают,хотя я все сделал по туториалу
+
+
В скрипте Hero в методе States после GetInteger и SetInteger в круглых скобках в кавычках исправьте "state" на "State"
@@lwdream2637 если анимация бега не работает?
@@pishy_kommentu у меня работает все кроме анимации бега и прыжка
Помогите пж
Наконец-то я потратила время не зря
Для тех у кого не работает одна из анимаций подставьте ! знак в строку того что не работает if(!isGrounded) State=States.jump;
Спасибо большое, помог!
Спасибо за видео
Раздвоеный рендеринг и пришлось отключить сам рендеринг спрайта квадрата. + после добавления анимации при старте игры персонаж размытый
Что делать если в Unity 2022 пишет ошибку в скрипте C# что error CS1007: Property accessor already defined?
Хотя я всё делал из этого видео тутора
Жду больше видео, и желаю много просмотров. Не сдавайся **
У меня почему то спрайт постоянно отображается на заднем плане, а так работает все. Как убрать этот спрайт?
Перестал прыгать персонаж и ошибка MissingComponentException: There is no 'Animation' attached to the "Player" game object, but a script is trying to access it. много раз, помогите уже 2 часа сижу разбираюсь
Я ещё в Update() добавил pos.y += 2f; чтоб камера была чуть повыше персонажа.
Он просто любил жизнь!
Подскажи пожалуйста, что делать если создал анимацию и не отображается на экране игры, но при этом в сцене работает. Ещё есть проблема изменяющейся анимации, она то работет то не работает даже в окне сцены и от запуска к запуску по разному, хотя к коду я ещё даже не перешёл
Заранее спасибо
Хорошо и главное просто зделал камеру а то я морочился сложной камерой
Не получается за анимировать прыжок(
Ребят, у кого проблема с тем, что воспроизводится сразу две анимации во время бега и прыжка, то в аниматоре поставьте у анимации прыжка state = 2, а у бега state = 1
непомогло
Ну ты сусанин кодовый даещь жару !!!!
5:20 разве в этом моменте не должно быть написано CameraControler ,а не CameraConroler? я просто не в курсе
4:42 не видно весь код!! Что там написано справа?
нужно снизу кода написать public enum States а не State
Когда я зделал анимацию герой перестал поворачиваться в сторону движения. Кто - нибудь знает в чём проблема?
нажми на Hero и в RigidBody 2D поставь галочку на пункте Freeze Rotation Z
Чётко продолжай
Видос ПУШКА, спасибо большое
А если я сделал свои анимации, но там по 11 20 кадров, я сохранил все в гиф файлах, как я могу их использовать?
В следующий раз без камеры делай вообще, на диктофон запиши и выложи!
кто знает, почему персонаж не прыгает?
Не знаю, поможет это кому или нет, но при проверке анимации у меня была проблема с тем, что они в принципе не запускались(не было ответа на нажатие в animator'e, во время игры). Казалось бы, вроде и ко правильный, и сохранил все с нужной величиной букв. В чем дело?
В аниматора, int "State" был прописан с большой буквы, а в коде - с маленькой("state"). Сравнял и в аниматоре, и в коде = заработало.
ты самый крутой ютубер
Помогите пожалуйста, такая проблема, что при добавлении скрипта с камерой, игра перестаёт запускаться((( В чём может быть проблема?
Ошыбка в скрипту может быть
Я никак не могу сделать эти анимации. При запуске постоянно в консоле пишет: " Parameter 'state' does not exist ". В чём проблема?
Видимо ты не создал параметр для состояния в аниматоре
Или регистр слова "State" отличается в коде и в Unity
как сделать, чтобы персонаж следовал за джойстиком?
у меня все лишь на одной анимации прыжка, другие не показывает. Все как на видео
у кого не работает анимация бега и прыжка пишите с заглавной буквы State в set { anim.SetInteger("State", (int)value); }
spasibo
Спасибо,очень помогло)
Ребят, подскажите пожалуйста, что делать если работает только анимация run
такая же тема, нашел решение?
Кто в курсе посему после добавления анимации спрайт больше не поворачивается по оси Х ?
Та же проблема, хз как фиксить, если разобрался, то подскажи)
Понимаю(
@@youngkarma3761 не разобрались?
@@ReyKapcher так и не смог, все пошло по пятой точки
люди помогите сделал по этому примеру свою игру, но при запуске в юнити у меня карта съезжает т.е у меня фон и блоки отходят от него из за камеры
У меня проблема, анимации не сохраняются в юнити😞
В файлах ини есть а в юнити их нету
как добавлять еще анимации? я сначала сделал анимацию ходьбы но всегда проигрывается анимация ходьбы даже когда персонаж стоит
а у меня наоборот, когда прыгаю или хожу, то анимация idle
У меня такая же проблема
Кто нибудь решил эту проблему?
А как добавить другие анимации?
также как и Idle
кто знает что делать если анимация бега и прыжка не работает плюс камера не следует за персонажем, только анимация idle работает вот все скрипты
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Hero : MonoBehaviour
{
[SerializeField] private float speed = 3f; // скорость движения
[SerializeField] private int lives = 5; // количество жизней
[SerializeField] private float jumpForce = 15f; // сила прыжка
private bool isGrounded = false;
private Rigidbody2D rb;
private Animator anim;
private SpriteRenderer sprite;
private States State
{
get { return (States)anim.GetInteger("state");}
set { anim.SetInteger("state", (int)value);}
}
private void Awake()
{
rb = GetComponent();
anim = GetComponent();
sprite = GetComponentInChildren();
}
private void FixedUpdate()
{
CheckGround();
}
private void Update()
{
if (isGrounded) State = States.idle;
if (Input.GetButton("Horizontal"))
Run();
if (isGrounded && Input.GetButtonDown("Jump"))
Jump();
}
private void Run()
{
if (isGrounded) State = States.run;
Vector3 dir = transform.right * Input.GetAxis("Horizontal");
transform.position = Vector3.MoveTowards(transform.position, transform.position + dir, speed * Time.deltaTime);
sprite.flipX = dir.x < 0.0f;
}
private void Jump()
{
rb.AddForce(transform.up * jumpForce, ForceMode2D.Impulse);
}
private void CheckGround()
{
Collider2D[] collider = Physics2D.OverlapCircleAll(transform.position, 1f);
isGrounded = collider.Length > 1;
if (!isGrounded) State = States.jump;
}
}
public enum States
{
idle,
jump,
run
}
public class CameraController : MonoBehaviour
{
[SerializeField] private Transform player;
private Vector3 pos;
private void Awake()
{
if (!player)
player = FindObjectOfType().transform;
}
private void Update()
{
pos = player.position;
pos.z = -10f;
transform.position = Vector3.Lerp(transform.position, pos, Time.deltaTime);
}
}
У меня тоже это проблема
в скрипте камеры ты не должен был удалять Using system’ы
Когда я сделал анимацию перестал работать Flip
Помогите пожалуйста!
выше ответ
А почему нету момента когда камеру делают у меня с анимациями проблем нет а вот с камерой есть
Доброго дня! Может кто подсказать... Компонент аниматор добавил на ГГ, и в нем видно, что они работают, когда бежишь и прыгаешь, но при этом анимация остается idle. Код кучу раз перепроверил, проблема точно не в нем. Может я как то неправильно в самом аниматоре сделал ( все по видео делал).
У меня так же
Srite Render удали. ВЫше написано же.
Всё сделал как на видео, но бег не работает (
Такая проблема. Анимация криво появляется(в блоках). А хитбокс настроен правильно.
Знаю що позно питаю но чи не знайшов ти рішення проблеми?
У меня проблема. При запуске игры вылетает ошибка:
Animator is not playing an AnimatorController
UnityEngine.Animator:SetInteger(String, Int32)
Получилось исправить
Error:MissingComponentException: There is no 'Animator' attached to the "Hero" game object, but a script is trying to access it.
Тут всё просто: проверь, BoxCollider2D и Rigidbody2D должны находится не в Sprite, а в Hero
Спасибо за урок)
У меня при запуске игры камера опускается вниз , что делать?
а что по скрипту? почему бы не показать его полностью так как не совсем понятно,вернее совсем
Класс
Первый урок был лучше! А тут, после первых 4 минут, хоть стой, хоть плачь... Сразу запутал. Делаю всё тоже, а никакой кнопки нет...
нужно снизу кода написать public enum States а не State
Автор три дня пытался разобраться, что не так, заодно и комментарии читал. И что могу после этих трех дней сказать. К делу ты подошел халатно. И ты не молодец.
ты про это ? : При беге анимация работает только в одну сторону , а при прыжке анимация срабатывает через большое время , не так как на видео
@@nikto_hin897 у меня дублируется персонаж. Если снести рендеринг спрайт, то анимация перестаёт работать. Пробуя различные варианты: пересоздание анимации с нуля и прочее. У меня отвалился прыжок, при том код скрипта на движение, даже не трогал.
Автор, не будь он тем ещё молодцом-мудрецом мог бы выйти из ситуации тремя путями:
1. Написать точный план и записывать одно видео из множества сцен, которые склеиваются с возможностью множества дублей.
2. Прикладывать готовый проект, чтобы люди могли посмотреть, что было сделано так как надо или не надо, а в случае смены "архитектуры" знать, что дело в коде, а не в них.
3. Прикрепить сообщение с решением всех возможных проблем.
Автор не сделал ничего. 350 комментарием, и из них 300 это попытка разобраться почему не работает.
Я английский крайне плохо воспринимаю на слух, но даже почти не понимая языка (и даже не зная код), смотря их видео ты повтопяешь все без единой ошибки и более того, они и проекты прикладывают с анимацией и всех необходимым.
Это смешно. Но изучая юнити полтора месяца и с# шарп 2+ недели, я способен чисто на кальке и благодаря умению выстраивать верную архитектуру, сделать даже сейчас видео лучше автора.
Ирония.
@@Adventures_in_fantasy нихера тебя порвало , у меня тоже дублировались анимации , я точно не помню но я кажись пере заходил и заново вставлял , чесно говоря потерял всё желание учится из за понимания того что весь код нужно понять чтоб исправить , а заново начинать очень не хочу что делать ? как думаешь ? тож англичан попробовать ? ты тупо через субтитры переводишь и берёшь норм корд ?
@@Adventures_in_fantasy хотелось бы иметь возможность написать , челу который тоже учится юнити , спросить совета . или пообсуждать что-то , хотелось бы дать тебе или получить от тебя какой нибуть мессенджер , если ты не против конечно , я глупый и ленивый но почему бы и нет
Заметил, что если прыгнуть в платформу (которая в воздухе), герой может прыгнуть повторно. Видимо проблема в isGrounded = collider.Length > 1
Коллайдеру пофиг сверху ты его касаешься или сбоку или снизу. Все равно сможешь прыгнуть. Если упрешься головой в потолок, тоже сможешь как бы прыгнуть, но по сути по потолку передвигаться на голове.
эта фитча для спидранеров
Сделай пожалуйста видос про то как добавить рекламу
Коммент для продвижения ролика
Вообще полностью не согласен со структурой кода проекта и анимации поворота. Из-за того что в первом видео криво поставили пивот для проверки прыжка сползают все анимации. Не лучше ли было добавить триггер, а коллайдер оставить в покое? Автор слишком много ошибок делает, из которых в дальнейшем выползают неприятные особенности.
Верно подмечено. Когда только начинал учится юнити, учился именно по роликам этого автора. Сейчас понимаю, что наткнувшись на другого автора мог сэкономить и нервные клетки, и время.
@@егорка235 подскажи другого автора)
Норм, но экран зумить идея плохая
А у меня есть вопрос к тебе как опытному
Как мне выучить c# ?
Если ты ответишь буду бесконечно благодарен
И для справки мне 11 лет
Привет. Очень круто, что ты в таком возрасте начал увлекаться программированием. Хоть меня опытным и сложно назвать, но могу тебе рассказать тактику изучения. Подход к изучению зависит прежде всего от тебя самого: можно читать книги, проходить курсы, смотреть гайды и т.д. Единственное, что должно обязательно быть - практика, каждую пройденную тему нужно закреплять каким-нибудь заданием
@@atlassdev2481 я читаю Герберт шилд c# полное руководство
@@atlassdev2481 кстати ты очень хорошо объясняешь , не то что флатинго
@@zakatun9491 мне книги почему-то очень противны, не могу их читать. Но с документацией такой проблемы нет🤔
Помогииииии
А если я нажал Create Animation, случайно выбрал не ту папку, удалил те файлы с анимацией и теперь у меня нету кнопки Create Animation. Пожалуйста помогите!
после добавления анимаций персонаж взлетел
Не работаит камера, а еще почемуто отключился flipX
Помогите пожалуйста, когда открываю Animator, то у меня нечего нету, нет анимаций как показано на видео. Помогите
За видео спасибо, респект как говорится, но судя по комментариям под видео, у меня складывается впечатление что у меня одного на каждом шагу ошибки. Вот самые главные из них:
1. После добавления анимации, в контроллере я сделал все как в видео, дальше скрипты, тоже слегка помучался с синтаксисом, но все обошлось (Только в плане синтаксиса :) ) анимация не работает при управлении и перс начинает просто дрыгаться во все стороны из за того что срабатывает сразу две анимации ("idle" и "run", сам не знаю почему, state поставил = 0 (если что его я поставил в одном экземпляре) все настройки стрелок как в видео, но все равно она не работает и как я говорил перс либо дрыгаться во все стороны либо левитирует над блоками с анимацией "idle").
2. Не поняв в чем проблема я решил ее пока что оставить и перейти к скрипту контроля камеры, опять-таки, писал все буква в букву, но после того как закончил вылезло 999+ предупреждений и 4 ошибки:
1 шт. - "Controller 'Hero': Transition '' in state 'AnyState' uses parameter 'State ' which does not exist in controller.
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)"
3 шт. - "Controller 'Hero': Transition '' in state 'AnyState' uses parameter 'State 0' which does not exist in controller.
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)"
Я далеко не самый умный человек, и я болие чем уверен что я сам где то накасячил, и не знаю сколько кто сидел за эти видосом, но я, к примеру, с этим 7-минутным видео я сижу уже почти 4 часа))) Так что если у кого то есть идеи в чем может быть проблема, буду очень блогадарен их почитать)
А за видос еще раз спасибо!)
Если что версия юнити вот: Unity 2019.4.20f1 Personal
Да кстати в качестве редактора кода использую VSCode
Зайди в Animator. Потом нажми на стрелочку, который идет из Any state к Jump. И поменяй там Preview source state с idle на Run, потом проверь. Если он ходит и другие анимации работает, тогда все хорошо. И еще, если все заработало, то заново зайди в Animator ,потом нажми на стрелочку, который идет из Any state к Jump и там вроде должно поменяться Run на idle. Так что все нормально. unity страшная штука
крч тебе это уже не надо наверное но остальным может быть полезно, может быть что в Animator, Parameter у вас стоит State нужно указать state
Спасибо большое за видео но есть некоторые проблемы с движением персонажа (в некоторых местах он не прыгает) и ещё некоректно работает анимация
У меня так же некорректно работ ает анимация, я думаю просто стоит растянуть её
Тупость написал, толь ко что все сделал и работает, надо просто убрать картинки из анимации, которые проявляются из за создания в анимации спрайта, если проще то просто в анимации убери самую левую и правую карти нку, после чего все оставшиеся картинки сдвинь в начало, с тем же расстоянием между друг другом
У меня одного не появился "Animator" в папке?
+
Смог решить проблему?
@@aura.t3ch Неа. Ничего не помогало.
Понимаю что вряд-ли мне кто-то ответит ибо видео вышло давно , но всеровно спрошу, что делать если на некоторых блоках пресонаж просто не прыгает? Тоесть есть одна платформа из 6 блоков, а на 2 блоках по центру персонаж полностью игнорирует нажатие пробела
У меня такое же было. Я что-то подшаманил над коллайдером персонажа и всё вроде заработало. Попробуй сделать в точности так же, как в прошлом видео. Возможно что-то не так с самим коллайдером. Но я не уверен...
У меня на одном большем коллайдере везде реагирует, кроме края( причем значимого) не понимаю как это работает.
Что можно сделать если прыжок получается то очень низкий то как в космос улетает?
Почему у меня выдает ошибку Assets\Script\CameraController.cs(21,82): error CS1002: ; expected
у тебя где-то не хватает знака ;
@@капустка-р5ф Не мог 3 недели назад ответить?)))
@我叫 Дарик эм это было 5 месяцев назад
Я тебя люблю.
Камера поднимается вверх при запуске игры , что делать ? И ещё ходит камера , а не игрок
здарова! помоги пожалуйста... у меня во время анимации не поворачивается герой + не прыгает изза чекграунда
Ага позицию z то я зафиксировал. Только вот персонаж как пропадал так и пропадает. А если я закомментировываю строчку с фиксацией камеры, то вместе с персонажем начинает пропадать и сцена целиком. Короче где т я накосячил. Ну если найду где опишу свой косяк
хрен пойми в чём был косяк, удалил весь проект переписал с начала, и проблема вроде решилась.