.[ ČeskéHry.cz ].
Vegetace
Jdi na stránku 1, 2  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
tomkis



Založen: 06. 06. 2011
Příspěvky: 33

PříspěvekZaslal: 15. červen 2011, 06:09:38    Předmět: Vegetace Odpovědět s citátem

Čau, chtěl bych vědět vaše postřehy a rady ohledně generování (tvorby) vegetace v outdoor enginu. Konkrétně mám dvě otázky.

1) Tvorba trávy - Je možno použít metodu z GPU gems 2 kdy se vykreslujou "trsy" jako otexturovane čtverce s alphablendingem? Jedná se mi spíše o to jak to zamaskovat do dálky. Věřím že když těchto trsů bude trochu tak to výkonově bude OK ale jak řešit LOD ?

2) Tvorba stromů keřů etc. - Napadlo mě použit na blízku od kamery pěkné modely (low poly s normalovou mapou) které se na dálku budou měnit v billboardy, je tahle technika v pořádku?

Vešekeré podněty k generování tvorbě vegetace velmi rád příjmu.

Moje představa je asi taková že trávu budu renderovat tou metodou z GPU gems přičemž jí budu zobrazovat jen v okolí kamery (musím si určit poměr mezi vizualni kvalitou a výkonem). Trávu nebudu náhodně generovat ale spíše jí budu umístovat dle barevné textury která odpovídá mojem terénu.

Co se stromů týče asi bych chtěl použit ten billboarding do dálky a na blízku pěkné modely (je nutný geometry instancing?)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Pavel



Založen: 29. 07. 2007
Příspěvky: 54
Bydliště: Litovel

PříspěvekZaslal: 15. červen 2011, 07:25:36    Předmět: Odpovědět s citátem

A jake pouzijes modely pro stromy a kere? Budes mit hotove modely, nebo si je budes generovat?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
tomkis



Založen: 06. 06. 2011
Příspěvky: 33

PříspěvekZaslal: 15. červen 2011, 07:35:09    Předmět: Odpovědět s citátem

modely budu mit hotove
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
pcmaster



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

PříspěvekZaslal: 15. červen 2011, 14:19:58    Předmět: Odpovědět s citátem

S 2) budes mat problem s tzv "pop" efektom, ked dojde k prepnutiu z geometrie na billboard.
Tento problem nastane pri akomkolvek prepinani (a je mozne ho vidiet vo vacsine dnesnych hier Smile)
_________________
Off-topic flame-war addict since the very beginning. Registered since Oct. 2003!
Interproductum fimi omne est.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
perry



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

PříspěvekZaslal: 15. červen 2011, 15:10:17    Předmět: Odpovědět s citátem

Instancing bych doporučoval na stromy, ale zase záleží kolik jich bude. Instancovat 4 stromy asi moc smysl nemá, u 20 už bych řekl že by mohlo, u 200 mít bude Smile
_________________
Perry.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 15. červen 2011, 16:18:32    Předmět: Odpovědět s citátem

Rozhodně má smysl používat instancing, pokud tam bude víc jak jeden strom. Twisted Evil
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Vilem Otte



Založen: 18. 09. 2007
Příspěvky: 462
Bydliště: Znojmo - Sedlesovice, Kravi Hora

PříspěvekZaslal: 15. červen 2011, 16:38:06    Předmět: Odpovědět s citátem

Mno ... pro vzdálenější stromy JEDINĚ instancing, pro blízké ti asi moc nepomůže (jelikož tam to bude chtít nějakou tu nahodilost).

Někdy je třeba používat instancing i na jednotlivé listy (takových 262k listů je docela šílenost ... a s instancingem žádný problém - tedy nějakých 6 MiB v grafické paměti ... ale vypadá to supr Twisted Evil). Viz:


Pro trávu můžeš použít quady, ale jsou tady i lepší řešení (často si to chce šíleně pohrát s LODem, a vymyslet celkem vychytralá řešení jak na LOD u trávy a na to, aby tráva byla v blízkosti složena z geometrie). V blízkosti geometrie, o něco dále jsou to "řezy" a ještě dále to může být jen textura na modelu pod trávou (příp. megatextura na modelu terénu)
_________________
Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovi WWW stránky
perry



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

PříspěvekZaslal: 15. červen 2011, 17:41:43    Předmět: Odpovědět s citátem

citace:
Pro blízké ti asi moc nepomůže (jelikož tam to bude chtít nějakou tu nahodilost)


To moc nechápu... proč by pro blízké neměl být instancing použitelný ? Stromy se přece nemění během framů Smile
_________________
Perry.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Vilem Otte



Založen: 18. 09. 2007
Příspěvky: 462
Bydliště: Znojmo - Sedlesovice, Kravi Hora

PříspěvekZaslal: 15. červen 2011, 18:18:27    Předmět: Odpovědět s citátem

Tak řekněme že v blízkosti nechceš mít instance jediného stromu, ale chceš ať je každý jiný (každý ma jiný model). Přece jen neustále stejné stromy vypadají hrozně.
_________________
Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovi WWW stránky
VladR



Založen: 30. 07. 2007
Příspěvky: 1322
Bydliště: Greater New York City Area

PříspěvekZaslal: 15. červen 2011, 19:16:34    Předmět: Odpovědět s citátem

