Как ПРАВИЛЬНО сделать передвижение в Unity? Нормали поверхностей + Чистый код на C#

Как ПРАВИЛЬНО сделать передвижение в Unity? Нормали поверхностей + Чистый код на C#

Роман Сакутин

2 года назад

181,340 Просмотров

Ссылки и html тэги не поддерживаются


Комментарии:

Роман Сакутин - GameDev
Роман Сакутин - GameDev - 28.07.2021 15:21

2000 лайков под видео и делаем крутые мультяшные прыжки!

Ответить
ElezthemDev - GameDev
ElezthemDev - GameDev - 08.11.2023 22:53

Новичков нужно учить хорошему коду, это -60% времени если они будут говнокодить. ( ну если сразу учить хорошему то меньше времени уйдет )

Ответить
Матфей Ляхов
Матфей Ляхов - 05.11.2023 11:49

как я заметил хауди отрицает ошибки и обзывается а макстер признает ошибки и всем рекомендует просмотр видео романа.уважение макстеру +10000

Ответить
Eugenii Chernovitcki
Eugenii Chernovitcki - 07.10.2023 16:01

Видимо про класс "Axis" все забыли....

Ответить
Fa Da ツ
Fa Da ツ - 05.10.2023 15:51

Чёта я попробовал переписать код из видео, дабы поиграться, а он не робит у меня :)

Сначала ругается на KeyboardInput в строке 16 с исключением NullReferenceException - добавляю в Movement любого рода "заглушку"
Начинает ругаться на 13 строку в PhysicsMovement в строке 13 с исключением NullReferenceException.

Вряд ли мой коммент заметят, но я даже предположить не могу - что я сделал не так? :)

Ответить
Атомный Плей Бой
Атомный Плей Бой - 14.09.2023 22:08

ничего не понятно - замечательный код! Замечательное обьяснение... А нет - отвратительный код, ничего не понятно из обьяснений. В общем то китайский гораздо понятнее, чем все что сделал автор.

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

Ответить
дима долгополов
дима долгополов - 08.08.2023 14:52

код не роботает👿

Ответить
RODOMITS
RODOMITS - 28.07.2023 19:59

Какай правильно не как хауди хо

Ответить
Владислав Яндульский
Владислав Яндульский - 15.07.2023 14:15

Как вектора D(-0,75;0,25) и N(-0,25;-0,25) перпендикулярны? Если скалярное произвидение не равняется нулю? А это у нас получается истинный вектор движения игрока который поидеи должен быть паралелен плоскости и перпендикулярен нормали, но как не крути не получается, чтобы он был перпендикулярен по этой формуле.

Ответить
 TimeWave​e
TimeWave​e - 04.07.2023 17:14

ну вот ты говоришь что код говно он говорит что для новичков я посмотрел его видео я более мене понял я посмотрел твое я нечего не понял из этого выводы стоит дедать? я росто ввообще не шарю за програмирование

Ответить
Umid Sharipov
Umid Sharipov - 17.06.2023 14:42

Даже смотреть видео не стал понял что осуждать того у кого я научился всему это треш без обид но треш это ты нежели хауди

Ответить
Zen Bi
Zen Bi - 05.06.2023 16:03

ГАСПАРД ДА ВОТ ЖЕ ОНО! Спасибо огромное за видео. Только начал обучатся, сделал свой проект (крохотный). Очень долго изголялся над передвижением персонажа, он стопорился или и вовсе застревал при переходе на другие поверхности или при хождении по наклонных поверхностях. Пересмотрел множество гайдов но НИГДЕ нет ничего по тому, что такое нормали и как с ними работать, вот теперь моя болванка не вырывает глаза от своего дёрганого передвижения. Ещё раз спасибо.
Помог на удивление чат JPT - дал название видео, но не дал ссылку...

Ответить
Itayra
Itayra - 03.06.2023 12:10

ХаудиХо сделал видео для новичков, где всё просто и понятно. А тут куча сложных и во многом не нужных новичку манипуляций. Например, зачем новичку вычислять нормали, векторы и т.д, если можно просто написать AddForce. Это тоже самое, что говорить "Велосипед - это гавнотранспорт, есть же машина".

