Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
RedLeader
Založen: 05. 08. 2007 Příspěvky: 74 Bydliště: Brno
|
Zaslal: 6. listopad 2007, 21:48:42 Předmět: VBO a koordináty |
|
|
Zdravím. Tak nějak nemůžu přijít na to, jak zkloubit tyto věci dohromady:
Data terénu (vertexy, normály, koordináty velké přechodové textury a koordináty tilovacích textur) mám uloženy separátně, pro každý vertex. Ovšem terén je rozdělen na sektory přes quatree a já mám v každém sektoru indexy na vertexy do hlavního bufferu terénu. No a teď jsem si udělal minisystémek, kterej mi generuje úrovně detailů lightmapy do každého sektoru, vypadá to sice fajnově, ale je tu trochu průšvih Protože každý sektor má svoje lightmapy, tak všechny vertexy toho sektoru mají ještě sólo koordináty na lightmapu. A to je problém, když pak volám glDrawElements, tak indexy ukazují do hlavního buferu, ale bindnuté koordináty sektorů jsou špatně. Myslím si, že je to tím, že hlavní buffer a lightmapový buffer mají rozdílné velikosti (hlavní buffer má všechny vertexy terénu a sektor jen svou část). Otázkou ale je, co teď s tím, napadá vás někoho nějaký fígl? _________________ Je neustále třeba zkoušet nové věci (Dr.Lector). |
|
Návrat nahoru |
|
|
Marek
Založen: 28. 07. 2007 Příspěvky: 1782 Bydliště: Velká Morava
|
Zaslal: 7. listopad 2007, 02:47:15 Předmět: |
|
|
Zamyslet se, vymyslet fungující řešení a přepsat kód. Fígl na to asi nebude, co takhle si ten terén v quadtree nasekat na samostatné meshe? _________________ AMD Open Source Graphics Driver Developer |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 7. listopad 2007, 10:05:09 Předmět: |
|
|
snad sem tě pochopil správně..
moh bys hodit ty ligtmapový koordináty taky do toho hlavního vertex bufferu, ovšem některý vertexy (ty na hranách sektorů) bys musel duplikovat _________________ Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory |
|
Návrat nahoru |
|
|
VladR
Založen: 30. 07. 2007 Příspěvky: 1322 Bydliště: Greater New York City Area
|
Zaslal: 7. listopad 2007, 12:19:50 Předmět: Re: VBO a koordináty |
|
|
RedLeader napsal: |
No a teď jsem si udělal minisystémek, kterej mi generuje úrovně detailů lightmapy do každého sektoru, vypadá to sice fajnově, ale je tu trochu průšvih Protože každý sektor má svoje lightmapy, tak všechny vertexy toho sektoru mají ještě sólo koordináty na lightmapu. A to je problém,
...
Otázkou ale je, co teď s tím, napadá vás někoho nějaký fígl? |
Vzdy, ked rozsirujes funkcionalitu si musis zvazit ci sa pustis do nevyhnutnych suvisiacich zmien. To je pri terene uplne normalne, aj ked sa ti nechce. Ja mam tiez asi 10 roznych verzii rendererov terenu, podla toho, co vsetko tam chcem mat, aky system texturovania a nasvietenia volim, a aj v zavislosti od typu kompresie.
Nikto to za teba nevymysli - proste si nad to sadni, spis si do TXT suboru co treba zmenit a refaktoruj kod podla poziadaviek. Hlavne si niekde nechaj funkcnu verziu toho co uz ide, aby ked sa zaseknes pri zmenach, si sa vedel vratit spat a pozriet ako to islo v predoslej verzii rendereru..
Ohladom tych UV koordinatov - nechcelo sa mi to citat detailne, ze co vlastne robis, ale vo vseobecnosti sa predsa UV koordinaty daju vyratat v shaderi, resp. pouzivas 1 chunk terenu v separatnom streame, ktory ma nahodene UV kooridnaty a uz ich iba offsetujes v shaderi v zavislosti na WorldPos chunku instrukciou ADD oT0.xy,v0,v[CHUNK_OFFSET].
Pozeral si sa do debuggera, ze co za hodnoty tam vlastne mas ? Podla nich hned zistis, co je vlastne problem. |
|
Návrat nahoru |
|
|
RedLeader
Založen: 05. 08. 2007 Příspěvky: 74 Bydliště: Brno
|
Zaslal: 7. listopad 2007, 16:23:30 Předmět: Re: VBO a koordináty |
|
|
Eosie>no, já myslel za to, že kartu přepínání bufferů zdržuje, tak proto jsem se snažil minimalizovat střídání po sektorech a přepínat jen elementy.
]semo[ : jo jo, přesně to chápeš, taky jsem to právě takhle zamýšlel, jenže se mi nějak nechtělo řešitt právě ony duplikované vertexy vidím, že asi budu stejně muset
VladR: nechtěl jsem hotové řešení, jen jsem myslel, že by mě někdo mohl pošoupnout správným směrem. Tak, jak mě utvrdil k nevyhnutelné věci semoš... Hodnoty jsou samozřejmě dobře, vypočítat takovou banalitu ještě zvládám Jojo, však rozšiřuju a počítám s tím.
Tudíž díky za odpovědi ve vašem volném čase , ta duplikace mi připadá asi nejjednodušší, i když se mi nechtělo _________________ Je neustále třeba zkoušet nové věci (Dr.Lector). |
|
Návrat nahoru |
|
|
|