Taky Crysis 1 mal uplne priserny po(o)pping vegetacie, na to sa chvilami nedalo ani pozerat, a tom som si isty, ze tam na to vyclenili jedneho cloveka, co sa pol roka hrajkal len s instancingom vegetacie. Mas ty tolko casu ? Ak hej, tak gratulujem.

Takze, spokojny s vysledkom nebudes nikdy, ale pokial si nedas tu pracu s impostormi, tak pri jednoduchom switchi medzi mesh/billboard to inak dopadnut nemoze.

Je dost mozne, ze pri hustejsej vegetacii, ti ten blizsi zeleny bordel prekryje poopping toho vzdialenejsieho zeleneho bordelu Smile
Aspon u mna, to tak vo vacsine pripadov pri vegetacii bolo.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Vilem Otte



Založen: 18. 09. 2007
Příspěvky: 462
Bydliště: Znojmo - Sedlesovice, Kravi Hora

PříspěvekZaslal: 15. červen 2011, 19:47:18    Předmět: Odpovědět s citátem

citace:
Taky Crysis 1 mal uplne priserny po(o)pping vegetacie, na to sa chvilami nedalo ani pozerat, a tom som si isty, ze tam na to vyclenili jedneho cloveka, co sa pol roka hrajkal len s instancingom vegetacie. Mas ty tolko casu ? Ak hej, tak gratulujem.

To nevím, u Crysisu jsem si toho tolik nevšiml ... nicméně, já mám dost času na práci na vlastní technologii (na druhou stranu, kdyby ho bylo více, nevadilo by mi to), navíc na ni nepracuji ani sám a vegetaci věnujeme docela dost času. Jestli bude tento rok GDS či GA, či něco podobného, a byl by zájem - možná bych zauvažoval o menší přednášce jak na vegetaci.

Např. u té trávy ve screenshotu jsem si docela pohrál a přechod tam je skutečně plynulý a velmi špatně viditelný, jde to.

Co se týče impositorů, pokud máš dobrý vegetační systém, můžeš impository generovat realtime Wink to je pak teprve supr. Pravda u hry ve které bude pár stromů to asi smysl nemá, ale když v ní máš spousty lesů - tak to se bez takového systému neobejde. Nicméně fakt je, že lodding je problém a 2 úrovně LOD nestačí, chce jich to více a plynulé přechody (ty jsou ale někdy nepříliš snadné).
_________________
Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovi WWW stránky
VladR



Založen: 30. 07. 2007
Příspěvky: 1322
Bydliště: Greater New York City Area

PříspěvekZaslal: 15. červen 2011, 21:41:39    Předmět: Odpovědět s citátem

Samozrejme, ze hovorim o real-time impostoroch - ved ak by to nebolo real-time, tak to je len klasicky billboard.

Tym padom - prechod medzi meshom a impostorom je vcelku plynuly a pokial to clovek v obraze nehlada, tak si to nevsimne - a bezny hrac uz vonkoncom nie.


By ma inak zaujimalo, ze skade beries tolko casu na kodenie enginu. To mas nejake financovanie zabezpecene, ze to robis fulltime ?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Vilem Otte



Založen: 18. 09. 2007
Příspěvky: 462
Bydliště: Znojmo - Sedlesovice, Kravi Hora

PříspěvekZaslal: 15. červen 2011, 21:54:10    Předmět: Odpovědět s citátem

citace:
By ma inak zaujimalo, ze skade beries tolko casu na kodenie enginu. To mas nejake financovanie zabezpecene, ze to robis fulltime ?

První pointa je, že na tom nedělám sám - ta je docela důležitá, protože víc lidí udělá práci rychleji (často mnohem rychleji), než by ji dělal jeden.

Co se financování týče, tak mě nefinancuje žádná třetí strana. Nicméně to není téma, které bych chtěl zde na fóru probírat.
_________________
Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovi WWW stránky
tomkis



Založen: 06. 06. 2011
Příspěvky: 33

PříspěvekZaslal: 15. červen 2011, 22:24:49    Předmět: Odpovědět s citátem

ještě jsem se chtěl zeptat. Jak řešit texturovani terenu?

Chtěl jsem použit klasicky blending za pomocí weightmapy, ale nějak jsem se zasekl že nemůžu najít pořádný nástroj (musí podporovat 3D pohled) pomocí kterého by se dala tato weightmapa vytvořit. Nechci to v žádném případě generovat (na základě výšky nebo tak).

Znáte nějaky dobrý software pro tvorbu weightmap + eventuelně i kompletní tvorbu terénu(heightmapy)?

Pak mě napadlo vyvinout si vlastní řešení, nicméně byla by to zase hromada práce navíc a zajisté už nějake takové řešení existuje, mám pocit že UDK něco takového zvládá, ale otázka je jeslti dokáže i exportnout heightmapu a weightmapu.
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: 16. červen 2011, 09:58:59    Předmět: Odpovědět s citátem

Eosie napsal:
Rozhodně má smysl používat instancing, pokud tam bude víc jak jeden strom. :twisted:

Smysl používat ano, smysl programovat ne :-) (Mimochodem, proč tady půlka lidí používá toho smajlíka čerta, i když o hovno de?)
_________________
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
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 1, 2  Další
Strana 1 z 2

 
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