Научите да креирате меније игара и дизајнирате корисничке интерфејсе без напора користећи Арцаде ГУИ алате.

Менији игара и кориснички интерфејси (УИ) играју кључну улогу у побољшању корисничког искуства и ангажовања игре. Арцаде, популарна Питхон библиотека за развој игара, пружа моћне ГУИ (Графички кориснички интерфејс) алате који олакшавају дизајнирање и имплементацију менија игара и елемената корисничког интерфејса.

Направите једноставну игру

Пре него што почнете, уверите се да имате пип инсталиран на вашем уређају. Користите ову команду да инсталирате библиотеку аркада:

пип инсталл арцаде

Почните креирањем једноставне игре користећи Арцаде.

Код који се користи у овом чланку доступан је у овом ГитХуб спремиште и бесплатан је за коришћење под МИТ лиценцом.

Ова игра ће садржати објекат играча који може да се креће лево и десно и непријатељски објекат. Ево кода за игру:

увоз арцаде

ВИДТХ = 800
ХЕИГХТ = 600
ПЛАИЕР_СПЕЕД = 25

класаИгра(аркада. прозор):
деф__у томе__(сам):
супер().__инит__(ВИДТХ, ХЕИГХТ,

instagram viewer
"Једноставна игра")
селф.плаиер_к = ВИДТХ // 2
селф.енеми_к = ВИДТХ - 50
селф.гаме_овер = Фалсе

дефподесити(сам):
арцаде.сет_бацкгроунд_цолор (арцаде.цолор. БЕО)

