Устами новичка новичку ч. 2: как не бояться unreal engine (С++), если после unity движок кажется космическим кораблем
Всем привет, с момента последнего поста прошло 4 года, однако геймдев все также притягивает, поэтому врываюсь в ленту с фиксированием своих наблюдений и набитых шишек.
Открыл UE 5 и потерялся
Наверное, многие, кто в первый раз сталкивался с Unreal Engine, терялся от обилия инструментов, а самое главное, с чего бы начать?
И для себя я понял, что лучше всего начать с разбора готовых шаблонов. Буквально стало проще после того, как открыл документацию по C++ в Unreal Engine и открыл ThirdPerson пример и начал его разбирать.
В этом разделе буквально описано, что для чего нужно, основное отличие в макросах, которые имеются в Unreal Engine на плюсах и наименование функций и переменных, а также стилю кода, очень хороший туториал по код стайлу в UE описан тут:
В целом, даже гайд выше помог ориентироваться в компонентах игры на Unreal Engine.
Подробнее про особенности
Например, поговорим о UPROPERTY. С самого начала я не понял, что это, однако позже понял, что это те параметры, которые помогают настроить доступ для переменных для компонентов, вне кода.
Например, если хочется настраивать положение камеры, не залезая в код, то с помощью UPROPERTY это можно реализовать.
В скобках UPROPERTY указываем параметры для доступа к переменной, например, на скриншоте можно увидеть, что теперь переменную можно изменять вне кода, а также можно перезаписывать в Blueprint, а также пишем категорию, в которой можно увидеть эти параметры.
Вуаля! Теперь в Bluеprint отображаются все необходимые параметры, что были указаны в коде.
Аналогичный подход и к функциям, однако к ним применяется UFUNCTION. С помощью макроса можно настраивать возможности функции. Например, чтобы ее можно было вызывать в Blueprint.
А что же дальше?
А дальше идет сама разработка, я посмотрел много видеороликов, однако туториалов по программированию на C++ в Unreal Engine, к тому же многие не объясняют, а как оно работает?
И тут тоже, как мне показалось, все прозаично, если также обратиться к документации.
Разберем, также на примере работы с камерой:
- Сначала на бумажке расписываем, что должна делать функция.
- Выписываем, какие параметры нужно изменять.
- Для камеры, например, хотим мы менять угол поворота камеры.
- Открываем API по ссылке выше.
- Ищем в функциях или классах по ключевому слову Rotate.
- Находим класс FRotator и понимаем, что если вписать в него нужные значения, то мы зададим нужный нам угол.
- Класс! Вы бесподобны!
Что же я хотел донести этим постом?
Этот пост скорее не туториал, а то, что не нужно бояться всех возможностей Unreal Engine, а можно спокойно разбираться без курсов, туториалов, ведь на официальном сайте все вполне подробно расписано. И тут только с практикой будут фиксироваться нужные каждому моменты, все мы набиваем шишки и опыт по-разному, я указал, как этот путь прохожу сам.
Также я уверен, что даже среди читателей есть много хороших разработчиков и если я не прав, или есть что дополнить - я только рад, если этот пост может стать неплохим введением в Unreal Engine с моральной и психологической точки зрения.
Всем добра!