Переход анимации персонажа - Unity легко
ฝัง
- เผยแพร่เมื่อ 28 ก.ย. 2024
- В этом уроке я покажу как использовать анимацию персонажа, и как делать переход анимации покоя(idle), бега(run) и прыжка(jump) в Unity. Так же разберемся с работой animator и привязкой анимации к клавишам.
• 2D прыжок / двойной пр... - урок по движению персонажа
• Как сделать движение к... - урок по движению камеры
Номер карты для поддержки - 4149629398195479
/ graphicaldesignua - мой патреон для поддержки)
t.me/joinchat/... - телеграм канал в котором можете пообщаться с другими разработчиками.
Талант в том чтобы объяснить простыми словами не простые вещи новичкам. Тут все просто и понятно, без накрученных понтов. Отличная работа!
Один из лучших каналов по Юнити, продолжай дальше, уроки очень полезные!
Редко оставляю комментарии, но здесь не смог пройти мимо. Очень хорошо и качественно объясняешь, без какой-то спешки и т.д. Просто красавец ;)
Блин мужик, реально хороший урок. А главное что всё простым языком и предельно понятно.
Спасибо,хороший ролик.У меня конечно были проблемы но я их сам решил.Спасибо за такой чудесный видео урок.
Если проблема с || скажи пж как
Замечательный урок. Все понятно и даже разные варианты показаны.
Отличный, подробный и интересный урок!
Толково объяснил Has Exit Time, спасибо!
Ну вот! Нашел наконец то! Все разложил по полочкам и в общем хороший урок. Успехов тебе!
Большое спасибо! Сначало не работало, тк у меня AWSD раскладка, заменил в скрипте Arrow на A, D. Потом заработало!
Наконец то получилось )))). Благодарю! Буду юзать данный канал, все более чем понятно.
надо бы еще поработать над синхронизацией видео и звука. Как-то дискомфортно смотреть видео в некоторых местах. А так урок довльно позновательный
да все отлично но у меня проблема я сделал все точ в точ а скрипт выдает ошибку в строке anim.SetBool("IsRunning", false); при запуске игры
Спасибо дружище, помог, хороший гайд
Красавчик, просто , уверенно, красиво, вообще молодец!!!
Я ломал голову над проблемой в реализации анимации моба полтора дня, тут я на натыкаюсь Ваш ролик, и вуаля - проблема решена! Большое спасибо! Плюс один подписчик)
Спасибо )) Очень полезно.
Спасибо, лучший, лайк и подписка
Мне вот интересно что за wудилы ставят под такими видео уроками дизлайки.
Парень старается , делиться информацией а они неблагодарные ... Мне лично очень много видосов твоих понравились. Спасибо за проделанную работу.
дизлайки ставят в ютубе, чтобы убрать видео из рекомендованных, а не потому что не нравится
Лучше использовать в беге числовое значение (float), как автор сделал в одном своём старом видео. Хотя условия bool будут в большинстве случаев всё же легче и эффективнее. 🙂
А почему лучше числовое?
Если у вас не работает, то поменяйте lefr I right arrow на A И D
Я вообще использую оси (Input.GetButton("Horizontal"));
СПАСИБО ОГРОМНОЕ
Спасибо
Не помогло!!что делать??
@@ingame8758 я писал этот коммент почти год назад
Голос как из ТВ. Спасиб за гайд
Очень помог. Спасибо
А как сделать так чтобы при столкновении бомбы или какого то объекта с персонажем чтобы проигрывалась какая то анимация? Сделай пожалуйста туториал так как не могу найти в интернете подобные уроки
спасибо, все просто и понятно
А что делать если не читает слово "SetBool"
Условие на 17 строчке не нужно, оно возвращает true или false, поэтому его можно сразу вставить в anim.SetBool(), а так видео топ, спасибо большое
как у меня просто там ошибка?
Как сделать анимацию чтобы персонаж прыгнул и когда падал анимацию сменилась на анимацию падения?
Шикарное видео, все понятно!
У меня почему-то bool не включается
Что делать если при анимации у меня персонаж перестает двигаться?
Пасибо у меня всё получилось ато сматрел гайды другие и неполучалось
А как заморозить анимацию в конце? Я хочу анимировать наклон корабля, но анимация проигрывается циклически. То есть он сначала наклоняется , а потом возвращается в исходное положение, а мне этого не надо
Отключить зацикливание
сделайте движение только в одну сторону
ну или если корабль находится на кординате x=... , y=...; то движение корабля там false, ну если сделали сначала false то теперь true
Можешь рассказать где ты всю эту инфу берешь учебники может какие есть или курсы :??
Надеюсь он тебя услышит )))
Ну смотри, сам C# можешь почитать у Шилдта, все вполне доступно объясняет. А Unity, на оф сайте, он все больше и больше растет, и инфа становится уйма))
добавляйся в группу:) я ищу людей, которые хотят чет делать.
Я заметил что в Аниматоре анимации по продолжительности в два раза больше. Например когда мы создавали анимацию покоя, она была 0:20 тогда как в аниматоре 0:10 Почему так происходит, кто ответит мне на этот вопрос????
Топ
Наконец то нашёл нормальный канал по юне
Ребят у кого управление стоит на moveinput = Input.GetAxisRaw("Horizontal");
В Animatore укажите кнопки A & D and LeftArrow RightArrow..
PS anim = GetComponent(); со скобками
У меня 8 спрайтов прыжка. 4 фрейма прыжка вверх, и 4 падения. Если я оставляю Exit Time, то анимации вообще нет. Я хочу, чтобы когда персонаж достигал максимальной высоты прыжка, спрайты подъема заканчивались, и шли спрайты падения. То есть такой массив спрайтов, переменная jumpForce, и какой-нибудь метод, вычисляющий на каком расстоянии находится персонаж, дабы показывать нужный спрайт. Но так как я только новичок, то даже не знаю, как это должно выглядеть.
Здравствуйте, такая проблема. При использовании анимации, появляется копия персонажа с анимацией чуть ниже самого персонажа. Подскажите, пожалуйста, как это исправить(
А что обозначает галочка Fixed duration, какое отличное с ней или без неё?
Просто не работает, никаких ошибок, никак, подскажите?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Button_Start : MonoBehaviour
{
// Start is called before the first frame update
public Animator Camera;
void Start()
{
Camera.GetComponent();
}
// Update is called once per frame
void Update()
{
}
private void OnMouseEnter()
{
Camera.SetFloat("MouseOnButtonStart", 1);
}
}
спасибо
Assets\Unity 2\NewBehaviourScript.cs(10,16): error CS0029: Cannot implicitly convert type 'UnityEngine.Animation' to 'UnityEngine.Animator'
Помогите пожалуйста((
а нет , всё починил)
что делаете за проект?
Lord Twilight 2D platformer
@@Tiger-qd4fn что получилось покажите? вступайте мою группу. я ищу людей, которым нравится что-то разрабатывать. удачи в проекте.
Здравствуйте. скажите, если мне надо не главному герою анимацию сделать. а только нпс персонажу. и только idle анимацию. его задача будет просто стоять. и делать простые движения. как в данном случае быть
ОГРОМНОЕ СПАСИБО!!
Подскажите пожалуйста , почему после создания анимации персонаж стал исчезать при движении в лева?
Кто делать, если я добавляю модельку в анимацию, но она появляется ниже моего персонажа.
супер годно!!!
Вопрос, почему срабатывает анимация поворота (при беге влево, персонаж смотрит влево), если Mirror не был прописан + не проставлены соответствующие галочки + спрайты были тока вправо?
сложно сказать не видя скрипта
когда нажимаю play animation В сцене ничего не анимируется" Что делать?-> Открыть сцену в отдельном окне
Создал я Apk игру на андройд и она не запускаеться , просто телефон зависает, далее черный экран (нет даже обложки Unity) и закрывается приложение.
Путем долгих попыток "Билдинга" я понял, что проблема в контролере анимации (Animator) если он на сцене, тогда во первых игра не запустится на андройд, а во вторых увеличится в размерах примерно на 50 мб. Без контроллера анимации игра весит 17 мб, а вместе с контроллером 60 мб . Без контроллера (Animator) всё хорошо работает . Подскажите в чем проблема ?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CharacterAnimation : MonoBehaviour
{
private Animator anim;
void Start()
{
anim = GetComponent();
}
void Update()
{
if (Input.GetKey(Keycode.LeftArrow) || (Input.GetKey(Keycode.RightArrow))
{
anim.SetBool("isRunning", true);
}
else
{
anim.SetBool("isRunning", false);
}
}
}
В чем ошибка ??? никак не пойму..
; после скобочек нужно ставить
После (KeyCode.RightArrow))
Пишет: Assets\Scripts\Animator.cs(2,1): error CS1529: A using clause must precede all other elements defined in the namespace except extern alias declarations
Возможно не подключены библиотеки.
@@grener4959 Не могу не придраться. Подключают не библиотеку, а пространство имен.
есть вопрос. переход шага в бег, как лучше сделать? или по такому же принципу. т.е. нажал шифт бежит отпустил стоит. можно уроки по камере? я знаю что можно тупо привязать камеру к объекту, но это не совсем правильно. если идет камера следовала и при этом не было глюков. я то нашел решение, но очень громоздкое может есть что по проще? планируете по рыцарю игру? давно занимаетесь юнити?
th-cam.com/video/t3zqG6sadTM/w-d-xo.html - урок по движению камеры.
Смена ходьбы на бег действительно меняется нажатием клавиши и сменой скорости перемещения.
@@graphicaldesign2776 спасибо. удачи
привет у меня в слове SetBool ошибка пошиться
Класс
Анимация воспроизводится даже если игрок не прыгает (прост при нажатии стрелочки)
Скажите, пожалуйста, в чем может быть ошибка? Из idle в run переходит хорошо, а когда отпускаю клавишу, персонах останавливается, а анимация бега продолжается
блин, я лох, короче в "иначе" написал isRunnig вместо isRunning
@@denisdenisov8618 А вот у меня всё правильно, но всё равно типо из идл в ран не переходит. Проигрывается только идл, а ран нет.
Скрипт нормально все написал , но не работает при нажатии на стрелочке , не работает.
Может быть опечатка в заглавных/строчных буквах. Много вариантов, нет никакого описания чтоб я мог подсказать
Круто спасибо
Клёво
Ти крутой
ахуеный видос, мегахарош
пожалуйста помогите найти ошибку в скрипте, уже день ищу все видео неработают ):
Скрипт:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class animation : MonoBehaviour
{
private Animator anim;
void Start()
{
anim = GetComponent();
}
void Update()
{
if (Input.GetKey(KeyCode.A)) || Input.GetKey(KeyCode.D)
{
anim.SetBool("isRunning", true);
}
else
{
anim.SetBool("isRunning", false);
}
}
}
Изменено: АААААА! Я НАШЁЛ ОШИБКУ!!! СПАСИБООО!!!ТОЛЬКО У ТЕБЯ ПОЛУЧИЛСЯ!!!Я ПОСТАВИЛ ЛАЙК И ПОТПИСАЛСЯ
Здравствуйте, как примерно реализовать для джойстика?
прикрепить его на UI
Привет!Слушай а можешь сделать видео про анимацию врага. Если не трудно.
Что мне делать если я захожу в аниматор и мне пишет Exit?
Не грустить.
@@graphicaldesign2776Спасибо.
Что делать если нет Вкладки Анимация
открыть ее через window.
Loooooveeeee uuuuu)
Внимание isRunning а не IsRunning !!! Эх пол часа разбирался.... А тут опять в мелочи ступил!
Николай Нагорнов я другой код разбирал тоже обратил на это внимание:)
Скачай специальный плагин под юнити для Visual Studio будет само исправлять и моешь не парится
дружище, спасибо!)))))))
Я случайно удалил параметр blend как его вернуть?
Ctrl + z
помогите пишет Parameter 'isRunning' does not exist
проверьте чтоб было правильно написано и в коде, и в аниматоре, идентично
Миша Ефимов напиши просто run в анимации и в коде run. надо чтобы слова совпадали по регистру
Нет у меня никаких полос сколько бы не тыкал не отдалял не приближал все равно нет
к сожалению ничего не работает!
6:39
У меня анимация не работает когда запускаю((
всё работает если сделать как в видосе
@@itshcolnik4627 не всегда
Уменя кнопки это бесполезно
Ничего не работает персонаж начал сам ходить
Бывает
Всё я понял в чём ошибка я в самом начале накосечил поставиви стрелочки jump а не к run
Фух, пугали меня эти анимации, посмотрел твоё видео и понял, что в принципе ничего сложного нет.
Офигеть просто. Я пересмотрел уйму туториалов, но именно у вас потрясно получается обучать. Надеюсь, вы продолжите создавать настолько полезный контент. Спасибо!
Можешь подсказать как ваот это (Input.GetKey(KeyCode.LeftArrow) || Input.GetKey(KeyCode.RightArrow)) поставить как для джостика на андроиде
посмотри в ютубе видео урок
Спасибо, все доходчиво и понятно.
Ошибка cs1513 скобки все на месте, Ошибка и в Unity 2019 а также в Visual Studio тоже 2019,ошибка между сетбул тру.
Спс, с анимациями помог)
Спасибо огромное всё работает на юнити 5 (2019.2.12f) очень помог
В новой версии юнити ее работает там какуюту библиотеку просят добавить помоги плиз и смини видео о анимации на юнити 5 если не сложно
Можешь в описание скинуть ссылки на скачивание кодов, ибо в ручную писать это то ещё занятие. Заранее благодарю.
Скрипты не выдаю. Эти видео для обучения, а не для получения скриптов.
А как сделать прыжок для сенсорных кнопок? Пробовал вытаскивать rb.velocity. Если оно больше 0, то анимация. Но velocity больше 0 достаточно долго, чтобы анимация зависла на первом кадре.
Сенсорные кнопки сделаны через TriggerEvent весящий на кнопке, в нём Pointer down вытягивает часть скрипта относящуюся к прыжку.
public void Jump(bool isJump)
{
isJump = groundCheck;
if (groundCheck)
{
rb2d.velocity = new Vector2(rb2d.velocity.x, jumpForce);
}
Пожалуйста. помогите!
Нужно сделать анимацию в зависимости от изменения счета
Получился такой скрипт(Unity выдает ошибку):
using System.Collections;
using UnityEngine;
public class Star : MonoBehaviour
{
private Animator anim;
void Start
{
anim = GetComponent();
anim.SetBool("isBurst", false);
}
}
--------
и в другом скрипте через GetComponent пытаюсь включить Анимацию:
public class Coin : MonoBehaviour {
private void OnTriggerEnter2D(Collider2D collider)
{
Character chatacter = collider.GetComponent();
Animator anim = GetComponent();
if (chatacter)
{
chatacter.score++;
anim.SetBool("isBurst", true);
}
}
}
-------------
Подскажите, где может быть ошибка?
У меня срочный вопрос, я сделал всё как на видео, но когда я нажимаю прыжок несколько раз, у героя анимация прыжка срабатывает много раз подряд по новой. Что делать?
помоги плиз. У тебя все просто, но ты не обьяснил, как твой персонаж АВТОМАТИЧЕСКИ меняет анимацию при движении в разные стороны на ЗЕРКАЛЬНУЮ. есть анимация движения из 5 спрайтов, и эта анимация смотрит направо. Но когда ты движешься налево, анимация зеркально отражается налево. Как ты это сделал. Это решение сократит код в два раза у меня, пожалуйста)
Да с@ка!!!! Я уже бл!ть пол тора часа над этим работаю .Помогите!!!! , мне пишет When was this built in component introduced? I'm sure mine predates this, and its really messing me up because I have important files serialized with this certain name of the object, so if I change it's name the files all break. .NET serialization cares about the name. I have to create a special process to handle both names and recreate and re-serialize these files.
GetComponent no longer works on these objects, which means they are broken now also. Is there a way I can exclude the built in Halo component so I don't have to do a week's work?
Подскажите кто-нибудь, что делать если после того как я провел "Make Traтsition" к одной анимации, то ко второй я уже создать новый "Make Trasition" немогу.
у меня проблемка))... анимации покоя , прыжка, бега, сделал работают ... А вот анимация смерти(собранная из спрайтов) не работает.. как ее вставить в код героя???Может есть видео по этому поводу(
у меня боксы не появляютсч,персонажа выбрал(
помогите!! У меня пока не закончиться первая анимация, другая не наступит. Что делать? :(
возможно я опоздал, но надо было просто убрать на стрелочках этих Has Exit Time галку
единственное видео, где я понял как задавать анимацию в скрипте, чел, тыы ахуенен
Как пофиксить зажатие кнопки прыжка , что бы анимация менялась даже при зажатой кнопке
не GetKey, а GetKeyDown, или нет🤷♂️
по мне так лучше через скрипты просто проигрывать эти анимации