background top icon
background center wave icon
background filled rhombus icon
background two lines icon
background stroke rhombus icon

Скачать "Runner - спаун платформ - создание с нуля - Unity легко"

input logo icon
Теги видео
|

Теги видео

обучение
уроки
с нуля
lesson
tutorial
2d
3d
игра
разработка
код
скрипт
game
gamedev
code
script
programming
программирование
раннер
бег
runner
#2
graphical
design
графика
дизайн
си шарп
c#
unity
юнити
Субтитры
|

Субтитры

subtitles menu arrow
  • enАнглийский
Скачать
00:00:06
доброго времени суток это второй урок по
00:00:09
серии видео о создании раньери о
00:00:12
создании райнеро и в предыдущем видео я
00:00:16
уже сделал так что персонаж наш мог
00:00:19
постоянно двигаться вправо плюс ко всему
00:00:22
мы могли прыгать и у нас было
00:00:25
ограниченное количество прыжков и прыжок
00:00:27
был в количестве 1 что же надо сделать
00:00:31
сейчас не мешало бы сделать так чтоб
00:00:33
платформы постоянно дублировались и мне
00:00:37
не приходилось создавать
00:00:38
уровень целиком потому что это будет
00:00:40
больше нагружать систему чем к примеру
00:00:42
три платформы которых спаунится
00:00:44
постоянно например если я сейчас запущу
00:00:47
тест видно мой персонаж движется все это
00:00:50
все осталось предыдущего видео если вы
00:00:52
его пропустили обязательно посмотрите
00:00:54
его так что же надо сделать еще я вас
00:00:57
сайтах на жму правый кнопка мы же клеит
00:00:59
сишарп скрипт и для старта я бы хотел
00:01:04
чтоб за нами следила камера чтобы камера
00:01:07
двигалась непосредственно за персонажем
00:01:08
поэтому я создам скрипт camera
00:01:10
controller
00:01:11
сделайте это достаточно легко запускаем
00:01:14
скрипт сначала надо создать пару
00:01:18
переменных 1 public playercontroller
00:01:21
player эта переменная позволит мне
00:01:25
считывать информацию из скрипта
00:01:27
playercontroller который есть на нашем
00:01:30
моего персонажа а просто я назвал player
00:01:33
вторая переменная vector3
00:01:36
лист позиция если мы не пишем public
00:01:40
перед переменной это значит что она
00:01:42
автоматически становится проявит то есть
00:01:44
она не будет отображаться в инспекторе
00:01:47
unity мне соответственно эта перемена не
00:01:49
понадобится в инспекторе unity и эта
00:01:52
переменная позволит двигаться по осям x
00:01:56
y z для камер корректней ставить vector3
00:02:00
потому что по сути камера может
00:02:02
приближаться отдаляться может
00:02:04
становиться выше нее же левее и правее
00:02:06
но для обычных объектов 2d шинах мы
00:02:08
обычно делаем движение vector2 только x
00:02:11
y ниже также укажем переменную float
00:02:14
действенность мув а при помощи этой
00:02:19
перемены мы сможем считывать информацию
00:02:21
куда двигается наш персонаж если
00:02:24
предыдущая перемены укажет где он он в
00:02:27
последний раз был то вот эта переменная
00:02:30
укажет нам до какого расстояния сейчас
00:02:33
двинулся и куда надо двигаться камере
00:02:36
старте и сначала реализую сама с собой
00:02:39
переменную playercontroller для этого я
00:02:41
напишу плеер равняется fine
00:02:43
object of type треугольные скобки
00:02:46
playercontroller то есть unity будет
00:02:49
искать объект на котором находится
00:02:52
скрипт playercontroller и когда он его
00:02:54
найдет он его присвоит к переменной
00:02:56
плеер что очень очень удобно также в
00:02:59
старте я укажу что last позиция
00:03:02
равняется плеер . transform . позиция то
00:03:06
есть последнее положение персонажа это
00:03:11
то где он сейчас находится его transform
00:03:14
в аптеке укажу что a distance ту мув
00:03:18
равняется плеер . transform . позиция .
00:03:21
x минус пласт позиция .
00:03:25
x расстояние в которое надо двигаться и
00:03:28
в какую сторону надо двигаться будет
00:03:30
высчитываться по такой формуле то есть
00:03:33
текущее положение где вот уже сейчас
00:03:37
находится персонаж и где он стоял в
00:03:39
предыдущей точки вот это и есть смещение
00:03:41
нашей камеры также здесь ухожу transform
00:03:44
. позиция равняется
00:03:46
new vector3 то есть движение нашей камер
00:03:51
равняется vector3 тоже так для камеры
00:03:53
лучше делать vector3 скобочках transform
00:03:57
. позицию .
00:03:58
x плюс distance тубу здесь я буду
00:04:01
реализовывать движение камеры только по
00:04:03
иксу потому что мой персонаж не сможет
00:04:05
двигаться вверх если вам необходимо чтоб
00:04:08
а двигался вверх то же самое надо будет
00:04:10
проделать для игрека но в моем случае
00:04:13
для и горькой напишу только transform .
00:04:15
позицию .
00:04:16
y , то есть оно никак не должен
00:04:18
смещаться
00:04:19
и трансформ . позиция . за это
00:04:23
по за эту тоже никак не должно пока что
00:04:24
смещаться ниже также я добавлю что у нас
00:04:28
позиция равняется плеер . transform .
00:04:31
позиция то есть после всех этих действий
00:04:34
последнее положение моего персонажа
00:04:37
будет равняться его текущему положению
00:04:40
когда это все сработает и камера
00:04:42
сместиться и вот по такому циклу все
00:04:44
будет работать перетаскиваем скрипт на
00:04:47
камеру нажимаем play тестируем мой
00:04:52
персонаж двигается и камера двигается
00:04:54
вместе с ним все отлично так перейдем к
00:04:58
работе с платформами вот у меня есть
00:05:01
платформа и я создам отдельный скрипт
00:05:04
справа который назову платформ джин
00:05:07
рейтер то есть что то что будет
00:05:09
генерировать платформы создания платформ
00:05:12
я это буду делать так чтобы у меня
00:05:15
платформы генерировались относительно
00:05:17
моей камеры персонажи будет двигаться
00:05:19
камера двигаться вместе за ним и вот как
00:05:23
раз она нам и поможет поэтому я на
00:05:25
камере нажму правой кнопкой мыши и
00:05:27
выберу crate инте
00:05:28
он создает game объект который я назову
00:05:34
джин рейтер point это будет . вот этой
00:05:37
генерации она будет стоять где-то в
00:05:40
стороне и постоянно двигаться вместе с
00:05:42
камерой что очень и очень удобно также
00:05:45
на пустом месте от опять же нажму правой
00:05:47
кнопкой мыши клеить им pci выберу game
00:05:50
object ее назову его platforms и туда и
00:05:54
непосредственно помещу платформу который
00:05:56
уже есть
00:05:57
с дублирую один раз и переставлю куда-то
00:06:00
эту платформу вот так вот рядышком
00:06:03
все у меня есть две платформы
00:06:07
единственное что наверное я удалюсь
00:06:08
делаете платформе чуть покороче чтобы
00:06:10
вечность не бежали и вот теперь из
00:06:13
дублирует поставленную рядышком хорошо
00:06:16
вернусь в это generate a point в камере
00:06:19
и поставлю куда-то вправо то есть он
00:06:21
будет учитывать положение этой точке
00:06:23
относительно этой точки постоянно
00:06:24
создавать новые платформы справа в
00:06:28
инспекторе я задам какой-то цвет этой
00:06:31
формочки и когда я буду прям
00:06:32
отца вот я буду видеть эту точку ok
00:06:35
запускаем скрипт платформ джин рейтер и
00:06:38
тут для начала надо сделать пару
00:06:41
переменках первой переменной a public
00:06:43
game object платформ непосредственно
00:06:45
объект платформа которая которая должна
00:06:47
генерироваться 2 public transform
00:06:50
generation point это перемены будет
00:06:53
отвечать за положение вот этой точке
00:06:55
относительно которые будут появляться
00:06:57
элементы и также public float distance
00:07:00
between при помощи этого параметра я
00:07:03
смогу корректировать расстояние между
00:07:07
платформами
00:07:08
что достаточно удобно они же я создам
00:07:15
еще одну переменную cloud platform with
00:07:17
это будет размерные платформы чтобы он
00:07:20
понимал когда платформа начинается когда
00:07:22
платформа заканчивается и в старте надо
00:07:25
бы указать ее ширину platform with
00:07:28
равняется платформ . get компонент и в
00:07:32
треугольных скобках box collider 2d по
00:07:34
сути он считывает ширину мои платформы
00:07:36
при помощи бокс коллайдера который
00:07:39
находится на этой платформе что очень
00:07:41
даже удобно после этого всего пишем .
00:07:43
сайт . x
00:07:45
так как мне считывать информацию о
00:07:47
ширине платформы надо только по оси x
00:07:50
при помощи этой строки я это сделаю так
00:07:54
вернёмся в unity создадим здесь еще один
00:07:57
пустой game of jack который назовем
00:08:01
платформ менеджер
00:08:03
этот элемент будет хранить на себе
00:08:05
скрипт и будет позволять манипулировать
00:08:07
все-таки с этими платформами когда я
00:08:09
помещу скрипт на этот платформ менеджер
00:08:11
я увижу 3 ячейки платформ логично я
00:08:15
перетащу первую платформу в туву ячейку
00:08:18
generation point опять же тащим с камеры
00:08:22
generation point сюда и distance between
00:08:27
о пятерке там думаю пока что хватит
00:08:30
потом посмотрим что что можно поменять
00:08:34
для платформ менеджера не мешало бы
00:08:37
указать четкое положение 2 платформы так
00:08:41
он относительно нее будет работать и от
00:08:44
на приятность для неё он начнет отсчет
00:08:47
поэтому я возьму этот платформе не джер
00:08:50
затащу
00:08:51
в блок platforms дальше я возьму вот эту
00:08:56
вторую платформу и буду копировать у нее
00:08:58
положение икса и игрека из это и
00:09:01
помещать в положение этого платформ
00:09:04
менеджера и он тогда станет точно в
00:09:08
середину этого элемента а потом когда я
00:09:11
это центрирую просто вытащу его из блока
00:09:14
платформ съем будет как самостоятельный
00:09:16
настоять он уже будет четко по середине
00:09:18
вот этой платформы окей возвращаемся в
00:09:21
скрипт платформ джин рейтер тут надо
00:09:25
задать условия в апдейте и в скобочках
00:09:28
transform дочка позиция .
00:09:30
x меньше generation point . позиция .
00:09:35
x то есть если моя вот эта точка ушла за
00:09:39
пределы
00:09:41
положение generation point to transform
00:09:45
. позиций оно равняется new vector3
00:09:48
transform . позиция . x плюс
00:09:51
platform with плюс distance between то
00:09:56
есть положение моего отзыва платформ
00:10:00
generate эра должно все еще использовать
00:10:03
vector3 где в первом случае это
00:10:05
положение по иксу плюс ширина платформы
00:10:09
плюс расстояние между этими платформами
00:10:14
но transform . позицию .
00:10:17
игроки transform позиция . z не должны
00:10:20
никак меняться поэтому я просто их
00:10:21
запишу они по синтаксису должны быть тут
00:10:23
я просто никаких не буду менять
00:10:27
если это все выполняется и проходит это
00:10:30
первая строка то следующей строкой я
00:10:32
указываю что in station то есть должно
00:10:35
за спаунится в скобочках платформ
00:10:38
платформам и и закидывали в ячейку
00:10:40
первую , transform . позиция то есть
00:10:44
положение моего
00:10:46
этого платформы generate ира , transform
00:10:51
. rotation и под его углом вращать нам не
00:10:54
надо поэтому оставляем таким как она
00:10:56
есть
00:10:57
смотрим они заспавнились так как вперед
00:11:02
уже прошел этот generation point
00:11:04
относительно камеры и если сейчас
00:11:07
перепрыгиваю не до прыгаю но вот очень
00:11:10
хороший баг который сейчас покажу как
00:11:12
исправить застревание платформах это все
00:11:15
из-за материалов вот так во первых я
00:11:18
наверно передвину немного
00:11:20
вот эту вторую платформу так как мы не
00:11:22
дотрагиваемся
00:11:24
я зайду в ассеты через правую кнопку
00:11:27
мыши cry и создам еще один folder еще
00:11:30
одну папку который назвал материал
00:11:32
внутри
00:11:33
зайду в эту папку нашего правой кнопкой
00:11:35
мыши 3 физиков материал 2d и поставлю
00:11:44
ему friction на 0 дальше выбрав
00:11:48
персонажа
00:11:49
у него в бокс коллайдере и в ridgid body
00:11:52
есть материал который можно прикреплять
00:11:53
можно не прикреплять а у можем
00:11:56
перетащить туда этот материал который
00:11:57
укажет что никакого трения быть не
00:12:00
должно и если сейчас запустим play
00:12:04
во-первых платформы видно что первая
00:12:06
сместилась ближе
00:12:07
но остальные оставили зазор между друг
00:12:10
другом почему потому что плеер джин
00:12:12
рейтер я дней
00:12:14
исправил ему тоже надо заменить
00:12:17
положение кхл его положению платформы я
00:12:19
снова его затаскивают блок platforms
00:12:22
забираю из второй платформы положения по
00:12:25
иксу
00:12:26
переношу его вот в мой менеджер
00:12:30
вытаскиваю из блока платформ спрей
00:12:35
запускаем смотрю что получается все
00:12:37
платформы уменьшили расстоянии друг с
00:12:39
другом сейчас я чуть удалюсь покажу что
00:12:42
происходит если я вот буду проходить
00:12:47
потихоньку вперед видно что платформа
00:12:49
будут спавнится как только вот этот
00:12:52
point уходит за пределы следующей
00:12:55
платформы и они будут спаунится
00:12:57
спаунится с по улице
00:12:58
конечно я так могу бежать сколько мне
00:13:01
необходимо
00:13:03
несложно думаю вполне несложно не
00:13:06
обычные действия еще не показывал такие
00:13:08
действия ни в каких уроках в следующем
00:13:10
видео думаю надо приступать к удалению
00:13:12
предыдущих платформ чтобы не заспавнился
00:13:15
этих платформ миллионы у нас не подвисла
00:13:17
игра она этом пока что становимся если
00:13:20
вам понравилось видео и вы хотите
00:13:21
поддержать меня кофейком ссылка на мой
00:13:24
patreon будет в описании а также ставьте
00:13:26
лайк и подписывайтесь на канал и
00:13:27
увидимся в следующем видео

