Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
pospa
Založen: 22. 05. 2010 Příspěvky: 44
|
Zaslal: 6. prosinec 2010, 23:18:28 Předmět: |
|
|
Pominu-li alpha test (kde s tebou souhlasim, ale na nej nebyla smerovana otazka), tak mi teda nekdo vysvetlete, proc se vytvareji game modely tak, jak je videt ve vyse zminenem tutorialu? Myslim si, ze me zbytecne tahate za slovicka.. Kdyz se dela grafika pro film, ma nekolikanasobne vic trianglu (napr. robot z transformeru ma tusim okolo 2milionu), takze takovejhle model tezko nekdo bude davat do hry (pravda, vubec netusim co je toto "v případě BVH/BIH"). Podle me mas pravdu v tom, ze pokud grafik vi pro jakej engine dela model, tak je to nejlepsi reseni. V pripade tazatele je to pravdepodobne Unity, casem to mozna bude i neco jinyho, proto jsem radil spise obecne jak k tomu pristupovat a ze je rozdil v tom, jestli ma model 870000 trianglu nebo 3800 (viz ty obrazky), si proste stojim. Postavy v dnesnich hrach maji tusim okolo 25000 trianglu v pripade, ze je na ne bran velky detail, jinak by melo obecne stacit 10000-7000. Ale kolikrat vypada model lip s poradnou normal mapou a s mensim poctem trianglu nez naopak.
Tady je treba napsano, jak optimalizovat meshe pro Unity (doporucuji 1500-4000 trianglu na mesh):
http://unity3d.com/support/documentation/Manual/Optimizing%20Graphics%20Performance.html
a zde neco o postavach:
http://unity3d.com/support/documentation/Manual/Modeling%20Optimized%20Characters.html
Ale to uz je zabihani do detailu a to bysme tady mohli diskutovat do smrti. Jak rikam, DLE MEHO nazoru obecne plati, ze cim min poly, tim lip, dokud je to koukatelny z blizky vzdalenosti. |
|
Návrat nahoru |
|
 |
Vilem Otte

Založen: 18. 09. 2007 Příspěvky: 462 Bydliště: Znojmo - Sedlesovice, Kravi Hora
|
Zaslal: 7. prosinec 2010, 01:47:47 Předmět: |
|
|
Nemůžu než souhlasit. Těch 1500 - 4000 trianglů na Mesh je dneska víceméně standard pro ne AAA hry (u těch až k těm 20 000).
Já bych jenom dodal že dnes v AAA hrách mívá scéna mezi 200k - 1M trianglů. Nicméně s dnešními HW tessellátory ztrácí smysl tahat zbytečně přetessellované modely na kartu (můžeme je tessellovat až tam).
A k BVH/BIH - Bounding Volume Hierarchy (BVH) je sktruktura (hierarchie) scény založená na dělení na menší a menší objemy podle nějakého pravidla, až se dostaneš na úroveň trianglů (listů) - tedy jedna se o stromy. Bounding Interval Hierarchy je obdoba BVH, která je méně náročná na cache - ovšem jsou případy kdy její náročnost vzrůstá (definována daty ... samozřejmě to platí i pro BVH - záleží na situaci). _________________ Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration. |
|
Návrat nahoru |
|
 |
pospa
Založen: 22. 05. 2010 Příspěvky: 44
|
Zaslal: 7. prosinec 2010, 08:37:35 Předmět: |
|
|
Hm.. tak se te schvalne zeptam na muj problem, kterej budu za chvili asi resit. Jedna se prave o stromy, pouzivam na jejich tvorbu xfrog a puvodni plan byl udelat nekolik LODu, treba i 10 - xfrog to umi celkem pekne redukovat. Ale nevim, jestli je to rozumny. A druha vec je, jak udelat nejlip listy? Mit list ze dvou trianglu a delat alpha test je asi horsi nez mit list z 10 trianglu.. Asi zalezi na jak kterym HW, co? Delam v XNA. |
|
Návrat nahoru |
|
 |
Vilem Otte

Založen: 18. 09. 2007 Příspěvky: 462 Bydliště: Znojmo - Sedlesovice, Kravi Hora
|
Zaslal: 7. prosinec 2010, 15:44:17 Předmět: |
|
|
V tomto případě jde vlastně o rozšíření trimmingu, tady je první ukázkový obrázek:
Na něm ukazuji jak vypadala instance listu pro demo, které jsem předváděl na Game Access. Byly v něm dva stromy, každý z nich měl přes 262 tisíc instancí listů - což samo o sobě není málo (ovšem přes instance je to o něco maličko více náročné než kreslení pár listů bez nich), tedy jejich počet není až tak podstatný. Při kreslení ale šlo o to, aby fillrate nebyl příliš vysoký - tedy bylo nutné list co nejvíce ořezat, tedy máme sice 6 trianglů místo 2, ale ve výsledku je vše rychlejší (a to jak pro rasterizér (OpenGL) - u kterého GPU sice zvýšilo výkon několikanásobně oproti previous-gen, ale fillrate jen o cca 10 procent, tak pro raytracer - který jak jsem zmiňoval nemá problémy když je trianglů hodně, pokud máme dobrý optimalizační strom).
Ve výsledku vypadá jeden strom takto:
Obrázek je sejmutý během vývoje dema (tedy nějakou dobu zpět to je). _________________ Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration. |
|
Návrat nahoru |
|
 |
|