NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!

Diskuze – Space Hero v C# .NET

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Theodor Johnson
Tvůrce
Avatar
Theodor Johnson:17.5.2014 15:27

Vypadá to celkem slušně, a jestli jsem to dobře pochopil ze zdrojáků, tak máš vykreslování přes GDI+?

 
Odpovědět
17.5.2014 15:27
Avatar
Gramli
Tvůrce
Avatar
Odpovídá na Theodor Johnson
Gramli:17.5.2014 15:59

jj, a to je možná i chyba, kdybych použil WPF, bylo by to plynulejší.

Odpovědět
17.5.2014 15:59
Kdo to říká ten to je...
Avatar
Theodor Johnson
Tvůrce
Avatar
Odpovídá na Gramli
Theodor Johnson:17.5.2014 16:01

Na takovouhle nepříliš graficky náročnou hru to není úplná nutnost, ale do budoucna to budeš potřebovat v každým případě :)

 
Odpovědět
17.5.2014 16:01
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Gramli
David Hartinger:17.5.2014 16:03

GDI je dost rychlé, spíše tam máš nějakou chybu nebo máš vysoký interval na timeru.

Odpovědět
17.5.2014 16:03
New kid back on the block with a R.I.P
Avatar
Gramli
Tvůrce
Avatar
Odpovídá na David Hartinger
Gramli:17.5.2014 16:10

Hlavní timer ze kterého se volá Invalidate() má interval 75ms. To není ideální, ale když jsem dal větší interval, zdálo se mi, že plynulost vykreslování není ideální.

Odpovědět
17.5.2014 16:10
Kdo to říká ten to je...
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovídá na Gramli
Jan Vargovský:17.5.2014 16:20

Hru jsem neviděl, ale

1 / 75*10−3 = 13,3 fps

což teda není moc :)

 
Odpovědět
17.5.2014 16:20
Avatar
Gramli
Tvůrce
Avatar
Odpovídá na Jan Vargovský
Gramli:17.5.2014 16:27

To ne, ale při intervalu 75ms běží hra pěkně, na ideální hodnotu (30fps) by to chtělo 33ms, což už je podle mě zbytečnost.

Odpovědět
17.5.2014 16:27
Kdo to říká ten to je...
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Gramli
David Hartinger:17.5.2014 16:38

30 FPS určitě není zbytečnost, počítači je to úplně jedno a hráč to vidí plynule. Tvou hru jsem zkoušel a na timeru bych určitě ubral, protože pohyb nebyl plynulý.

Odpovědět
17.5.2014 16:38
New kid back on the block with a R.I.P
Avatar
Gramli
Tvůrce
Avatar
Odpovídá na David Hartinger
Gramli:17.5.2014 17:04

Máte oba pravdu :D Za celou dobu co jsem na tom dělal, mě to nenapadlo :D Ovšem když snížím razantně interval, budu muset upravit posuny nepratel a hrace, ale určitě to upravím, protože je to rozhodně lepší.

Odpovědět
17.5.2014 17:04
Kdo to říká ten to je...
Avatar
Odpovídá na Gramli
Luboš Běhounek Satik:18.5.2014 14:22

To není ten správný postup :)

Správný postup by byl posouvat objekty v závislosti na jejich rychlosti a době trvání posledního snímku.

Např. pokud se má nepřítel posunovat o 50 pixelů za sekundu a poslední snímek trval 0.043 sekund, tak by jsi ho nyní měl posunout o 50 * 0.043 = 2.15 pixelů.

Když teď někomu ta hra poběží méně fps než zamýšlíš (pomalý PC), tak s tvým přístupem se mu zpomalí celá hra :)

Odpovědět
18.5.2014 14:22
https://www.facebook.com/peasantsandcastles/
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 13.