Ответить
TOZEn
TOZEn - 29.04.2023 16:31

Вроде кодишь не плохо но ты такой токсичный...........
Поддерживаю Хауди Хо во всём.

Ответить
abduvoris islamov
abduvoris islamov - 26.03.2023 09:55

слыш тебе какая разница что там у хауди хо вообще даже если ты считаешь то что у него неправильно то тогда почему у него больше подписчиков и вообще не лезь к другим...

Ответить
Olil
Olil - 18.03.2023 18:39

А почему бы вместо метода Project было не использовать стандартный Vector3.OrthoNormalize? Считаю, что так было бы гораздо нагляднее

Ответить
Blah Dogh
Blah Dogh - 28.02.2023 03:59

Если кто-нибудь попробывал метод Романа, то понял бы что вся формула крашится при столкновении со стеной . Плавности можно добится и спомошью Physics Material и резать движение при малой скорости. И конечно же три скрипта нагружают меньше чем три галочки в Constrains

Ответить
Nameless[Russian]
Nameless[Russian] - 21.02.2023 19:13

Да ладно тебе, есть ошибки и что. Заметит ошибку и пирипишет.

Ответить
Руслан Кондрахин
Руслан Кондрахин - 20.02.2023 22:40

Очень замудренный вариант

Ответить
klioz
klioz - 11.02.2023 01:51

Блин либо я тупой либо хауди хо я по его уроку неделю ломал голову и не мог написать код для бота в итоге видимо код не только слабый и для навечков а ещё и не рабочий. (Весь код я проверял много раз )

Ответить
Кинау
Кинау - 06.02.2023 11:18

Он говорил, что инфацыган, ведь продаю свои курсы. нк а если ты хочешь научиться писать код переходи на мои курсы

Ответить
Арцём Сенькеаич
Арцём Сенькеаич - 01.02.2023 21:18

И вопрос у меня одного ничего не происходит?

Ответить
Арцём Сенькеаич
Арцём Сенькеаич - 01.02.2023 21:03

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

Ответить
Ndav I hwo
Ndav I hwo - 29.01.2023 01:14

привет ,код на C#?

Ответить
MARVIK-ШКОЛА СМЕХА
MARVIK-ШКОЛА СМЕХА - 02.01.2023 14:53

*а не как Хауди хо уже 1000 раз повторил 😅

Ответить
SuperWorldYT
SuperWorldYT - 25.12.2022 13:31

А что в скрипте Axis?

Ответить
abik
abik - 17.12.2022 21:14

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

Ответить
Денис Кошкаров
Денис Кошкаров - 14.12.2022 22:28

Как по мне Хауди красавчик! Даже если он написал говно код, его ролик стал поводом для создания этого ролика. И потом всегда будет то, кто пишет код лучше, я бы не стал на этом зацикливаться. Роман, тоже молодец, ведь полезно разобрать на примере, как можно сделать лучше. Но если бы Хауди, не записывал свои видосы, я думаю намного меньше людей стали бы интересоваться программированием.

Ответить
Flyen
Flyen - 02.12.2022 22:34

где взять такие текстурки?

Ответить
TORNADOBrogamer
TORNADOBrogamer - 25.11.2022 18:09

Он просто переснял видео западного ютубера

Ответить
w9r0m
w9r0m - 23.11.2022 12:42

ты туту?

Ответить
Maks Onix
Maks Onix - 12.11.2022 02:22

ну Абрахам получается всех переиграл - не знал как правильно сделать, сделал неправильно, придал огласке, и нашелся таки добрый и неравнодушный человек, что объяснил как правильно. И получается бесплатный урок. Современные проблемы...

Ответить
Agronomy
Agronomy - 07.11.2022 19:10

О петушня

Ответить
Вальтер Герц
Вальтер Герц - 07.11.2022 02:25

Я даже не спав три дня такое говоно не писал, как у хауди

Ответить
cheefox cheefox
cheefox cheefox - 24.10.2022 14:19

Кто-то знает движок, кто-то не знает. 😁👍

Ответить
MotyaMiracle
MotyaMiracle - 17.10.2022 19:05