Описание:

С этого видео я начинаю серию уроков по созданию игры в стиле Runner. Делать я это буду на Unity при помощи C#. В этом видео я покажу как сделать слежение камеры за персонажем и спаун платформ. https://www.patreon.com/graphicaldesignua - мой патреон для поддержки) https://t.me/joinchat/K3HCV0nUjP4X7kCvM346gw - телеграм канал в котором можете пообщаться с другими разработчиками. https://unity.com/ru - ссылка на Unity

Готовим варианты загрузки

popular icon
Популярные
hd icon
HD видео
audio icon
Только звук
total icon
Все форматы
* — Если видео проигрывается в новой вкладке, перейдите в неё, а затем кликните по видео правой кнопкой мыши и выберите пункт "Сохранить видео как..."
** — Ссылка предназначенная для онлайн воспроизведения в специализированных плеерах

Вопросы о скачивании видео

mobile menu iconКак можно скачать видео "Runner - спаун платформ - создание с нуля - Unity легко"?mobile menu icon

  • Сайт http://unidownloader.com/ — лучший способ скачать видео или отдельно аудиодорожку, если хочется обойтись без установки программ и расширений. Расширение UDL Helper — удобная кнопка, которая органично встраивается на сайты YouTube, Instagram и OK.ru для быстрого скачивания контента.

  • Программа UDL Client (для Windows) — самое мощное решение, поддерживающее более 900 сайтов, социальных сетей и видеохостингов, а также любое качество видео, которое доступно в источнике.

  • UDL Lite — представляет собой удобный доступ к сайту с мобильного устройства. С его помощью вы можете легко скачивать видео прямо на смартфон.