дефон_драв(сам):
арцаде.старт_рендер()
арцаде.драв_цирцле_филлед (селф.плаиер_к, ХЕИГХТ // 2, 20, арцаде.цолор. ПЛАВИ)
арцаде.драв_цирцле_филлед (селф.енеми_к, ХЕИГХТ // 2, 20, арцаде.цолор. ЦРВЕНА)

дефажурирање(селф, делта_тиме):
селф.енеми_к += 0.5
ако селф.енеми_к >= ВИДТХ:
селф.гаме_овер = Истина

дефон_кеи_пресс(селф, кључ, модификатори):
ако кључ == арцаде.кеи. ЛИЈЕВО:
селф.плаиер_к -= ПЛАИЕР_СПЕЕД
елиф кључ == арцаде.кеи. ЈЕЛ ТАКО:
селф.плаиер_к += ПЛАИЕР_СПЕЕД

игра = игра()
гаме.сетуп()
арцаде.рун()

Додавање игре преко екрана

Додајте игру преко екрана која приказује поруку када се непријатељ се креће изван прозора игре. Користити арцаде.гуи. УИМанагер и арцаде.гуи. УИМессагеБок класе да би се то постигло.

Креирајте инстанцу УИМанагер и то омогућити. Унутар он_драв метод, проверите да ли је крај игре постављена је заставица, и ако јесте, нацртајте УИ менаџер. Тхе схов_гаме_овер_сцреен метода ствара а УИМессагеБок са поруком о завршетку игре и додаје је у УИ менаџер. Такође можете да омогућите и онемогућите УИ менаџер у ажурирање метода заснована на стању игре.

Креирајте нову датотеку под називом гаме-овер.пи и додајте код са ажурирањима у наставку:

увоз арцаде
из арцаде.гуи увоз УИМанагер, УИМессагеБок

ВИДТХ = 800
ХЕИГХТ = 600
ПЛАИЕР_СПЕЕД = 25

класаИгра(аркада. прозор):
деф__у томе__(сам):
супер().__инит__(ВИДТХ, ХЕИГХТ, "Једноставна игра")
селф.плаиер_к = ВИДТХ // 2
селф.енеми_к = ВИДТХ - 50
селф.уи_манагер = УИМанагер()
селф.гаме_овер = Фалсе

дефподесити(сам):
арцаде.сет_бацкгроунд_цолор (арцаде.цолор. БЕО)
селф.уи_манагер.енабле() # Омогућите УИ менаџер

дефон_драв(сам):
арцаде.старт_рендер()
арцаде.драв_цирцле_филлед (селф.плаиер_к, ХЕИГХТ // 2, 20, арцаде.цолор. ПЛАВИ)
арцаде.драв_цирцле_филлед (селф.енеми_к, ХЕИГХТ // 2, 20, арцаде.цолор. ЦРВЕНА)
ако селф.гаме_овер:
селф.уи_манагер.драв()

дефажурирање(селф, делта_тиме):
селф.енеми_к += 0.5
ако селф.енеми_к >= ВИДТХ:
селф.схов_гаме_овер_сцреен()
селф.гаме_овер = Истина
ако селф.гаме_овер:
селф.уи_манагер.енабле()
друго:
селф.уи_манагер.дисабле()

дефон_кеи_пресс(селф, кључ, модификатори):
ако кључ == арцаде.кеи. ЛИЈЕВО:
селф.плаиер_к -= ПЛАИЕР_СПЕЕД
елиф кључ == арцаде.кеи. ЈЕЛ ТАКО:
селф.плаиер_к += ПЛАИЕР_СПЕЕД

дефсхов_гаме_овер_сцреен(сам):
бок_бок = УИМессагеБок(
видтх=400,
висина=200,
тект_тект="Крај игре!"
)
селф.уи_манагер.адд (мессаге_бок)

игра = игра()
гаме.сетуп()
арцаде.рун()

Испод је излаз:

Додавање дугмади

Сада побољшајте игру преко екрана додавањем дугмади за поновно покретање игре или излаз. То можете постићи коришћењем дугмад параметар од УИМессагеБок и пружање функције повратног позива за руковање кликовима на дугме.

Креирајте нову датотеку под називом буттонс.пи и додајте код са ажурирањима у наставку:

дефсхов_гаме_овер_сцреен(сам):
бок_бок = УИМессагеБок(
видтх=400,
висина=200,
тект_тект="Крај игре!",
дугмад=("Поново покренути", "Излаз"),
цаллбацк=селф.он_гаме_овер_буттон_цлицк
)
селф.уи_манагер.адд (мессаге_бок)

дефон_гаме_овер_буттон_цлицк(сам, дугме_текст):
ако буттон_тект == "Поново покренути":
селф.рестарт_гаме()
елиф буттон_тект == "Излаз":
арцаде.цлосе_виндов()

дефрестарт_гаме(сам):
селф.гаме_овер = Фалсе
селф.енеми_к = ВИДТХ - 50
селф.уи_манагер.цлеар()

Испод је излаз:

У схов_гаме_овер_сцреен метод, додајте два дугмета, Поново покренути и Изађи, до УИМессагеБок наводећи их у дугмад параметар. Такође обезбедите функцију повратног позива, он_гаме_овер_буттон_цлицк, за управљање кликовима на дугме. Унутар функције повратног позива проверите на које дугме сте кликнули и извршите одговарајућу радњу.

Арцаде-ови ГУИ алати нуде низ додатних функција које могу додатно побољшати функционалност и интерактивност ваших менија игара и дизајна корисничког интерфејса. Ево неколико примера:

УИДраггаблеМикин

Тхе УИДраггаблеМикин класа може да се користи за превлачење било којег УИ виџета. Пружа функционалност за управљање понашањем превлачења, омогућавајући корисницима да померају елементе корисничког интерфејса по екрану. Комбиновање овог микса са другим УИ видгетима омогућава вам да креирате прозоре или панеле за превлачење у вашој игри.

УИМоусеФилтерМикин

Тхе УИМоусеФилтерМикин класа вам омогућава да ухватите све догађаје миша који се дешавају унутар одређеног виџета. Ово је посебно корисно за виџете налик прозору где желите да спречите да догађаји миша утичу на основне елементе корисничког интерфејса. Филтрирањем догађаја миша можете независно да контролишете интеракцију унутар виџета.

УИВиндовЛикеМикин

Тхе УИВиндовЛикеМикин класа пружа виџету понашање попут прозора. Он обрађује све догађаје миша који се дешавају унутар граница виџета и дозвољава да се виџет превуче. Ово је идеално за креирање прозора или панела за превлачење са којима корисници могу да комуницирају у вашој игри.

Површина

Тхе Површина класа представља бафер за цртање УИ елемената. Он апстрахује цртеж на баферу и пружа методе за активирање, брисање и цртање бафера на екрану. Ову класу можете користити интерно за приказивање виџета или прилагођених елемената корисничког интерфејса у вашој игри.

Ове додатне функције нуде могућности за стварање интерактивнијег и динамичнијег корисничког искуства у вашим играма. Експериментишите са овим функцијама да бисте додали јединствену функционалност и учинили да се ваши менији игара и дизајн корисничког интерфејса истичу.

Најбоље праксе за укључивање ГУИ

Када уграђујете ГУИ алате у своје игре користећи Арцаде, важно је да се придржавате неких најбољих пракси како бисте осигурали глатко и беспрекорно корисничко искуство. Ево неколико савета које треба имати на уму:

План и прототип

Пре него што уђете у имплементацију, утрошите време на планирање и израду прототипова менија игара и елемената корисничког интерфејса. Узмите у обзир изглед, функционалност и визуелну естетику како бисте осигурали кохерентан дизајн прилагођен кориснику.

Нека буде доследно

Одржавајте доследан визуелни стил и распоред у свим менијима игре и елементима корисничког интерфејса. Ово помаже корисницима да се лакше крећу кроз вашу игру и пружа кохезивно искуство.

Нацрт са одзивом

Дизајнирајте своје елементе корисничког интерфејса тако да буду прилагодљиви и прилагодљиви различитим величинама и резолуцијама екрана. Ово осигурава да ваши менији игара и кориснички интерфејс остају употребљиви и визуелно привлачни на различитим уређајима.

Ефикасно руковање догађајима

Ефикасно управљајте догађајима уноса корисника како бисте осигурали брзу и глатку интеракцију. Избегавајте непотребна израчунавања или обраду догађаја који могу довести до кашњења или кашњења у одзиву корисничког интерфејса.

Повратне информације корисника

Обезбедите јасне и тренутне повратне информације корисницима када ступе у интеракцију са вашим менијима игре и елементима корисничког интерфејса. Визуелни знаци, анимације и аудио повратне информације у играма могу побољшати корисничко искуство и учините да се игра учини углађенијим.

Пратећи ове најбоље праксе, можете креирати меније игара и дизајн корисничког сучеља који су интуитивни и визуелно привлачни.

Повећајте ангажовање корисника помоћу визуелно привлачног корисничког интерфејса

Додавање ГУИ елемената вашој игри не само да побољшава употребљивост, већ и побољшава визуелну привлачност и укупни ангажман играча. Без обзира да ли креирате старт мени, игру преко екрана или било који други елемент корисничког интерфејса, Арцаде ГУИ алати нуде низ функција и функционалности за побољшање корисничког искуства ваше игре.