Все скрипты нужно привязывать к Player или нет? У меня ошибку выдает NullReferenceException: Object reference not set to an instance of an object
KeyboardInput.Update () (at Assets/Scripts/KeyboardInput.cs:14). Вроде как переписал точь в точь, но почему то мой объект не хочет двигаться

Ответить
Tural Aliyev
Tural Aliyev - 16.10.2022 00:38

Правильно ли вызывать метод Move в Update а не Fixed Update? Учитывая что там rigidbody.MovePosition() ?

Ответить
Sergey Zakharov
Sergey Zakharov - 08.10.2022 18:20

На чем делать-то, если Windows в России заблокирован? На Маке?

Ответить
Daniel LUKO
Daniel LUKO - 03.10.2022 21:16

а почему нельзя силу просто применить к локальным координатам куба? На официальном сайте Unity learn перемещения делают точно также, неужели это ошибка?

Ответить
Stalker
Stalker - 16.09.2022 01:40

замечания идут от меньшего к большему.

1) код написан (и, полагаю, тщательно прилизан) заранее, увидеть гениальность автора (по сравнению с 'крайне недалеким' Хауди Хо) - нельзя.

2) ООП, все эти классы, методы, поля, которые Хауди Хо называл неправильно - это более высокий уровень программирования. а вот функции и переменные - то, что лежит на поверхности, и именно поэтому у "новичка" больше шансов понять именно такие слова. например, как я помню, меня учили именно сначала процедурному программированию, а уже потом ООП (на звание профессионала не претендую). и можно предположить, что предполагаемый новичок с первым знаком, а со вторым дела не имел. и тогда 'неправильные' названия смотрятся даже лучше. кстати, автор и сам назвал в одном моменте метод функцией, а затем исправился, остаётся лишь догадываться, специально, или все же и сам путается.
плюс, например, лично я не знаю что означает вот та приписка перед объявлением поля в квадратных скобках, что то типа обращения к чему то, но как бы да. хотя с самим ООП и с# я более менее знаком. точнее, конечно, я с подобной записью встречался, и даже копипастил в свой код - но лол, знать и понимать - это другое.
а у Хауди Хо и объяснения и код как раз таки, как говорится, для даунов (хотя, конечно, лучше было сразу перейти к движению через мув, вместо всяких сил) - нажал влево толкаем влево, нажал вправо - толкаем вправо. ни нормалей никаких нет, ни векторов (ну, почти) - о которых поговорим далее.

остальное - в комментариях к этому комментарию, т.к. не влезало. и там уже идут куда более серьёзные вещи.

Ответить
Andridze Strimer
Andridze Strimer - 13.09.2022 17:55

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

Ответить
dust Alchemist
dust Alchemist - 07.09.2022 12:46

Вообще тем - 🤡 которые говорят: нафиг нужен топовый код в казуалках?
Так вот, во первых вы нихрена не программисты, вы сами себя дискредитировали, во вторых это на то и казуалки чтобы потянуть на ЛЮБОМ гавно устройстве, чем более доступна игра тем больше будет игроков и тем большая прибыль с неё будет😐... Это тип серьёзно нужно обьяснять? Вам точно не 5 лет?
Плюс так можно быстрее клипать новые игры

Ответить
Артем
Артем - 02.09.2022 15:56

Впервые попался на твои видосы.Смотрю 2ое твое видео и столько токсичной хрени вытекло что после 1-2 минут не захотелось смотреть больше

Ответить
Adele D
Adele D - 30.08.2022 00:47

О боже учи меня полностью семпай

Ответить
Николай Мартынов
Николай Мартынов - 23.08.2022 15:53

В целом согласен в предложенном варианте код лучше . Но подозреваю что оппонент возможно намерено сделал код через адфорс дабы продемонстрировать новичкам физику движка.
п.с. Обьяснения у Хауди зашло на ура , тут же пересмотрел ролик раза 3 , прежде чем догнать суть о нормалях и скалярном произведении векторов. Хотя повторюсь предложенный Романом вариант кода лучше.

Ответить
Mitrodell
Mitrodell - 21.08.2022 23:20

Надеюсь ты купил себе графический планшет)

Ответить
Rumpelstilzchen
Rumpelstilzchen - 21.08.2022 20:35

Самый действенный аргумент - "Ой, вот только давай без (пассивной)агрессии!"

Ответить