gohud

Три шари

← Оформлення

Пресет зв'язує всі три. Поля, які ви лишите порожніми, повертаються до типових значень.

ШарВирішуєЯк його змінити
Theme Кольори, розміри, масштаб тексту й форму всього, що малює рушій — панелі кнопок, поля вводу, вкладки, графіку перемикачів Напишіть .tres або згенеруйте його через tools/make_theme.py
GoSkin Форму всього, що малює код — стик, лицьові боки швидких слотів, кільце коуч-мітки, чипи, скелетони, роздільники, заголовки секцій Успадкуйте його й перевизначте лише ті методи, які вам потрібні
GoIconSet Іконки на ім'я — 84 стандартні малюнки або 16 гравійованих із середньовічного набору поверх них. Пакет текстур чи шрифт іконок; код виклику однаковий в обох випадках Подайте набір або перевизначте лише кілька імен
Чому самої лише теми замало. Заокруглений — єдиний кут, який має StyleBoxFlat: поставте радіус у нуль — і отримаєте прямий кут; проміжного нічого немає. Зрізані по діагоналі кути, один потовщений край, зовнішнє сяйво — рушій не малює нічого з цього. А стик і коуч-мітка малюються в _draw(), куди темі не дістатися взагалі.

Як вибрати

GoUi.use_preset(GoThemePresets.SCIFI_DARK)

Цей один рядок міняє тему, скін та іконки. З редактора скористайтеся Параметрами проєкту → Gohud → Theme → Preset; із ресурсу налаштувань — GoConfig.preset.

Лишити одне поле своїм

GoUi.use_preset(GoThemePresets.SCIFI_DARK)
GoUi.config.icons = my_icons     # ваші іконки, решта — від пресету

Явно задані theme, skin чи icons переважають над пресетом.

Шість вбудованих пресетів

ПресетПанеліСкін · іконки
default_dark · default_lightЗаокруглені панелі StyleBoxFlat на градуйованій шкалі тіней; головні кнопки підіймаються й осідають при натисканніGoSkin · 84 стандартні іконки
scifi_dark · scifi_lightЗрізані панелі GoStyleBoxCut із неоновим краєм і сяйвом; позначки фокуса GoStyleBoxBracketGoSkinSciFi — шестикутний стик · стандартні іконки
medieval_dark · medieval_lightКовані рами GoStyleBoxMedieval — залізо та шкіра або пергамент — із заклепками й кутовими оздобами в менюGoSkinMedieval · 16 гравійованих іконок поверх стандартних

Середньовіччя: залізо, шкіра й пергамент

medieval_dark поєднує темне залізо та шкіру зі старим золотом. medieval_light бере пергамент і чорнило. Обидва використовують GoSkinMedieval, наявні віджети та 16 оригінальних іконок із гравіюванням; іконки навігації повертаються до первісного набору.

GoUi.use_preset(GoThemePresets.MEDIEVAL_DARK)
# Або: GoUi.use_preset(GoThemePresets.MEDIEVAL_LIGHT)

Виберіть пресет, перш ніж створювати свій інтерфейс. Явні перевизначення GoConfig.theme, skin чи icons і далі мають перевагу. Відкрийте res://addons/gohud/examples/medieval/medieval.tscn і натисніть F6, щоб побачити робочі картку персонажа, торбу та журнал завдань. Її кнопки перемикають варіанти й відкривають подробиці предметів.

Середньовічний залізний інтерфейс персонажа, інвентарю та завдань
Залізо та шкіра
Середньовічний пергаментний інтерфейс персонажа, інвентарю та завдань
Пергамент і чорнило

Рами меню мають заклепку й невелику кутову оздобу; завжди видимий HUD тримає стриманий край. Здоров'я, мана та витривалість заливаються червоним, синім і оливковим. Cinzel обмежений заголовками та підзаголовками; основний текст лишає шрифт проєкту або типовий. Вбудований шрифт містить свою ліцензію в assets/fonts/cinzel/OFL.txt.

Гравійований набір перемальовує bag, book, box, coin, crown, flag, heart, key, map, potion, shield, star, sword і user, а також додає scroll та seal. Кожне інше ім'я повертається до стандартного набору, тож close і settings зберігають свої типові малюнки в кожному пресеті. Cinzel покриває латиницю; для локалізованих заголовків дайте власний шрифт через shape.fonts.

Що набір перевірок стежить в обох варіантах. Що вибрано середньовічний скін; що панелі меню та HUD — ковані рами, причому оздоба лише в меню; що заголовки беруть Cinzel, а основний текст лишає успадкований шрифт; що гравійовані іконки імпортуються як DPITexture; що справжній швидкий слот користується скіном; що зміна регуляторів у копії скіна доходить до слота, не чіпаючи пресету; і що перемикання назад відновлює стандартну та сай-фай геометрію.

Створіть власне королівство

python3 addons/gohud/tools/new_theme.py kingdom --from medieval_dark
# Відредагуйте themes/palettes/kingdom.json, а тоді:
python3 addons/gohud/tools/make_theme.py kingdom
godot --headless --path . --import
# У GDScript, перед створенням віджетів:
GoUi.use_preset(&"kingdom")

Теми в JSON можуть успадковувати інші теми в JSON. Пропущені значення зберігають налаштування батька; циклічне успадкування відхиляється. Згенерований пресет зберігає набір іконок свого батька.

ПараметрДія
shape.material0: залізо · 1: шкіра · 2: пергамент. Керує позначками на поверхні.
shape.grain_alphaНепрозорість текстури. Поставте 0 для чистої поверхні.
shape.ornament_scale · shape.bevel_strengthРозмір кутової оздоби меню та сила фаски-відблиску.
shape.fontsЗіставляє ролі title, subtitle, caption, body і button із файлами шрифтів res://, що лежать у доповненні. Пропущені ролі лишають успадкований шрифт.
skin.dialsРадіус швидкого слота, видимість заклепок, зернистість і відблиск. Повна таблиця нижче перелічує кожен регулятор.