Body zdarma Java týden
Využij podzimních slev a získej od nás až 40 % bodů zdarma! Více zde
Pouze tento týden sleva až 80 % na Java e-learning!
Avatar
anticary
Člen
Avatar
anticary:2.4.2018 21:10

Ahoj,
dělám hru a většinu věcí sem se naučil z internetu, ale nikde sem nezjistil jak je možný, že když já chci vykreslit pár obrázků, tak se mi to těžce seká (pokud překresluju celou obrazovku.. samozřejmě když to omezim, tak je to v pohodě).... ale když mám nějakou 3D hru a pohne se kamera, tak se celá obrazovka překresluje a jede to plynule. Nemohl by někdo ukrojit část svého drahocenného času a vysvětlit, jak vykreslují normální hry? Dělám v C# a na vykreslovaní používám System.Drawing. Taky dělám ve Windows Forms, je taky možný, že to není ideální?
Děkuji za odpověď :)

 
Odpovědět 2.4.2018 21:10
Avatar
Luboš Běhounek Satik
Autoredaktor
Avatar
Odpovídá na anticary
Luboš Běhounek Satik:2.4.2018 21:50

Ahoj, jak presne kreslis?

Hry se vetsinou vykresluji pres grafickou kartu, ktera to umi rychleji nez procesor, pres ktery ted nejspis kreslis, na to potrebujes treba OpenGL nebo DirectX.

Taky je dobry pouzivat nejaky culling (nekreslit objekty mimo obrazovku).

Taky pokud bys nahodou kreslil na bitmapu pres GetPixel/SetPixel, tak to je ultrapomaly, protoze se pro kazdej pixel znova zamyka a odemyka bitmapa.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +6 2.4.2018 21:50
https://www.facebook.com/peasantsandcastles/
Avatar
anticary
Člen
Avatar
Odpovídá na Luboš Běhounek Satik
anticary:3.4.2018 16:24

Super, tohle s tim procesorem jsem potřeboval vědět. Diky moc :)

 
Nahoru Odpovědět 3.4.2018 16:24
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Luboš Běhounek Satik
Autoredaktor
Avatar
Odpovídá na anticary
Luboš Běhounek Satik:4.4.2018 15:03

Pokud chceš dělat něco nízkoúrovňovýho, tak třeba sharpdx, pokud shanis herní engine co udělá většinu věcí za tebe, tak třeba unity, někde mezi nima je ještě monogame.

Nahoru Odpovědět  +4 4.4.2018 15:03
https://www.facebook.com/peasantsandcastles/
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:11.6.2018 15:13

viz Luboš Satik Běhounek. 3d hry vykresluji pres grafickou kartu. Bez jejich pomoci to vykresluje cpu a ten je obvykle jako snek pro vetsi veci.
Ale, kdyz vis jak, lze pouzit i ten. Jen si budes muset udelat nejspis vlastni ovladaci system.
Dnesni 3d sw pouziva priblizne vykreslovani. Hlavu postavy treba rozdeli na 12 sten. Nanese texturu. Nasviti paprskem svetla. A pak kazdou plosku rodeli treba na 10 zakrivenych a nasvicenou texturu prepocita takhle priblizne. Coz je rychlejsi nez pocitat nasviceni pro vsech 120 plosek a vysledek se tolik nelisi.
Jinymi slovy, vzdalena nebo blizka postava se pocita temer stejne rychle.

Tohle maji udelane v js. Podle mne jeste starym zpusobem, ale je to take pomerne svizne. Takze, asi to nemas uplne ok vymyslene.
https://threejs.org/
http://showroom.littleworkshop.fr/ - pockas na loading a pak kliknes na Enter room

 
Nahoru Odpovědět 11.6.2018 15:13
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 5 zpráv z 5.