No video

Движение по пути - гибкий вариант #2 - Unity легко

Это вторая часть, в которой я уже покажу, как непосредственно прикрепить объект к существующему пути.
Номер карты для поддержки - 4149629398195479
/ graphicaldesignua - мой патреон для поддержки)
t.me/joinchat/K3HCV0nUjP4X7kC... - телеграм канал в котором можете пообщаться с другими разработчиками.
unity.com/ru - ссылка на Unity

Пікірлер: 84

  • @Watchan
    @Watchan Жыл бұрын

    Ребят, если хотите чтобы игрок поворачивался в сторону следующей точки: РЕЗКО: ====== Vector3 newDir = Vector3.RotateTowards(transform.forward, (pointInPath.Current.position - transform.position), 1, 0.0F); transform.rotation = Quaternion.LookRotation(newDir); ====== ПЛАВНОСТЬ + КОНТРОЛЬ: добавляем ещё один float: public float speed_rotation; ====== Vector3 newDir = Vector3.RotateTowards(transform.forward, (pointInPath.Current.position - transform.position), 1, 0.0F); transform.rotation = Quaternion.Slerp(transform.rotation, Quaternion.LookRotation(newDir), Time.deltaTime * speed); ====== Вставляем один из этих кодов после: if (Type == MovemtType.Moveing) { transform.position = Vector3.MoveTowards(transform.position,pointInPath.Current.position,Time.deltaTime * speed); } else if(Type == MovemtType.Lerping) { transform.position = Vector3.Lerp(transform.position, pointInPath.Current.position, Time.deltaTime * speed); } >>СЮДА. var distanceSqure = (transform.position - pointInPath.Current.position).sqrMagnitude; if(distanceSqure { pointInPath.MoveNext(); }

  • @KabanKabanus
    @KabanKabanus2 жыл бұрын

    Шикарный урок. Большое спасибо :) Теперь осталось это натянуть на Безье))))

  • @anatar4516
    @anatar45164 жыл бұрын

    Спасибо , за столь полезные и подробные ролики!

  • @alex75494
    @alex754944 жыл бұрын

    Спасибо за урок!! Очень круто!!

  • @Лига_Кубизма
    @Лига_Кубизма4 жыл бұрын

    Вы лучший, спасибо!

  • @The_Mavrik
    @The_Mavrik4 жыл бұрын

    Крутой ролик =)

  • @mrminecrafter3829
    @mrminecrafter38293 жыл бұрын

    Спасибо большое автору !!!

  • @bogdan9423
    @bogdan942310 ай бұрын

    спасибо, было полезно и пригодилось!

  • @masson22
    @masson223 жыл бұрын

    Спасибо огромное!

  • @HitsarOrig
    @HitsarOrig2 жыл бұрын

    Сделал для себя, но тоже пользуйтесь) 0:06 - начало 0:29 - начало писания скрипта 9:02 - конец писания скрипта и проверка

  • @user-lm6ch4zi7y
    @user-lm6ch4zi7y4 жыл бұрын

    Спасибо.

  • @arcday4281
    @arcday42814 жыл бұрын

    Подписчики растут, хоть по тихому и то хорошо !

  • @hurt7723
    @hurt77234 жыл бұрын

    18 тысяч подписчиков 🤔🔥

  • @user-qz2wv4yj5b
    @user-qz2wv4yj5b4 жыл бұрын

    Ти лучший.и на 3д и на 2д ахиреть

  • @sevushkinshow5936
    @sevushkinshow59363 жыл бұрын

    Ну подскажите пожалуйста как сделать поворот спрайта по пути к точкам. Хочу сделать Словно как поезд по рельсам едит. Заранее спасибо!

  • @alenkakiriyakidi9996
    @alenkakiriyakidi99962 жыл бұрын

    Спасибо огромное. Возникла одна проблема. Скрипт кинул на Prefeb. Если объект на сцене то можно добавить в инспекторе My Path, если не на сцене маршрут не подкидывается. Подскажите как сделать чтобы прифаб появлялся на сцене уже с маршрутом?

  • @user-xi4sc2hy3f
    @user-xi4sc2hy3f3 жыл бұрын

    А как сделать один путь для нескольких объектов? В данном варианте, объекты, привязанные к одному пути, двигаются не по одинаковой траектории. каждый новый объект двигается к следующей от предыдущего объекта точке. Может создавать копию пути или как-то изменить корутин? подскажи, пожалуйста.

  • @FloatingGames
    @FloatingGames4 жыл бұрын

    Лайк

  • @osada4367
    @osada43674 жыл бұрын

    Привет, слушай а у тебя уже нет готовых игр ? ну т.е те что ты сделал и выложил в стим итд чтобы посмотреть )

  • @user-hc5cd8tf5k
    @user-hc5cd8tf5k4 жыл бұрын

    А если у меня есть объект который может двигаться сам но мне нужно, чтобы объект двигался к точкам как это сделать? или можно взять лиж кусок скрипта?

  • @Stre1a_channel
    @Stre1a_channel3 жыл бұрын

    зафиксировать объект на точке можно на некоторое время?

  • @user-xf1iz6om1x
    @user-xf1iz6om1x4 жыл бұрын

    Привет, уроки очень крутые, пожалуйста можешь в следующих уроках показать генерацию данжа, как в игре "SoulKinght"

  • @anatar4516

    @anatar4516

    4 жыл бұрын

    Константин Чигрик в этой игре вроде уже берутся готовые комнаты и рандомно ставятся

  • @pleaqueet
    @pleaqueet3 жыл бұрын

    Как настроить разные пути для одного объекта?

  • @Darth_Sottoth
    @Darth_Sottoth3 жыл бұрын

    Спасибо за пример! А как сделать, чтобы объект , после достижения конечной точки маршрута, не шел назад, а просто останавливался?

  • @jugo-stream

    @jugo-stream

    3 жыл бұрын

    Присоединяюсь к вопросу)

  • @sweeepeeee

    @sweeepeeee

    2 жыл бұрын

    @@jugo-stream при достижении последней точки вырубать скрипт, служащий для движения. Или флаг какой-нибудь прописать и менять его

  • @ArtemKhattin
    @ArtemKhattin3 жыл бұрын

    Почему когда ставишь на путь много объектов, то они начинают двигаться хаотично?

  • @twitchtime4472
    @twitchtime44723 жыл бұрын

    Можете код виложить, что б можно было скачать. Я учу пайтон, но игры Делать люблю. Если не трудно. Спасибо 🙏

  • @Borodatenkiy
    @Borodatenkiy2 жыл бұрын

    Крутой ролик, но есть один нюанс, 2д объекты двигаются (и 3д тоже), но при запуске сцены объекты при движении пропадают из камеры, а на сцене по прежнему остаются и выполняют поставленную задачу, если изменить код (с Vector3) на Vector2 то объект будет двигаться только к первоначальной точке, если её во время игрового процесса передвинуть, объект медленно будет следовать к ней (ну это зависит от раздела speed) в общем полазил на множество форумах ничего полезного по этому поводу не нашел. Короче если кто то знает с чем может быть связанна эта проблема помогите, пожалуйста!

  • @Borodatenkiy

    @Borodatenkiy

    2 жыл бұрын

    Не успел написать комментарий, уже сам додумался что может стать причиной этого бага, в общем у элемента Path нужно было сбросить позицию по Z (так объект сможет появиться в камере, а камеру нужно поставить на Z -10+)

  • @Lunray_
    @Lunray_4 жыл бұрын

    братан, привет! сделай пожалуйста ролик как сделать колесо фортуны в игре. на ютубе нигде на такую тему видосов нет, и в гугле ничего

  • @The_Mavrik

    @The_Mavrik

    4 жыл бұрын

    Там же ничего тяжёлого нет. Сделать колесо и чтоб при нажатии оно начинало крутиться с рандомной силой в определенном диапазоне. Разделяешь колесо мысленно по градусам на сектора. К примеру у тебя 6 секторов, 360/6 = каждый сектор в 60 градусов. В момент остановки смотришь сколько градусов и определяешь сектор по градусам.

  • @_gjdjdj
    @_gjdjdj3 жыл бұрын

    А как можно сделать, чтоб объект смотрел в сторону движения (в случае с картиной, то она смотрит в одном направлении)?

  • @oleksiikulahin5983

    @oleksiikulahin5983

    3 жыл бұрын

    мне тоже такое нужно, думаю, что можно положение текущей точки отнять от положения следующей и получить Вектор3, из него уже замутить направление взгляда

  • @perdil-ws7th

    @perdil-ws7th

    3 жыл бұрын

    с помощью flipX

  • @fussiony8624

    @fussiony8624

    2 жыл бұрын

    Узнал как сделать чтоб объект смотрел в сторону движение?)

  • @oleksiiiatsuta1221
    @oleksiiiatsuta12213 жыл бұрын

    Unity3D Как задать траекторию движения объекта

  • @KillerROCKPlay
    @KillerROCKPlay4 жыл бұрын

    Доброе времени суток! у меня со скриптом проблемы. в инспекторе нет My Path хотя вроде правильно всё написал вот скрипт мой, из вашего ролика. using System.Collections; using System.Collections.Generic; using UnityEngine; public class PositionPlatforma : MonoBehaviour { public enum MovementType { Moveing, Lerping } public MovementType Type = MovementType.Moveing; public MovementPath MyPath; public float speed = 1; public float maxDistance = .1f; private IEnumerator pointInPath; // Start is called before the first frame update void Start() { if (MyPath == null) { Debug.Log("Примени путь"); return; } pointInPath = MyPath.GetNextPathPoint(); pointInPath.MoveNext(); if (pointInPath.Current == null) { Debug.Log("Нужны Точки"); return; } transform.position = pointInPath.Current.position; } // Update is called once per frame void Update() { if (pointInPath == null || pointInPath.Current == null) { return; } if (Type == MovementType.Moveing) { transform.position = Vector3.MoveTowards(transform.position, pointInPath.Current.position, Time.deltaTime * speed); } else if (Type == MovementType.Lerping) { transform.position = Vector3.Lerp(transform.position, pointInPath.Current.position, Time.deltaTime * speed); } var distanceSqure = (transform.position - pointInPath.Current.position).sqrMagnitude; if (distanceSqure { pointInPath.MoveNext(); } } } может я где то ошибся? исправьте, если можно или я что то не вдупляю просто

  • @maxkun8446

    @maxkun8446

    Жыл бұрын

    проверь два скрипта

  • @maxkun8446

    @maxkun8446

    Жыл бұрын

    я в место IEnumerator написал IEnumerable

  • @karpa2895
    @karpa28954 жыл бұрын

    Немного не по теме видео, но всё же, очень хотелось бы видеть видео по типу "при срабатывание триггера, появлялся какой- то объект(К примеру при взятия кристалла(срабатывание тригерра) активировался (появлялся) портал)", уже 3 дня ищу что то подобное, а у самого не получается...Удачи!

  • @The_Mavrik

    @The_Mavrik

    4 жыл бұрын

    А что именно не получается не понимаю? Инициализируй портал или делай активным когда надо.

  • @karpa2895

    @karpa2895

    4 жыл бұрын

    @@The_Mavrik Да уже ничего, сам как то код написал, хотя я в c# почти полный нуль....

  • @Th3_V3ct0rAT2
    @Th3_V3ct0rAT22 жыл бұрын

    У меня пишет что MovementPath типо не найден

  • @FloatingGames
    @FloatingGames4 жыл бұрын

    Хорошо, что мало людей знают про такой хороший канал, ведь инфу по юнити больше почти нигде не раздобыть на Ютубе,

  • @anatar4516

    @anatar4516

    4 жыл бұрын

    Leo TM Man наоборот плохо

  • @FloatingGames

    @FloatingGames

    4 жыл бұрын

    @@anatar4516 зато никто не знает) меньше конкурентов)))

  • @anatar4516

    @anatar4516

    4 жыл бұрын

    Leo TM Man Ну это тебе, а автору нет

  • @anatar4516

    @anatar4516

    4 жыл бұрын

    Leo TM Man в принципе всю эту инфу можно и самому придумать, прям чего-то нереального тут нет :)

  • @FloatingGames

    @FloatingGames

    4 жыл бұрын

    @@anatar4516 у автора своя, теплая аудитория, он снимает для нее очень старательно) я думаю что 1000000 он не особо желает)

  • @avduhinplay9286
    @avduhinplay92863 жыл бұрын

    Что делать если пишет The type or namespace name 'MovementPath' could not be found (are you missing a using directive or an assembly reference?)? Скажите как решить пж.

  • @abuibnabutalip

    @abuibnabutalip

    3 жыл бұрын

    если нашли ответ подскажите пожалуйста , у меня такие же проблемы

  • @avduhinplay9286

    @avduhinplay9286

    3 жыл бұрын

    @@abuibnabutalipНет, не нашёл

  • @Anonim-hq6lh

    @Anonim-hq6lh

    3 жыл бұрын

    выделяешь MovementPath (alt + enter) и записываешь его как класс, там последняя строчка и сохраняешь в этом же файле

  • @Anonim-hq6lh

    @Anonim-hq6lh

    3 жыл бұрын

    @@avduhinplay9286 выделяешь MovementPath (alt + enter) и записываешь его как класс, там последняя строчка и сохраняешь в этом же файле

  • @Koston2012

    @Koston2012

    3 жыл бұрын

    Проверь как ты назвал скрипт из первого видео

  • @mrfrik1880
    @mrfrik18804 жыл бұрын

    Подскажи пожалуйста, будет ли работать в 3Д? ()

  • @graphicaldesign2776

    @graphicaldesign2776

    4 жыл бұрын

    Будет

  • @eagledev_tank
    @eagledev_tank3 жыл бұрын

    привет! ты на каком языке пищещ (я новичок совсем) где урок установки этой программы

  • @prefaimers2321

    @prefaimers2321

    2 жыл бұрын

    боже мой, зачем я это прочитал… Иди русский выучи прежде чем программировать

  • @kivuru
    @kivuru4 жыл бұрын

    Спасибо, то, что нужно! Только, наверное, имелось ввиду moving и square, а не moveing и squre :)

  • @timtarantino3180
    @timtarantino31804 жыл бұрын

    Graphical Design помогите, спасите, выручайте. Пытаюсь сделать так что бы по пути объект перемещался по нажатию стрелок, но он поворачивает к обратной точке только когда достигнет текущую. Каким образом сделать так что бы он слушался стрелок и между точками?

  • @graphicaldesign2776

    @graphicaldesign2776

    4 жыл бұрын

    Я же не знаю как реализовано переключение между точками.

  • @timtarantino3180

    @timtarantino3180

    4 жыл бұрын

    @@graphicaldesign2776 код ваш, я просто пытаюсь возвращать yield return arrayPoints[movingTO+1] или yield return arrayPoints[movingTO-1] в зависимости от нажатия стрелки

  • @tytmoyapochta
    @tytmoyapochta3 жыл бұрын

    Пасиииба

  • @user-ce7hy6ht5y
    @user-ce7hy6ht5y4 жыл бұрын

    Как расставить точки?

  • @borisovilya4377

    @borisovilya4377

    3 жыл бұрын

    Смотри 1 часть

  • @Max-ex9rd
    @Max-ex9rd4 жыл бұрын

    Всё работает только возникла одна проблема когда запускаю игру то платформа становится невидимая, когда смотрю через сцену как работает игра то её видно, не подскажете как решить данную проблему?

  • @graphicaldesign2776

    @graphicaldesign2776

    4 жыл бұрын

    она может становиться за фон. можно поменять ей order in layer

  • @Max-ex9rd

    @Max-ex9rd

    4 жыл бұрын

    @@graphicaldesign2776 ок, я попробую, но я ещё фон не ставил, стоит всё по дефолту

  • @Max-ex9rd

    @Max-ex9rd

    4 жыл бұрын

    Нет это точно не та проблема, когда платформа просто стоит её видно, когда кидаю на нее скрипт она становится невидимая, но всё работает она поднимает, вроде всё делал по видео и ошибок в скрипте не должно быть

  • @graphicaldesign2776

    @graphicaldesign2776

    4 жыл бұрын

    @@Max-ex9rd Если поднимает, значит ошибки не в скрипте. Посмотри положение по Z, может она слишком близко к камере.

  • @Max-ex9rd

    @Max-ex9rd

    4 жыл бұрын

    Да спасибо вы правы, только вот теперь хз как сделать что бы значение не менялось, я только вручную могу сменить его во время запуска, а так оно сразу сбивается. Это надо смотреть в скрипте камеры походу как я понял

  • @_mirai
    @_mirai Жыл бұрын

    Причём здесь теорема Пифагора? Может быть я чего-то не знаю, но по моему теорема Пифагора все-таки про стороны треугольника А здесь просто сравнивается расстояние до объекта. А квадрат длины вместо просто длины используется из-за того, что чтобы вычислить длину вектора нужно извлечь квадратный корень, а это самая затратная операция для процессора, поэтому в целях оптимизации квадрат длины сравнивается с квадратом максимального расстояния чёт такое ощущение будто автор сам не понимает о чем говорит Но в целом вроде неплохо

  • @user-to4xh5nr5e
    @user-to4xh5nr5e8 ай бұрын

    Можно готовый скрипт?

Келесі