.[ ČeskéHry.cz ].
Culling geometrie
Jdi na stránku Předchozí  1, 2, 3  Další
 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
Játro.m



Založen: 01. 02. 2010
Příspěvky: 230

PříspěvekZaslal: 24. květen 2010, 16:35:35    Předmět: Odpovědět s citátem

Augi: nojo to me nenapadlo, nastuduju specifikaci k maxu jestli je moznost sortovat a dam vedet. Za chodu by to zralo zbytecne pamet a bylo by to moc pomaly. Diky Wink
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Játro.m



Založen: 01. 02. 2010
Příspěvky: 230

PříspěvekZaslal: 24. květen 2010, 18:09:56    Předmět: Odpovědět s citátem

Takze, malej benchmark.

+3 FPS pri sortnutejch texturach.
+10 FPS pri jenom jedne bindnute texture
+23 FPS bez textur ale ty jaxi potrebuju Very Happy
(vysledky jsou nepresne, podle toho na co se divam;))

takze nastuduju PVS, jak jsem se dival funguje to spolehlive a je to idealni na moji situaci.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
perry



Založen: 28. 07. 2009
Příspěvky: 879

PříspěvekZaslal: 24. květen 2010, 19:05:29    Předmět: Odpovědět s citátem

Osobně mě třeba HW-instancing (pro PS 3.0) hodně nakopl výkon při kreslení třeba rozházených "penízků" nebo zdí. Udělal jsem si rendering tak, že instancing můžu vypnout / zapnout za běhu, takže zakomponování do existujícího renderingu by neměl být problém a pokud nebude lepší, tak ho prostě vypnout s tím, že ho budeš mít k dobru pro něco dalšího.
Drobná nevýhoda u něj ovšem je, že se blbě provádí odřezání toho, co není vidět.
Jinak stromy nejsou těžký na implementaci a min. Quad-tree je základ a není těžký
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
quas4



Založen: 18. 10. 2007
Příspěvky: 199

PříspěvekZaslal: 24. květen 2010, 19:18:41    Předmět: Odpovědět s citátem

Játro.m napsal:
Takze, malej benchmark.

+3 FPS pri sortnutejch texturach.
+10 FPS pri jenom jedne bindnute texture
+23 FPS bez textur ale ty jaxi potrebuju Very Happy
(vysledky jsou nepresne, podle toho na co se divam;))


fps ee

http://www.humus.name/index.php?ID=279
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Játro.m



Založen: 01. 02. 2010
Příspěvky: 230

PříspěvekZaslal: 24. květen 2010, 19:38:49    Předmět: Odpovědět s citátem

ajj chapu xD myslim ze je to stejne jedno Very Happy potrebuju nejak radikalneji s tim hnout a kdyz vidim ze se to pohlo o 3 fps tak to nebude ono.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1526
Bydliště: Telč

PříspěvekZaslal: 25. květen 2010, 08:03:10    Předmět: Odpovědět s citátem

Játro.m napsal:
Augi: nojo to me nenapadlo, nastuduju specifikaci k maxu jestli je moznost sortovat a dam vedet. Za chodu by to zralo zbytecne pamet a bylo by to moc pomaly. Diky ;)


To si špatně pochopil, to nemá s maxem nic společnýho.

Myslím, že 3 FPS nahoru neni špatný, lepší než nic. Ještě je možný, že máš špatný data, prostě blbě udělanou scénu - epesní výhledy s řádově stovkama až tisícovkama objektů, spoustu materiálů, trojúhelníků, světel, ... .
_________________
Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Játro.m



Založen: 01. 02. 2010
Příspěvky: 230

PříspěvekZaslal: 25. květen 2010, 15:01:17    Předmět: Odpovědět s citátem

no, ma to spolecny to ze jsem potreboval ty objekty nejak vysortovat v souboru..a k tomu mi poslouzil maxscript ve kterym je psanej export Wink
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1526
Bydliště: Telč

PříspěvekZaslal: 25. květen 2010, 15:09:57    Předmět: Odpovědět s citátem

to se nesortuje v souboru, ale při renderingu
_________________
Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Augi



Založen: 28. 07. 2007
Příspěvky: 782
Bydliště: Čerčany

PříspěvekZaslal: 25. květen 2010, 15:16:45    Předmět: Odpovědět s citátem

Jj, při renderingu, podle aktuální situace (zobrazované objekty, pozice a otočení kamery, ...).

A neboj se toho, že bys měl při každém renderování dynamicky sortovat třeba 1000 objektů. Dnešní CPU to má relativně rychle a rozhodně se Ti to vyplatí díky rychlejšímu renderingu (buď díky fillrate při řazení podle vzdálenosti objektů od kamery nebo díky menšímu počtu přepnutí textur/efektů).
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
frca



Založen: 28. 07. 2007
Příspěvky: 1561

PříspěvekZaslal: 25. květen 2010, 16:21:24    Předmět: Odpovědět s citátem

Tak mě napadá, jak ošéfovat součinnost třídění odpředu dozadu s tříděním podle materiálů? Určitě je nějaké osvědčené řešení, jen je otázka, jestli ho tu někdo znáte Wink
_________________
www.FRANTICWARE.com
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Játro.m