mobile menu iconКакой формат видео "Runner - спаун платформ - создание с нуля - Unity легко" выбрать?mobile menu icon

  • Наилучшее качество имеют форматы FullHD (1080p), 2K (1440p), 4K (2160p) и 8K (4320p). Чем больше разрешение вашего экрана, тем выше должно быть качество видео. Однако следует учесть и другие факторы: скорость скачивания, количество свободного места, а также производительность устройства при воспроизведении.

mobile menu iconПочему компьютер зависает при загрузке видео "Runner - спаун платформ - создание с нуля - Unity легко"?mobile menu icon

  • Полностью зависать браузер/компьютер не должен! Если это произошло, просьба сообщить об этом, указав ссылку на видео. Иногда видео нельзя скачать напрямую в подходящем формате, поэтому мы добавили возможность конвертации файла в нужный формат. В отдельных случаях этот процесс может активно использовать ресурсы компьютера.

mobile menu iconКак скачать видео "Runner - спаун платформ - создание с нуля - Unity легко" на телефон?mobile menu icon

  • Вы можете скачать видео на свой смартфон с помощью сайта или pwa-приложения UDL Lite. Также есть возможность отправить ссылку на скачивание через QR-код с помощью расширения UDL Helper.

mobile menu iconКак скачать аудиодорожку (музыку) в MP3 "Runner - спаун платформ - создание с нуля - Unity легко"?mobile menu icon

  • Самый удобный способ — воспользоваться программой UDL Client, которая поддерживает конвертацию видео в формат MP3. В некоторых случаях MP3 можно скачать и через расширение UDL Helper.

mobile menu iconКак сохранить кадр из видео "Runner - спаун платформ - создание с нуля - Unity легко"?mobile menu icon

  • Эта функция доступна в расширении UDL Helper. Убедитесь, что в настройках отмечен пункт «Отображать кнопку сохранения скриншота из видео». В правом нижнем углу плеера левее иконки «Настройки» должна появиться иконка камеры, по нажатию на которую текущий кадр из видео будет сохранён на ваш компьютер в формате JPEG.

mobile menu iconСколько это всё стоит?mobile menu icon

  • Нисколько. Наши сервисы абсолютно бесплатны для всех пользователей. Здесь нет PRO подписок, нет ограничений на количество или максимальную длину скачиваемого видео.