Diskuze: XNA - Implementace GameComponents do architektonického návrhu, aneb vícenásobná dědičnost
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.


Zobrazeno 11 zpráv z 11.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.


Ten obrázek se asi špatně nahrál, možná máme blbě udělanou průhlednost, můžeš to sem ještě prosím hodit neprůhledné?
Vícenásobná dědičnost se řeší přes interface, těch si tam můžeš dát kolik chceš. Případně můžeš podědit vícekrát.
Komponentě dávám závislosti normálně v konstruktoru, buď přes ten objekt game nebo si tam normálně přidám parametry, když chci, aby to bylo znovupoužitelné.
Píši ty tutoriály na Robotris, zatím ho nechci zveřejňovat, ale jestli chceš, hodím ti link do PMka, abys viděl, jak to řeším já. Ale nic ukázkového to také není. Navrhnout znovupoužitelnou komponentu do hry je dost těžké, ty komponenty jsou hodně specifiké pro určitou hru. IMHO moc nevadí, když budou na té hře závislé. Snažil jsem se udělat třeba nezávislé menu, to jsem rozdělil do 2 komponent.
Jo už to vidím
No já
nemám GameScreen abstraktní, mám ji konkrétní a je to jen kontejner pro
komponenty. Potom si vytvořím instance pro menu, kredity, levely...
Jo za tvou ukázku bych byl vděčný
.Když už to dělám, tak to chci udělat pořádně, abych to mohl
používat třeba i pro jiný projekt, něco nového se u toho naučím a nebude
to patlanina. Snažím se spíše udělat znovupoužitelné rozhraní pro
správu obrazovek a komponent. Jak jsem začal převádět herní prvky na ty
komponenty, dost jsem se do toho zamotal, přišlo mi, že si v tom spíše
dělám bordel. Myslím ale, že pokud se mi podaří udělat něco pro jejich
správu, byli by mi určitě přínosem...
ps: ještě bych asi přidal možnost upravit obrázek v příspěvku... Zkusil jsem místo png nahrát jpg s bílým pozadím, obrázek se nezměnil...
vždy mi to píše "Webová stránka nenalezena"
, mohl by si mi to poslat na
mail?
Možná se to ještě uploadovalo nebo jsi špatně okopíroval URL, ty PM
jsou v alfa verzi, není tam formátování textu 
Pak napiš, co si o otm myslíš a jak se ti to líbí, jsem zvědavý.
Celkově mě Robotris příjemně překvapil. Grafika pěkná, krásně ladí
s hudbou. Mlha v pozadí hře dodává na živosti. Jedna věc co bych zlepšil
je, velká viditelnost odrazů kostek, přidal bych jim větší průhlednost,
"časem" mě ve hře odrazy trochu mátly, taky bych asi zrychlil titulky v
sekci autoři, aby si je někdo přečetl, ale to je taková malá drobnost
. Kód nemá asi smysl abych
komentoval
Řešení, které
jsem hledal, v něm ale není, je to tím, že se snažím udělat "už
připravené" rozhraní pro tvorbu her, což jak si říkal není jednoduché,
proto asi "mojí" hru dodělám s obyčejnými objekty a mím problémem se budu
zabývat až poté.
Myslím, že Robotris bude vynikající ukázkou pro začátečníky v XNA. 
Díky
Much tam je více,
třeba rotace kostek není dokonalá, ale už jsem nad tím strávil asi 4x
více času, než jsem plánoval. U těch her je IMHO s univerzálností obecně
problém, když uděláš např. nějaké řešení pro menu, někdo ho bude
chtít mít ingame a podobně. Je tam hodně způsobů jak něco řešit. Ale
neříkám, že to nejde, XNA je stále poměrně nízké, i když je nad
DirectX a určitě by se na tom dalo něco postavit, budu držet palce a těšit
se na tvou hru 
Zobrazeno 11 zpráv z 11.