Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako vytlačíte to, čo niekto napísal v hre?

Ako vytlačíte to, čo niekto napísal v hre, do značnej miery závisí od herného nástroja a programovacieho jazyka, ktorý používate. Neexistuje žiadna jediná odpoveď. Tu sú však niektoré všeobecné prístupy:

Koncepčné kroky (uplatniteľné pre väčšinu herných motorov):

1. Manipulácia s vstupmi: Vaša hra potrebuje systém na zachytenie vstupu používateľov. To zvyčajne zahŕňa:

* Manipulácia s udalosťami: Počúvanie vstupných udalostí na klávesnici (stlačenia klávesov). Herné motory zvyčajne poskytujú funkcie alebo metódy na registráciu poslucháčov pre tieto udalosti.

* vyrovnávanie: Uložte zadané znaky do dočasnej vyrovnávacej pamäte (premenná reťazca), kým používateľ nepodarí vstup (napr. Stlačením Enter).

2. Zobrazovanie textu: Po odoslaní vstupu musíte vykresliť na displej hry. To zahŕňa:

* ui element: Väčšina hier používa na zobrazenie textu prvok používateľského rozhrania (UI) (ako je textové pole alebo štítok). Aktualizujete vlastnosť textu tohto prvku používateľského rozhrania s obsahom vstupnej vyrovnávacej pamäte.

* systém vykresľovania herného motora: Systém vykresľovania motora sa potom postará o nakreslenie prvku používateľského rozhrania na obrazovku. Špecifické metódy, ako to urobiť výlučne od motora (jednota, Unreal Engine, Godot atď.). Môžete použiť funkcie ako `setText ()`, `text =...` alebo podobné, v závislosti od rozhrania API systému UI.

* font a styling: Pravdepodobne budete chcieť zadať písmo, veľkosť, farbu a ďalšie vizuálne vlastnosti zobrazeného textu.

3. LOGOL (pre viac správ): Ak si chcete ponechať históriu správ (napríklad v chatovom systéme), budete musieť:

* uložte správy: Pripojte každú odoslanú správu do zoznamu alebo poľa.

* Zobraziť protokol: Aktualizujte posúvateľný prvok používateľského rozhrania (napr. Text alebo zobrazenie zoznamu), aby ste zobrazili obsah histórie správ.

Príklad (koncepčný pseudokód podobný pythonu):

`` `Python

Za predpokladu jednoduchej textovej hry

input_buffer =""

chat_log =[]

zatiaľ čo pravda:

event =get_input_event () # Získajte vstup z herného motora

ak event.Type ==key_press:

if event.Key ==key_enter:

# Odošlite vstup

chat_log.append (input_buffer)

print_to_screen ("Zadané:" + input_buffer) # alebo aktualizujte prvok používateľského rozhrania

input_buffer =""

elif event.Key ==key_backspace:

# Zvládnite backspace

input_buffer =input_buffer [:-1]

inak:

# Pridajte znak do vyrovnávacej pamäte

input_buffer +=event.Character

# Aktualizujte zobrazenie denníka chatu (Aktualizujte prvok používateľského rozhrania pomocou obsahu CHAT_LOG)

update_chat_log_display (chat_log)

`` `

Príklady špecifické pre motor:

V závislosti od vášho herného motora by ste mali výrazne prispôsobiť tento pseudokód. Napríklad:

* Unity (C#): Použili by ste systém UI UI (zvyčajne s textovými komponentmi) a mechanizmami manipulácie s udalosťami.

* Unreal Engine (C ++): Použili by ste miniaplikácie UI a vstupný systém UIREAL.

* Godot (gdscript): Pracovali by ste s Godotovým UI uzlom (napríklad `lineedit` a` textDit ") a ich signály.

Ak chcete poskytnúť konkrétnejšiu odpoveď, povedzte mi:

* Aký herný motor používate?

* Aký programovací jazyk používate?

* Aké používateľské rozhranie používate? (napr. Vstavaný systém UI, vlastné používateľské rozhranie)

S viacerými podrobnosťami vám môžem dať oveľa viac prispôsobené a užitočné príklady kódu.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené