Здравствуйте, в данном уроке мы научимся создавать динамические времена суток(день и ночь). Это не сложный процесс, но у вас должны быть базовые знания редактора Unreal Engine 4 и небольшой опыт работы с Blueprint.
Создайте новый уровень. (Вы также можете использовать готовый уровень, но убедитесь, что он имеет SkyDome и directional light ). Так же вы можете добавить несколько объектов, что бы увидеть некоторые тени от солнца.
Следующий этап данного урока, это настройка освещения. Выберите Dominant Directional Light и перейдите к панели деталей и свойств (details panel).
В блоке "Transform" измените состояние свойства "Mobility " на "Movable .". Это добавит динамические тени на сцену.
Так же, необходимо убрать галочку с "Cast Static Shadows ".
Чтобы действительно получить динамическое время суток, мы должны использовать Level Blueprint - необходимо вращать наше "солнце". Вы можете использовать Matinee или Timeline, но здесь мы будем просто вращать наше "солнце" каждый кадр.
Перед тестирования нашей работы, пересчитайте освещение мира. После чего можете запустить симуляцию и увидеть, как проходят времена суток (рассвет/день/сумерки/ночь) и как динамично меняется освещение и как просчитываются тени объектов.
Динамическую систему суток лучше использовать вместе с Global Illumination (GI). Хотя эта функция работает пока еще не в полном объеме, но вы можете найти информацию о ней .
Убедитесь, что вы установили солнцу значение "Movable", и что "Cast Static Shadows" - отключена. Кроме того, убедитесь, что ваш "SUNSPEED" в Blueprint устанавливается в достаточно большое число. (Я рекомендую 30 для отладки.)
Это означает, что вы не создали "Update Sun Direction" узел должным образом в вашем скрипте. Эта функция должна вызываться при каждом тике. Если вы не видите возможность добавить эту функцию, убедитесь, что у вас есть свой skydome .
Скорость солнца контролируется переменной "SUNSPEED" в вашем скрипте. Значение этого параметра устанавливает сколько градусов солнце будет вращаться в одну секунду. Например, при значении "SUNSPEED" в 90, это займет 4 секунды, что бы прошли сутки. Просто сократить это значение, чтобы замедлить движение солнца.
В данном коде, мы определяем наше время суток: день это или ночь. Вы можете иметь способ для уровня знать, является ли это ночь или день. Если вы используете Matinee, это довольно легко сделать; просто поставить пользовательские события, чтобы вызвать желаемые результаты. Однако, если вы используете метод, который я продемонстрировал выше, это может быть сложнее.
Теперь нам нужно использовать переменную "Ночь". Мы создали некоторые отдаленные события, вызываемый при изменении состояния от дня к ночи:
Вы можете делать все, что вы хотите с удаленными событиями, например, включать различные звуки окр. среды и так далее. Вот мои настройки пользовательских событий:
Если вы хотите использовать более сложные события дня и ночи, лучше использовать Matinee. Вы будете иметь гораздо больший контроль над всем процессом.
Этот курс разработан с целью научить вас С++ с нуля, начиная с уровня новичка и проходя до продвинутых уровней и техник. Этот курс подготовит вас для программирования видео игр в Unreal Engine.
Хотите познакомиться с миром интерактивного звука? В курсе "Интерактивный саунд-дизайн с Wwise для Unity" вы узнаете основы интерактивного звука от концепции до окончательной интеграции в игровом движке.
В современном конкурентном мире концептуального дизайна и иллюстрации границы между 3D и 2D становятся все более размытыми.Этот видео-курс научит вас основным приемам для интеграции программы Blender в рабочий процесс двумерного рисования.
В этом курсе из 6 видеоуроков я нарисую 4 разных эскиза, используя основу, созданную в 3D Coat. При выполнении каждого из рисунков я буду сосредотачиваться на применении различных инструментов, чтобы показать вам гибкость этой программы.
В этом курсе вы научитесь рисовать разные головы и лица с любого угла. Вы научитесь популярным техникам. Деление лица на три части. Как расположить элементы лица и установить пропорции. Научитесь рисовать отдельные области лица.
В этой электронной книге наши художники будут разминать свои мускулы креатива, чтобы показать нам, как создавать не только органические формы животных, но также и неорганические формы, которые составляют их защитную броню и вооружение.
В этой серии мы рассмотрим весь процесс создания грузового космического корабля с нуля, включая моделирование, нанесение износа, декалей, создание освещения, рендеринг и немного простой анимации, чтобы вдохнуть жизнь.
Перейдите от идеи к сценарию, а от сценария - на экран… при этом сохраняя свое творческое видение и рассказывая историю людям, которым будет интересно на это смотреть.
В этом курсе содержится 14 тематических лекций. Сюда входит порядка 12 часов чистого обучения, которые позволит вам пошагово изучить цифровую живопись от азов до уровня эксперта.
Unity Game Dev Courses: Swords and Shovels это комплексная серия курсов, которая проведет вас шаг за шагом через весь процесс разработки игры. Вы научитесь основным навыкам, используя настоящие ассеты из игры Swords and Shovels.
Персонажи являются популярным предметом для CG художников. Однако в этой серии книг мы будет приближаться к созданию персонажей несколько иными методами. Каждый из художников будет предоставлять их, начиная с 2D концептов и технических рисунков Sci-Fi дроидов.
В этой серии электронных книг наши художники будут показывать нам, как разрабатывать дизайн дроида так, как будто он делается в рамках игровой индустрии. Книга включает в себя показ работы над дизайном и подробное рассмотрение процесса создания технических рисунков.
Здесь вы сможете найти подробное описание уроков и видео обучения на движке Unreal Engine 4 с нуля.
Если вам надоело просто играть в игры и, чувствуется, что хотелось бы самостоятельно что-то создавать, то инструментарий UE4 может стать для вас хорошей отправной точкой.
При изучении Unreal Engine 4 вам не потребуется учить никаких языков программирования, всё будет куда проще, благодаря специальным инструментам графического и схемового отображения.
В первом своём видео я коснулся объяснения относительной доступности освоения UE4, хотя трудностей на этом пути будет предостаточно.
Начинаю изучать Unreal Engine 4, хватит говорить пора действовать!
Запуск Unreal Engine 4 на слабом ПК, + как его установить
Мой прогресс в UE4 #1. Построение приятного ландшафта
Мой прогресс в Unreal Engine 4 #2. Фонарик, ходьба - бег и т.д.
Мой прогресс в Unreal Engine 4 #3. Простая сцена из F.E.A.R.? Попробуем:)
V.L.A.D.I.K. - сталкер на минималках, почему сам забросил UE4
Как итог моего обучения Unreal Engine 4 - это бесполезная трата времени, потому что вы обучаетесь узконаправленному специализированному инструменту, который нужен только для игр, а их разработка крайне время и трудозатратное занятие, причём не факт, что вы на этом хоть что-то заработаете. Лучше изучать языки программирования - они многофункциональны, от разработки сайтов, программ\приложений, до сложных вычислений и технологий вроде блокчейна. На них реально зарабатывать уже спустя полгода обучения, ну а дальше вы на расхват в любой стране мира. Теперь делайте вывод нужны ли вам траты своего драгоценного времени на игровые движки.
Unreal Engine 4 - это набор инструментов для разработки игр, имеющий широкие возможности: от создания двухмерных игр на мобильные до AAA-проектов для консолей. Этот движок использовался при разработке таких игр, как ARK: Survival Evolved , Tekken 7 и Kingdom Hearts III .
Разработка в Unreal Engine 4 очень проста для начинающих. С помощью системы визуального создания скриптов Blueprints Visual Scripting можно создавать готовые игры, не написав ни строчки кода! В сочетании с удобным интерфейсом это позволяет быстро изготавливать рабочие прототипы.
В этой части туториала по Unreal Engine 4 мы ознакомимся с основными возможностями программы. Вот основные темы, которые будут в нём рассмотрены:
Примечание: туториал будет состоять из восьми частей:
Перед загрузкой программы запуска необходимо будет создать учётную запись. После её создания скачайте программу запуска, соответствующую вашей операционной системе.
После скачивания и установки программы запуска откройте её. Появится следующее окно:
Введите адрес электронной почты и пароль, использованный для скачивания программы загрузки и нажмите на Sign In . После выполнения входа откроется такое окно:
Нажмите на Install Engine в левом верхнем углу. Программа запуска перейдёт к экрану, на котором можно будет выбрать устанавливаемые компоненты.
Примечание: Epic Games постоянно обновляет Unreal Engine, поэтому ваша версия движка может слегка отличаться от представленной на скриншотах. Например, после написания первого черновика этого туториала версия уже обновилась до 4.14.3! Туториал подойдёт вам, если у вас есть версия не ниже 4.14.
По умолчанию выбраны Starter Content , Templates and Feature Packs и Engine Source . Лучше так всё и оставить. Они будут полезны по следующим причинам:
Выбрав нужные компоненты, нажмите на Install . После завершения установки движок появится в библиотеке. Теперь настало время создать проект.
Нажмите на вкладку Blueprint . Здесь можно выбрать один из шаблонов. Однако, поскольку мы начинаем с нуля, то выберем шаблон Blank .
Ниже будут перечисленные дополнительные параметры.
Вот, за что отвечает каждая опция:
Сменить папку хранения проекта можно, нажав на многоточие в конце поля Folder .
Имя проекта не является названием игры, так что не волнуйтесь, если хотите название позже. Выберите текст в поле Name и введите BananaTurntable .
И наконец нажмите на Create Project .
Чтобы Unreal мог использовать файлы, их нужно импортировать. Перейдите в Content Browser и нажмите на Import .
С помощью диспетчера файлов найдите папку, в которой находятся Banana_Model.fbx и Banana_Texture.jpg are. Выделите оба файла и нажмите Open .
Unreal предложит несколько вариантов импорта файла.fbx. Снимите флажок Import Materials , потому что мы будем создавать собственный материал. Остальные параметры можно не менять.
Нажмите на Import . Два файла появятся в Content Browser.
При импорте файла на самом деле он не сохраняется в проект, если не указать этого явным образом. Сохранять файлы можно, нажав на файл правой клавишей мыши и выбрав Save . Также можно сохранить все файлы за раз, выбрав File\Save All . Старайтесь сохраняться почаще!
Учтите, что в Unreal модели называются «мешами» (meshes ). Теперь у нас есть меш банана, настало время добавить его на уровень.
Чтобы добавить на уровень меш, нажмите правой клавишу мыши и перетащите Banana_Model из Content Browser во Viewport. Отпустите левую клавишу мыши и меш добавится на уровень.
Объекты на уровне можно перемещать , поворачивать и масштабировать . Горячие клавиши для этих действий - W , E и R . После нажатия на них можно использовать манипулятор:
Чтобы придать банану цвет и детали, необходимо создать материал .
Назовите материал Banana_Material , а затем дважды нажмите левой клавишей мыши на файле, чтобы открыть его в редакторе материалов.
Ноды составляют бОльшую часть материала. Существует множество типов нодов, имеющих различные функции.
У нодов есть входы и выходы, представленные кругом со стрелкой. Входы расположены слева, а выходы - справа.
Вот пример с использованием нодов Multiply и Constant3Vector , добавляющих текстуре жёлтого цвета:
У материалов есть особый нод, называемый нодом Result , который в нашем случае уже создан как Banana_Material . Здесь заканчиваются со временем все ноды. То, что подключено к этому ноду, определяет внешний вид конечного материала.
Для текстурирования банана мы используем Banana_Texture.jpg . Применить в материале текстуру позволяет нод TextureSample .
Перейдите к панели Palette и найдите TextureSample . Добавьте нод, удерживая левую клавишу мыши и перетащив его на схему.
Для выбора текстуры необходимо сначала выделить нод TextureSample . Перейдите в панель Details и нажмите на раскрывающийся список , расположенный справа от Texture .
Откроется меню, в котором перечислены все текстуры проекта. Выберите Banana_Texture .
Чтобы увидеть текстуру на меше предварительного просмотра, нужно подключить её к ноду Result . Удерживайте левую клавишу мыши на белом контакте выхода нода TextureSample . Перетащите его на входной контакт Base Color нода Result .
Вернитесь во Viewport, чтобы увидеть текстуру на меше предварительного просмотра. Можно поворачивать его (удерживая левую клавишу мыши и перемещая мышь), чтобы рассмотреть другие детали.
Нажмите на Apply в Toolbar, чтобы обновить материал, и закройте редактор материалов после завершения.
Перейдите в панель Details и найдите раздел Materials . Нажмите на раскрывающееся меню , расположенное справа от Element 0 , и выберите Banana_Material .
Закройте редактор мешей, вернитесь к основному редактору и посмотрите на Viewport. Вы увидите, что теперь на банане есть текстура. Поздравляю, вы теперь знаете всё необходимео, чтобы стать дизайнером уровней!
Примечание: если освещение слишком тёмное, можно изменить его, зайдя в World Outliner и нажав на Light Source . В панели Details найдите параметр Intensity и увеличьте его значение.
В простейшем случае Blueprint представляет собой «вещь». Blueprints позволяют создавать свои поведения для объектов. Объект может быть чем-то физическим (типа поворотного стола) или чем-то абстрактным, например, системой здоровья.
Хотите создать движущийся автомобиль? Используйте Blueprint . А как насчёт летающей свинки? Используйте Blueprints . А если нужен взрывающийся при касании котик? Blueprints .
Как и в материалах, в Blueprints используется система на основе нодов. Это значит, что достаточно создать ноды и соединить их - никакого кода не требуется!
Примечание: если вы предпочитаете писать код, то используйте вместо этого C++.
Blueprints просты в использовании, однако не так быстры, как код на C++. То есть если вам нужно создать что-то «тяжёлое» с точки зрения вычислений, например, сложный алгоритм, то лучше воспользоваться C++.
Но даже если вы предпочитаете C++, то бывают случаи, когда оптимальнее использовать Blueprints. Вот некоторые из преимуществ Blueprints:
Откроется окно с запросом выбора родительского класса. Ваш Blueprint будет наследовать все переменные, функции и компоненты из выбранного родительского класса. Уделите время на изучение возможностей каждого класса.
Примечание: поскольку мы можем расположить классы Pawn и Character , они также являются акторами (Actors ).
Поворотный стол будет находиться на месте, поэтому самым подходящим будет класс Actor . Выберите Actor и назовите новый файл Banana_Blueprint .
Дважды нажмите на Banana_Blueprint , чтобы открыть его. Нажмите на Open Full Blueprint Editor , если появится подобное окно:
Blueprint editor состоит из четырёх основных панелей:
Однако компоненты могут быть не только физическими объектами.
Например, чтобы автомобиль мог двигаться, можно добавить компонент движения. Можно даже заставить машину летать, если добавить компонент полёта.
Примечание: компонент DefaultSceneRoot при запуске приложения не отображается, он виден только в редакторе.
Поворотный стол будет использовать два компонента:
Неплохо было бы сделать основание чуть короче. Активируйте манипулятор масштаба , нажав R , а затем уменьшите масштаб (точный размер неважен, можно будет изменить его позже).
Для отображения банана выберите компонент Static Mesh , а затем нажмите на вкладку Details . Нажмите на раскрывающий списков в правой части Static Mesh и выберите Banana_Model .
Переместите банан, если он находится в неправильном положении. Для этого активируйте манипулятор перемещения , нажав W , а затем переместите его вверх.
В отличие от своих близких родственников - нодов материалов - ноды Blueprint имеют особые контакты, называемые контактами Execution . Контакт слева - это вход, контакт справа - выход. У всех нодов есть хотя бы по одному входу и выходу.
Если нод имеет контакт входа, то его нужно подключить, чтобы он заработал. Если нод не поключен, все последующие ноды не будут выполняться.
Вот пример:
Node A и Node B будут выполняться, потому что у их входных контактов есть подключение. Node C и Node D никогда не выполняются, потому что входной контакт Node C не имеет подключения.
Если переместить, повернуть или отмасштабировать корневой компонент, то тоже самое произойдёт и с прикреплёнными к нему компонентами. Благодаря этому поведению можно поворачивать Cylinder и Static Mesh одновременно, а не по отдельности.
Реализация вращения объекта настолько проста, что требует всего одного нода. Нажмите правой клавишей на пустое пространство в графе, чтобы открыть меню доступных нодов. Найдите AddLocalRotation . Нам нужно поворачивать основание и банан, поэтому мы просто будем вращать корневой компонент. Выберите AddLocalRotation (DefaultSceneRoot) .
Примечание: если нода нет в списке, снимите флажок Context Sensitive в правом верхней части меню.
В вашем графе теперь появится новый нод AddLocalRotation . Вход Target автоматически подключится к выбранному компоненту.
Чтобы задать значение вращения, перейдите к входу Delta Rotation и измените значение Z на 1.0 . Благодаря этому Blueprint сможет выполнять вращение относительно оси Z. Чем выше значения, тем быстрее будет вращаться стол.
Чтобы поворотный стол вращался постоянно, нужно вызывать AddLocalRotation в каждом кадре. Для выполнения нода в каждом кадре воспользуемся нодом Event Tick . Он уже находится в графе. Если его нет, то создайте его тем же способом, что и ранее.
Перетащите выходной контакт нода Event Tick ко входному контакту нода AddLocalRotation .
Примечание: в этой реализации скорость вращения зависит от частоты кадров. Это значит, что поворотный стол на медленных компьютерах будет вращаться с меньшей скоростью, и наоборот. Для туториала это нас вполне устраивает, потому что я не хочу ничего усложнять, но в будущем я покажу, как это исправить.
Наконец, перейдите в Toolbar и нажмите на Compile , чтобы обновить Blueprint, а затем закройте Blueprint editor.
Добавление Blueprint - это тот же процесс, что и добавление меша. Удерживайте левую клавишу мыши на файле и перетащите его во Viewport.
Перейдите к Toolbar и нажмите Play , чтобы увидеть результаты своих трудов!
Примечание: если вы не удалите исходную модель банана, то можете получить предупреждение о необходимости перестройки освещения. Если удалить модель, то ошибка больше не будет проявляться.
В этой части туториала вы многое узнали, но это только небольшая часть Unreal. Если вы хотите продолжить изучение, то ждите туториала, в которой мы подробнее рассмотрим Blueprints.
Теги:
Unreal Engine 4 - это набор инструментов для разработки игр, имеющий широкие возможности: от создания двухмерных игр на мобильные до AAA-проектов для консолей. Этот движок использовался при разработке таких игр, как ARK: Survival Evolved , Tekken 7 и Kingdom Hearts III .
Разработка в Unreal Engine 4 очень проста для начинающих. С помощью системы визуального создания скриптов Blueprints Visual Scripting можно создавать готовые игры, не написав ни строчки кода! В сочетании с удобным интерфейсом это позволяет быстро изготавливать рабочие прототипы.
В этой части туториала по Unreal Engine 4 мы ознакомимся с основными возможностями программы. Вот основные темы, которые будут в нём рассмотрены:
Примечание: туториал будет состоять из восьми частей:
Перед загрузкой программы запуска необходимо будет создать учётную запись. После её создания скачайте программу запуска, соответствующую вашей операционной системе.
После скачивания и установки программы запуска откройте её. Появится следующее окно:
Введите адрес электронной почты и пароль, использованный для скачивания программы загрузки и нажмите на Sign In . После выполнения входа откроется такое окно:
Нажмите на Install Engine в левом верхнем углу. Программа запуска перейдёт к экрану, на котором можно будет выбрать устанавливаемые компоненты.
Примечание: Epic Games постоянно обновляет Unreal Engine, поэтому ваша версия движка может слегка отличаться от представленной на скриншотах. Например, после написания первого черновика этого туториала версия уже обновилась до 4.14.3! Туториал подойдёт вам, если у вас есть версия не ниже 4.14.
По умолчанию выбраны Starter Content , Templates and Feature Packs и Engine Source . Лучше так всё и оставить. Они будут полезны по следующим причинам:
Выбрав нужные компоненты, нажмите на Install . После завершения установки движок появится в библиотеке. Теперь настало время создать проект.
Нажмите на вкладку Blueprint . Здесь можно выбрать один из шаблонов. Однако, поскольку мы начинаем с нуля, то выберем шаблон Blank .
Ниже будут перечисленные дополнительные параметры.
Вот, за что отвечает каждая опция:
Сменить папку хранения проекта можно, нажав на многоточие в конце поля Folder .
Имя проекта не является названием игры, так что не волнуйтесь, если хотите название позже. Выберите текст в поле Name и введите BananaTurntable .
И наконец нажмите на Create Project .
Чтобы Unreal мог использовать файлы, их нужно импортировать. Перейдите в Content Browser и нажмите на Import .
С помощью диспетчера файлов найдите папку, в которой находятся Banana_Model.fbx и Banana_Texture.jpg are. Выделите оба файла и нажмите Open .
Unreal предложит несколько вариантов импорта файла.fbx. Снимите флажок Import Materials , потому что мы будем создавать собственный материал. Остальные параметры можно не менять.
Нажмите на Import . Два файла появятся в Content Browser.
При импорте файла на самом деле он не сохраняется в проект, если не указать этого явным образом. Сохранять файлы можно, нажав на файл правой клавишей мыши и выбрав Save . Также можно сохранить все файлы за раз, выбрав File\Save All . Старайтесь сохраняться почаще!
Учтите, что в Unreal модели называются «мешами» (meshes ). Теперь у нас есть меш банана, настало время добавить его на уровень.
Чтобы добавить на уровень меш, нажмите правой клавишу мыши и перетащите Banana_Model из Content Browser во Viewport. Отпустите левую клавишу мыши и меш добавится на уровень.
Объекты на уровне можно перемещать , поворачивать и масштабировать . Горячие клавиши для этих действий - W , E и R . После нажатия на них можно использовать манипулятор:
Чтобы придать банану цвет и детали, необходимо создать материал .
Назовите материал Banana_Material , а затем дважды нажмите левой клавишей мыши на файле, чтобы открыть его в редакторе материалов.
Ноды составляют бОльшую часть материала. Существует множество типов нодов, имеющих различные функции.
У нодов есть входы и выходы, представленные кругом со стрелкой. Входы расположены слева, а выходы - справа.
Вот пример с использованием нодов Multiply и Constant3Vector , добавляющих текстуре жёлтого цвета:
У материалов есть особый нод, называемый нодом Result , который в нашем случае уже создан как Banana_Material . Здесь заканчиваются со временем все ноды. То, что подключено к этому ноду, определяет внешний вид конечного материала.
Для текстурирования банана мы используем Banana_Texture.jpg . Применить в материале текстуру позволяет нод TextureSample .
Перейдите к панели Palette и найдите TextureSample . Добавьте нод, удерживая левую клавишу мыши и перетащив его на схему.
Для выбора текстуры необходимо сначала выделить нод TextureSample . Перейдите в панель Details и нажмите на раскрывающийся список , расположенный справа от Texture .
Откроется меню, в котором перечислены все текстуры проекта. Выберите Banana_Texture .
Чтобы увидеть текстуру на меше предварительного просмотра, нужно подключить её к ноду Result . Удерживайте левую клавишу мыши на белом контакте выхода нода TextureSample . Перетащите его на входной контакт Base Color нода Result .
Вернитесь во Viewport, чтобы увидеть текстуру на меше предварительного просмотра. Можно поворачивать его (удерживая левую клавишу мыши и перемещая мышь), чтобы рассмотреть другие детали.
Нажмите на Apply в Toolbar, чтобы обновить материал, и закройте редактор материалов после завершения.
Перейдите в панель Details и найдите раздел Materials . Нажмите на раскрывающееся меню , расположенное справа от Element 0 , и выберите Banana_Material .
Закройте редактор мешей, вернитесь к основному редактору и посмотрите на Viewport. Вы увидите, что теперь на банане есть текстура. Поздравляю, вы теперь знаете всё необходимео, чтобы стать дизайнером уровней!
Примечание: если освещение слишком тёмное, можно изменить его, зайдя в World Outliner и нажав на Light Source . В панели Details найдите параметр Intensity и увеличьте его значение.
В простейшем случае Blueprint представляет собой «вещь». Blueprints позволяют создавать свои поведения для объектов. Объект может быть чем-то физическим (типа поворотного стола) или чем-то абстрактным, например, системой здоровья.
Хотите создать движущийся автомобиль? Используйте Blueprint . А как насчёт летающей свинки? Используйте Blueprints . А если нужен взрывающийся при касании котик? Blueprints .
Как и в материалах, в Blueprints используется система на основе нодов. Это значит, что достаточно создать ноды и соединить их - никакого кода не требуется!
Примечание: если вы предпочитаете писать код, то используйте вместо этого C++.
Blueprints просты в использовании, однако не так быстры, как код на C++. То есть если вам нужно создать что-то «тяжёлое» с точки зрения вычислений, например, сложный алгоритм, то лучше воспользоваться C++.
Но даже если вы предпочитаете C++, то бывают случаи, когда оптимальнее использовать Blueprints. Вот некоторые из преимуществ Blueprints:
Откроется окно с запросом выбора родительского класса. Ваш Blueprint будет наследовать все переменные, функции и компоненты из выбранного родительского класса. Уделите время на изучение возможностей каждого класса.
Примечание: поскольку мы можем расположить классы Pawn и Character , они также являются акторами (Actors ).
Поворотный стол будет находиться на месте, поэтому самым подходящим будет класс Actor . Выберите Actor и назовите новый файл Banana_Blueprint .
Дважды нажмите на Banana_Blueprint , чтобы открыть его. Нажмите на Open Full Blueprint Editor , если появится подобное окно:
Blueprint editor состоит из четырёх основных панелей:
Однако компоненты могут быть не только физическими объектами.
Например, чтобы автомобиль мог двигаться, можно добавить компонент движения. Можно даже заставить машину летать, если добавить компонент полёта.
Примечание: компонент DefaultSceneRoot при запуске приложения не отображается, он виден только в редакторе.
Поворотный стол будет использовать два компонента:
Неплохо было бы сделать основание чуть короче. Активируйте манипулятор масштаба , нажав R , а затем уменьшите масштаб (точный размер неважен, можно будет изменить его позже).
Для отображения банана выберите компонент Static Mesh , а затем нажмите на вкладку Details . Нажмите на раскрывающий списков в правой части Static Mesh и выберите Banana_Model .
Переместите банан, если он находится в неправильном положении. Для этого активируйте манипулятор перемещения , нажав W , а затем переместите его вверх.
В отличие от своих близких родственников - нодов материалов - ноды Blueprint имеют особые контакты, называемые контактами Execution . Контакт слева - это вход, контакт справа - выход. У всех нодов есть хотя бы по одному входу и выходу.
Если нод имеет контакт входа, то его нужно подключить, чтобы он заработал. Если нод не поключен, все последующие ноды не будут выполняться.
Вот пример:
Node A и Node B будут выполняться, потому что у их входных контактов есть подключение. Node C и Node D никогда не выполняются, потому что входной контакт Node C не имеет подключения.
Если переместить, повернуть или отмасштабировать корневой компонент, то тоже самое произойдёт и с прикреплёнными к нему компонентами. Благодаря этому поведению можно поворачивать Cylinder и Static Mesh одновременно, а не по отдельности.
Реализация вращения объекта настолько проста, что требует всего одного нода. Нажмите правой клавишей на пустое пространство в графе, чтобы открыть меню доступных нодов. Найдите AddLocalRotation . Нам нужно поворачивать основание и банан, поэтому мы просто будем вращать корневой компонент. Выберите AddLocalRotation (DefaultSceneRoot) .
Примечание: если нода нет в списке, снимите флажок Context Sensitive в правом верхней части меню.
В вашем графе теперь появится новый нод AddLocalRotation . Вход Target автоматически подключится к выбранному компоненту.
Чтобы задать значение вращения, перейдите к входу Delta Rotation и измените значение Z на 1.0 . Благодаря этому Blueprint сможет выполнять вращение относительно оси Z. Чем выше значения, тем быстрее будет вращаться стол.
Чтобы поворотный стол вращался постоянно, нужно вызывать AddLocalRotation в каждом кадре. Для выполнения нода в каждом кадре воспользуемся нодом Event Tick . Он уже находится в графе. Если его нет, то создайте его тем же способом, что и ранее.
Перетащите выходной контакт нода Event Tick ко входному контакту нода AddLocalRotation .
Примечание: в этой реализации скорость вращения зависит от частоты кадров. Это значит, что поворотный стол на медленных компьютерах будет вращаться с меньшей скоростью, и наоборот. Для туториала это нас вполне устраивает, потому что я не хочу ничего усложнять, но в будущем я покажу, как это исправить.
Наконец, перейдите в Toolbar и нажмите на Compile , чтобы обновить Blueprint, а затем закройте Blueprint editor.
Добавление Blueprint - это тот же процесс, что и добавление меша. Удерживайте левую клавишу мыши на файле и перетащите его во Viewport.
Перейдите к Toolbar и нажмите Play , чтобы увидеть результаты своих трудов!
Примечание: если вы не удалите исходную модель банана, то можете получить предупреждение о необходимости перестройки освещения. Если удалить модель, то ошибка больше не будет проявляться.
В этой части туториала вы многое узнали, но это только небольшая часть Unreal. Если вы хотите продолжить изучение, то ждите следующей части туториала, в которой мы подробнее рассмотрим Blueprints.
Теги: Добавить метки