Сегодня я познакомлю Вас с переменными в UE5+.
Теория
Для начала давайте разберемся с теорией. Что такое переменные? Зачем они нужны? И, самое главное, что с ними можно сделать?
Что такое переменная?
Переменная - это память, выделенная для хранения данных, а если еще проще, то это ящик, в который мы складываем что либо. Только вот что? Явно не носки или безделушки. Мы складываем туда определенные типы данных. Подчеркну, ОПРЕДЕЛЕННЫЕ, в UE5+ ящик, который мы называем переменной, может хранить только ОДИН тип данных. Давайте разберем основные типы данных, которые мы будем использовать:
Integer - целочисленный тип данных, он может принимать значения только целого числа, например: 1; 100; 15618; 8468465363 и т.п.
Float - тип данных с плавающей точкой, говоря проще, это десятичные дроби: 3,15; 45,1258; 0,4896 и т.п.
String - строковый тип данных, он заключает в себя какой либо текст, причем UE не важно на каком языке этот текст будет написан.
Boolean - логический тип данных, он может принимать только два значения: Правда (True) или Ложь (False). На нем мы более подробно остановимся, когда будем изучать логические операции и условные операторы.
Помимо вышеперечисленных, в UE есть огромное количество других типов переменных плюс вы можете создавать свои, получая ссылки на объекты, классы. Но об этом тоже позже.
Для чего нужны переменные?
Переменные окружают нас в игре постоянно, можно сказать что вся логика игры основана на взаимодействии и операциях, проводимых с переменными.
Давайте рассмотрим с виду такую простую ситуацию как удар мечом в любой RPG игре. Казалось бы, что сложного? Мы нажимаем на левую кнопку мышки и бьем врага, отнимая у него здоровье. Но нет, мы видим эту ситуацию со стороны игрока, и так она действительно выглядит очень просто. Но теперь давайте рассмотри ту же ситуацию со стороны программиста:
1. При нажатии на кнопку мыши активируется событие (Event), который влечет за собой логику начала анимации удара и расчета вашей силы удара. Вы же не можете бить все время одним стабильным ударом правда? Это было бы предсказуемо и неинтересно.
2. Давайте возьмем простую формулу расчета силы удара:
Сила Удара = (Ваш Урон от Оружия + Ваша Сила) - Защита Врага
3. Итак, мы получили силу вашего удара. Теперь давайте определимся сколько здоровья отнимется от врага при ударе?
Урон = Здоровье Врага - (Сила Удара/100)
Мы рассчитали урон.
Так вот, Сила Удара, Урон от Оружия, Защита Врага, Здоровье Врага - это все переменные. Без них мы бы в лучшем случае махнули мечом в сторону врага. И это самый банальный пример. Я не упоминал вероятность попадания которая зависит от пересечения коллизий, зависимость урона от уклонения врага и части тела в которую вы попали, критический удар, зачарован меч или нет, магический урон от меча и сопротивляемость магии этого типа у вашего врага. Много, очень много разных переменных участвуют в простом клике мышкой.
Что можно делать с переменными?
Теперь когда мы знаем что такое переменные и какие основные типы данных у них есть, нужно разобраться, что же нам можно делать с теми значениями, которые принимают наши переменные?
В примере выше мы настолько упростили ситуацию и опустили тот момент что перед тем как сложиться в формулу, мы должны ПОЛУЧИТЬ значения тех переменных, которые участвую в этой формуле, а после расчета мы должны ЗАДАТЬ значение той переменной, которую с помощью формулы мы рассчитывали.
Запомните, значение ЛЮБОЙ публичной переменой, можно ЗАДАТЬ (Set) и ПОЛУЧИТЬ (Get). О том какие бывают переменные кроме публичных, мы будем говорить в следующих уроках.
На этом теория заканчивается. Для того чтобы посмотреть практику по этому уроку перейдите по ссылке ниже:
Подписывайтесь на меня в Дзен и на Rutube.
Так же вступайте в мою группу в ВК: https://vk.com/exemestunrealgames, чтобы быть в курсе анонсов будущих статей и роликов, интересных бесед на тему создания игр на UE и многого другого.