Založen: 01. 02. 2010
Příspěvky: 230

PříspěvekZaslal: 25. květen 2010, 17:02:28    Předmět: Odpovědět s citátem

Heh, asi jsem nejak vynechal..no nevadi Smile zkusim se mrknout jak to setridit zabehu.
frca: taky no idea
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Augi



Založen: 28. 07. 2007
Příspěvky: 782
Bydliště: Čerčany

PříspěvekZaslal: 25. květen 2010, 17:11:13    Předmět: Odpovědět s citátem

frca napsal:
Tak mě napadá, jak ošéfovat součinnost třídění odpředu dozadu s tříděním podle materiálů? Určitě je nějaké osvědčené řešení, jen je otázka, jestli ho tu někdo znáte Wink

O osvědčeném řešení nevím - to by se asi muselo nějak přepínat dynamicky podle aktuální scény.

Ale zajímavej mix by mohlo bejt tohle:
1) Vykreslit X objektů podle vzdálenosti od kamery (od nejbližšího).
2) Vykreslit ostatní objekty seřazené podle materiálu (tedy zahodit řazení podle vzdálenosti - protože vzdálené objekty už toho moc nezakryjí).

Příp. různý variace - třeba vykreslovat v bodu 1) všechny objekty v určité vzdálenosti od kamery (a při renderingu je řadit podle materiálu) - IMHO lepší.

Btw. možná by stálo za vyzkoušení nebrat vzdálenost od kamery absolutně, ale vážit ji velikostí objektu (např. na základě průměru bouding sphere). Tzn. velký objekt by byl vykreslen v kroku 1 i když by byl dále od kamery než jiný menší objekt.
Důvodem pro tohle vážení je to, že ve skutečnosti je nejdůležitější to, kolik objekt zabere pixelů na obrazovce (proto se vykresluje odpředu dozadu). A tohle by mohla být zajímavá aproximace.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
quas4



Založen: 18. 10. 2007
Příspěvky: 199

PříspěvekZaslal: 26. květen 2010, 00:08:19    Předmět: Odpovědět s citátem

frca napsal:
Tak mě napadá, jak ošéfovat součinnost třídění odpředu dozadu s tříděním podle materiálů? Určitě je nějaké osvědčené řešení, jen je otázka, jestli ho tu někdo znáte Wink


Je to problem tykajici se povahy dat. Obsahuje scena pruhledne objekty? Jak je deklarovan "material"? atd.. atd.. -> ujasneni mnoha faktoru pak vede k nektere z variant jako jsou hierarchicky culling, z-prepass rendering, deferred rendering, nebo raytracing? Smile. Dosud nejcastejsi forward rendering se taky neda jednoduse shrnout do seradit a kreslit odpredu dozadu, ale je potreba oddelit pruhledne objekty/particles s mix-blendingem a ty naopak kreslit odzadu dopredu. Takze dulezita jsou data. Obecne reseni neni.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1526
Bydliště: Telč

PříspěvekZaslal: 26. květen 2010, 08:20:08    Předmět: Odpovědět s citátem

Třeba: vykreslit odpředu dozadu pouze do ZBufferu (stačí mnohem míň materiálů) a potom setříděný podle materiálu do ColorBufferu.
Následně vykreslit průhledný objekty setříděný odzadu dopředu.
_________________
Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Játro.m



Založen: 01. 02. 2010
Příspěvky: 230

PříspěvekZaslal: 30. květen 2010, 10:17:57    Předmět: Odpovědět s citátem

Zdar, tak jsem se nejak pokusil o ten occlusion culling, ale nekde to ma hacek Smile Podarilo se mi na to najit asi jenom 2 samply z toho jeden a sgis ale ten jsem nepobral, takze nevim a netusim jestli to ma byt takto nebo ne.
http://nopaste.ceske-hry.cz/223053 (ten render, je orezanej o zbytecny veci jako jsou shadery a dalsi veci co nejsou potreba)

problem je nasledujici, predpokladal jsem ze ty primitiva co budu mit v glBeginQuery tak ze se nevykresli. Bohuzel je tomu opak, mam tam asi 1000 kouli. Dalsi problem je ze obcas se to utne. Priblizim se hodne blizko objektu a objekt se preskoci. Kombinace prvne vykreslit hipoly objekty a potom se ptat co se prekryva funguje pochybne. Kdyz to mam tak jak je to zakomentovane v kodu tak to funguje ale ma to tu vadu kterou jsem uz psal.

Jinak extensiony mam povoleny, nacteny, mam vygenerovany aji pres glGenQuery IDcka tech occlusionu.
Sedim nad tim docela dlouho a nic me nenapada.
Jestli to mam uplne blbe, tak me nekamenujte Very Happy smolil jsem to pres noc a je mozny ze jsem to uplne po**al.

Dik Jatro.

EDIT: jo to vykresleni tech kouli jsem vyresil, color mask na false a vypnuti depth testu, ale porad to vraci nejaky sileny vysledky.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy Časy uváděny v GMT + 1 hodina
Jdi na stránku Předchozí  1, 2, 3  Další
Strana 2 z 3

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna