LifeEXE | Unreal Engine | CG
1.98K subscribers
463 photos
596 videos
532 links
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
🔝 Всем привет, всем привет! 🔝

Бесплатный ассет материала в Material maker ➡️

🔗 Warped Time

Другие материалы автора ➡️

🔗 DroppedBeat

💡 Material maker поддерживает экспорт в Unreal Engine

Сальвадор Дали может гордиться автором

#material #shader #unrealengine #ue5 #gamedev #lifeexe #lifeexecode
Please open Telegram to view this post
VIEW IN TELEGRAM
168🔥5
📱 Всем вечерний привет! 📱

В 🎮nreal Engine имеется полезный спецификатор для работы со статическими массивами — ArraySizeEnum ⬇️

UENUM(BlueprintType)
enum class ECharacterClass : uint8
{
Warrior UMETA(DisplayName = "Warrior"),
Priest UMETA(DisplayName = "Priest"),
Ranger UMETA(DisplayName = "Ranger"),
Druid UMETA(DisplayName = "Druid"),

Count UMETA(Hidden)
};

// UI цвета для каждого класса
UPROPERTY(EditAnywhere, meta = (ArraySizeEnum = "ECharacterClass"))
FColor UIColors[(uint8)ECharacterClass::Count];

// Базовое здоровье для каждого класса
UPROPERTY(EditAnywhere, meta = (ArraySizeEnum = "ECharacterClass"))
float BaseHealth[(uint8)ECharacterClass::Count];


💡 Чем он полезен ⬇️

🟢 В редакторе массив показывает названия элементов enum
🟢 Размер массива автоматически синхронизируется с enum
🟢 Типобезопасный и понятный доступ к элементам

‼️ Нюансы использования ⬇️

⚠️ Рекомендуется добавлять в enum элемент Count/MAX/Total с пометкой UMETA(Hidden) — так удобнее определять размер массива и этот элемент не будет виден в редакторе
⚠️ Нельзя использовать BlueprintReadWrite/BlueprintReadOnly
⚠️ Для Blueprint доступа создавайте getter функции
⚠️ В примере я применяю C-style cast для компактности кода, но лучше использовать современный подход со static_cast

🔤🔤🔤🔤🔤🔤🔤

🤝 Поддержать:
Patreon | Boosty | PayPal

Ресурсы:
GitHub | Itch | X | Wiki | LifeEXE School

#tips_and_tricks #unrealengine #ue5 #code #cpp #gamedev #lifeexe #lifeexecode
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥2884🐳2🦄2👍1