Что дальше?
Сегодня вы научились основам работы с Unreal Engine, настроили своего персонажа и научились стрелять лучами. Это уже очень круто, но впереди еще очень много интересного и сложного, что предстоит узнать. В следующих уроках этого цикла статей я расскажу и покажу, как добавить противников, настроить их логику, наносить им урон, добавить различные эффекты на выстрел, добавить прицел и собрать вашу игру на Windows в готовый .exe файл, чтобы отправить друзьям.
Лучшей благодарностью за статью будет активность и плюсик к статье. Всем спасибо за ваше время, увидимся еще в Нереальном Движке.
А всех, кто хочет подробнее узнать о нашем урсе, приглашаю на бесплатный вебинар, в рамках которого вы сможете познакомиться с программой курса и подробно узнать о процессе обучения.
Внутриигровые настройки
Общие настройки
Сэмлирование: Используйте значение 100%, если только у вас нет какой-либо специфической причины для повышения/понижения значения.
Качество текстур (HDD/GPU): Высокие/Ультра. Высокие настройки затормаживают отрисовку строений на заднем плане. Настройки на значении Ультра обычно устраняют эту проблему (!)*
*Замечание от переводчика. Если у вас стоит SSD, то скорее всего затормаживания вы не увидите.
Качество объектов (CPU/GPU): Высокие/Ультра. На высоких настройках будет снижать качество отрисовки объектов на заднем фоне, но повысит ФПС (!)*
Качество ландшафта (CPU/GPU): Стандартные/Высокие. Чем выше настройки, тем больше проседание кадров, хотя качество изображения изменяется в лучшую сторону совсем незначительно (!)*
Качество теней (CPU/GPU): Отключено/Высокие+. Низкие настройки будут выглядеть хуже. Ультра выглядит лучше.
Качество частиц (GPU): Низкие или Стандартные. Никак не влияет на производительность.
Качество облаков (GPU): Низкие. Этот параметр абсолютно бесполезен, если только вы не находитесь в полете.
PIP (GPU): Низкие или Отключено. Конечно выглядит лучше, чем было ранее, но съедает большое кол-во кадров во время вождения ради косметического эффекта.
HDR (GPU): На низких настройках обеспечивается наилучшая производительность.
Dynamic Lights (GPU): Низкие или Высокие/Ультра. Не оказывает влияния на ФПС.
Дальность прорисовки (CPU/HDD/GPU): 1050 – определяется как Низкие настройки, 1600 – Стандартные, 2150 – Высокие, 2700 – Очень высокие, 3800 – Ультра (!)*
Объекты (CPU/HDD/GPU): 858 – Низкие, 1105 – Стандартные, 1353 – Высокие, 1601 – Оч. Высокие, 2097 – Ультра (!)*
Тени (GPU): Либо оставляем на 100, либо отключаем.
(!)* – Эти настройки оказывают наибольшее влияние на производительность
Настройки изображения (Изображение)
Режим отображения: Используйте «окно на весь экран», если вы ведете запись; для обычной игры вполне подходит «полноэкранный» режим.
Разрешение: Используйте максимальное разрешение экрана.
Соотношение сторон: Устанавливать в соответствии со спецификацией монитора
Вертикальная синхронизация: Установите значение на «Отключено», если вы не испытываете проблем с «разрывом» изображения, или имеете специфический монитор, который поддерживает 60+ ФПС.
Размер интерфейса/Яркость/Гамма: На свой вкус.
AA&PP
Подсвечивание (GPU): Слабый косметический эффект подсвечивания или отражения/блика. Устанавливайте значение на свой выбор.
Круговое размытие (GPU): Размытие на объектах. На свой выбор.
Пов. Размытие (GPU): Размытие при движении. На свой выбор.
Глубина размытия (GPU): Эффект фокусировки во время прицеливания (размыливает по краям). На свой выбор.
Фильтр резкости (GPU):
SSAO (GPU): Имитация направления света как в реальности. Рекомендуется отключить для повышения производительности.
Каустика (GPU): Отражение и преломление света (напр. Под водой). Рекомендуется отключить для повышения производительности.
FSAA (GPU): Не должно приводить к падению производительности на значениях x2/x4 (x8 для разрешений 1080p и выше). Если у вас происходит просадка ФПС при прицеливании, то рекомендуется понизить значение.
AToC (GPU): Техника, которая помогает избавиться от неровностей на листве. Рекомендуется отключить или выставить на «Только трава».
PPAA (GPU): Отключить или выставить SMAA Высокий/Ультра. Ультра никак не должен влиять на производительность **
Анизотропная фильтрация (GPU): Высокие/Ультра. Никак не влияет на производительность.
** Если вы отключите AA и будете использовать только SMAA, вы получите более простую картинку, однако повысите производительность.
Тестовый стенд
Здесь представлены спецификации моего ПК для ARMA 3
Корпус/охлаждение
- Корпус: Antec Three Hundred Two
- Куллер: Noctua NH-D14
- Контроллер вентиляторов: BitFenix Recon
- Вентиляторы: 3xNoctua NF-P12 PWM, 1xAntec TwoCool, 1xNoctua NF-A14 PWM
- ГПУ: 1xNoctua NF-P12 PWM
Комплектующие
- ЦП: Intel i7 3770k разгон до 4,5 Ггц на 1.2В
- ГПУ: Sapphire HD 7970 3GB Overclocked 1050Мгц/1500Мгц
- ОЗУ: 16Гб ДДР3 G.Skill TridentX 2400Мгц
- HDD: 1×250Гб SSD Samsung 840, 2×1.5TB HDD, 1x750Gb HDD
- Материнская плата: Gigabyte GA-Z77X-D3H
- Блок питания: Antec TruePower TP-750
- Аудио карта: ASUS Xonar DS
- Плата видео захвата: AVerMedia Live Gamer HD
Периферия
- Монитор: Samsung SyncMaster 2333
- Клавиатура: Razer BlackWidow Ultimate
- Наушники: Platronics GamCom 780
- Мышка: Logitech G402 Hyperion Fury FPS Gaming Mouse
- Коврик: Razer Vespula
- Колонки: Logitech X-230
Тестирование
После множества экспериментов я пришел к выводу, что самый оптимальный способ для тестирования настроек Арма 3 – это изменение каждого отдельно параметра с минимального значения на максимальное, затем рестарт игры и переход к значениям другого параметра. Каждая настройка была протестирована 3 раза на разрешении экрана 1920×1080 и дальности прорисовки 2150, с использованием ArmA3Mark Stratis на версии игры 1.30.127372
Контрольные значения были взяты и при минимальных настройках и при максимальных на дистанции 2150.
При анализе полученных данных, можно видеть, что в некоторых ситуациях ФПС будет различаться на 1-2 кадра, что является не более чем погрешностью и то, что при выставлении более высоких значений вы ничего не потеряете.
Обращаю ваше внимание на то, что железо, которое было использовано для тестов, дает одни результаты, в то время как ваши результаты при тестировании естественно могут разительно отличаться
- Минимальные значения – 102.33 фпс
- Мои оптимизированные настройки – 75 фпс
- Максимальные настройки – 50.33 фпс
Мои оптимизированные настройки:
Настройки приведены в соответствие с моими комплектующими и личными предпочтениями.
Основные настройки:
Разрешение: 1920×1080
Сэмплирование: 100%
Текстуры: Ультра, убирает проблемы с прорисовкой заднего фона
Объекты: Высокие, зависит от того, сколько объектов для прорисовки на заднем фоне
Ландшафт: Высокие, выше не нужно
Тени: Ультра, для детализации теней
Частицы: Стандартно, обеспечивает оптимальную производительность
Облака: Низкие, но можно и отключить
PiP: Отключено, для меня не важно
HDR: Низкие, обеспечивает оптимальную производительность
Динамический свет: Высокие
Дистанция прорисовки: 2150
Дальность прорисовки объекты: 1353
Тени: 100
AA&PP
- Подсвечивание: 100, личное предпочтение
- Круговое размытие: 25, личное предпочтение
- Пов.размытие: 12.5, личное предпочтение
- Глубина размытия: 25, личное предпочтение
- SSAO: НВАО Оч.высокие, личное предпочтение
- Каустика: Отключено, в игре даже если включено, все равно не заметите
- FSAA: 4x
- AtoC: Трава, т.к. будет легче видно через деревья
- PPAA: Отключено
- Анизотропная фильтрация: Ультра
Создаем проект
При открытии движка, он предложит несколько видов преднастроек проектов. Мы с вами делаем игру, поэтому выбираем Games и жмем кнопку Next.
В следующем окне движок предложит выбрать шаблон, на основе которого мы будем делать игру. Выбираем ThirdPerson. Он уже содержит персонажа и базовую логику для перемещения. Снова жмем Next.
В следующем окне мы настраиваем сам шаблон. Немного пояснений. Мы выбираем Blueprint проект, потому что мы будем создавать проект используя только язык визуального программирования Blueprints. Платформу выбираем Desktop/Console, потому что игру мы будем делать на ПК. Остальные настройки ставьте либо как на скриншоте, либо по своему усмотрению. Снизу задаем директорию проекта, а также имя самого проекта. Я назвал его HabrTPS. Жмем Create Project.
Разбираемся с интерфейсом движка
Когда откроется проект, вы увидите что-то похожее на скриншот ниже.
Самое интересное — по центру. Окошко с игровым миром. Оно также называется Viewport. Вы можете редактировать положения и вращения объектов просто кликая по ним и меняя режим редактирования с помощью кнопок W (изменение положения), E (изменение ротации), R (изменение размера). Также, зажав ПКМ, вы можете вращать камерой (перемещая мышь) и перемещаться по миру привычными WASDQE кнопками.
Далее Content Browser. В нем вы видите все ассеты, файлы с блупринтами, карты и все, что относится к вашему проекту. Любые взаимодействия с файлами проекта нужно делать строго с помощью Content Browser внутри Unreal Engine, иначе возникнут проблемы.
World Outliner — список всех объектов на карте, где мы находимся. Их можно выделять как по-одному, так и сразу несколько, выделяя через зажатый Shift или Ctrl.
Place Actors — панель, в которой вы можете найти любой интересующий вас объект и перетащить его на сцену, как в гифке ниже.
Стрельба методом HitScan
В игровой индустрии распространены два основных метода стрельбы. Физическими пульками, которые действительно летят по баллистике и врезаются в объекты. И так называемая лучевая стрельба (или же HitScan). HitScan выстреливает лучем (без баллистики) и поражает цель мгновенно. Такой подход используется в огромном количестве современных соревновательных и не только игр.
Вопреки многим убеждениям, в играх от третьего лица стрельба HitScan происходит не из дула пушки, а из центра нашего экрана по направлению, куда мы смотрим. Сейчас мы с вами сделаем стрельбу и отрисовку луча по нажатию ЛКМ. Стрельба пока что будет не функциональной, но сейчас нам нужно подготовить механику к дополнительной «докрутке», а нанесение урона, эффекты выстрела и прочие радости жизни будем делать в следующих частях.
Итак, первое, что нам нужно сделать — понять, что игрок нажал ЛКМ. Для этого идем в EventGraph, нажимаем ПКМ по пустой области и ищем ноду Left Mouse Button.
Нас интересует нажатие на кнопку, поэтому мы будем работать с выходным пином Pressed. По знакомой схеме ищем ноду LineTraceByChannel, именно она будет запускать луч. Соединяем эту ноду с пином Pressed.
Теперь нам необходимо указать точки откуда мы пускаем луч и куда мы пускаем луч. Стартовая точка, как я говорил ранее — это центр экрана. Но вот незадача. Экран у нас двухмерный, а мир у нас трехмерный. Т.е. курсор мы передвигаем по плоскости, которая находится во фруструме камеры (так называется усеченная пирамида, от ближней поскости которой мы и видим мир — она по сути и является нашим экраном)
Помочь получить проекцию двумерного экрана на трехмерный мир нам поможет нода Deproject Screen To World.
Из нод, что вы видите на скриншоте, соберите вот такую конструкцию.
Deproject Screen To World принимает PlayerController (о нем не сегодня) и позицию экрана в пикселях, чтобы нам получить центр экрана — нам необходимо взять размеры всего экрана и поделить их пополам с помощью ноды деления (ее можно найти как Vector2D/float). Теперь в пине WorldPosition будет проекция экранной плоскости на 3Д мир — эта точка пойдет, как точка начала луча. Соединим все как показано ниже.
Теперь необходимо указать точку куда мы будем пускать луч. У нас также есть пин WorldDirection (который является направляющим вектором, который указывает в мировых координатах куда направлен перпендикуляр к плоскости экрана). Если вы не знакомы с основами векторной алгебры, то очень советую ознакомиться с этой статьей.
Предположим, что хотим пускать луч на 10000 едениц вперед (кстати по умолчанию единица в координатах — это 1 сантиметр). Таким образом пользуясь вектором направления создаем вот такую конструкцию.
И единственное, что нам осталось — это добавить отрисовку нашего луча. Нажимаем на стрелочку на ноде трейса и ставим настройки как на скриншоте ниже.
Не забываем нажать кнопку Compile и идем тестировать в игре.
Лучи отрисовываются, как мы и ожидали. Вот именно таким образом происходит стрельба в подавляющем количестве игр от третьего лица с HitScan методом стрельбы.
Гайд по ARMA 3 (управление) часть 1
Прошу принять во внимание, что данное описание подготовлено на основе АЛЬФА версии игры – ожидается, что в полной версии игры некоторые настройки управлениябудут изменены. Я попытаюсь держать вас в курсе всех изменений, которые будут вноситься в ходе развития Arma3
Кто-то возможно поспорит со мной, однако я считаю, что это действительно так…. Arma3 вкорне меняет представление о системе управления. Студия Bohemia приложила огромные усилия для того, чтобы создать качественно новый механизм движения, системыанимации и управления мышью в Arma3.Я думаю, что каждый, кто был недоволен управлением второй части, будет на седьмом небе от счастья в связи с долгожданнымиизменениями.
В Arma3 существуют несколько вещей, которые должны быть усвоены КАЖДЫМ. Если вы пришлииз предыдущих частей Arma или DayZ, то скорее всего знакомы с концепцией свободногоприцеливания (freeaim). Это когда при стрельбе, ваше оружие перемещается до определеннойневидимой границы, после чего, ваш взгляд совмещается с ним. Короче говоря, freeaim в Arma3 это самый худший вариант управления, который вы можете использовать. По умолчанию этот режим выключен – так и оставьте. Freeaim предназначен для тех, у кого проявляется ностальгия по прошлым частям Arma. Я настоятельно советую вам оставитьпрошлое в прошлом. Погнали дальше.
Акселерация мыши (увеличение скорости движения мышки) – отключите, если вы не уверены, что оно вам надо. В двух словах –ПРОСТО ОТРУБИТЕ. Сглаживание должно быть так же отключено. Ну и до кучи, отключите еще и ‘VSync’ в настройках видео. А теперь, давайте наконец рассмотрим непосредственно самусистему управления.
Положения тела (стойка) Стандартные положения тела. Я использую клавиши ‘F’ и ‘V’ длябыстрого переключения между положениями ‘стоя’, ‘сидя’ и ‘лежа’. Кнопка ‘F’ привязана к действию ‘Присесть’ (‘Crouch’). Она помогаетмне переключаться между положениями ‘стоя’ и ‘сидя’. Кнопка ‘V’ привязана к действию ‘Лечь’ (‘Goprone’). Если вы сидите, то при нажатии ‘F’, вы встанете. Если вы лежите и нажимаете ‘F’, вы перейдете в положение ‘Сидеть’. Достаточно легко, неправда ли? Прошу заметить, что если выиспользуете клавиши ‘F’ и ‘V’, то вам нужно убедиться, что эти клавиши не заняты действиями ‘Сменить режим стрельбы’ и ‘Вылезти’. Я использую связку ‘2xCTRL+E’ (Нажатиекомбинации дважды) для смены режима стрельбы. Это отличная связка клавиш, которую вы не сможете задействовать «нечаянно». Я не назначил никакой кнопки для действия ‘Вылезти’, так как не увидел в этом необходимости, но, какговорится, каждому свое.
-
Как сделать телепорт слайм ранчер
-
Мтс интернет по россии без роуминга как подключить
-
Как крафтить биткоины на домашнем компьютере
-
Когда происходит события fallout 76
- Silent hunter 5 как стрелять торпедами