Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
perry
Založen: 28. 07. 2009 Příspěvky: 879
|
Zaslal: 9. leden 2018, 19:14:17 Předmět: GLSL - mediump vs highp |
|
|
Mám shader, který běží na mobilech. Problém je, že některé androidy neumí highp precision
kód: |
High precision not supported, instead compiling high precision as medium precision |
což je problém, protože mi to rozbíjí texturovací souřadnice počítané ve fragment shaderu(počítám tam mapové projekce) a dále ruční interpolaci (bilinerání i bikubickou).
Lze to nějak "vyřešit", nebo mám smůlu a prostě tam místo pěkné interpolace uvidím "kostičky" _________________ Perry.cz |
|
Návrat nahoru |
|
|
mar
Založen: 16. 06. 2012 Příspěvky: 608
|
Zaslal: 9. leden 2018, 21:12:30 Předmět: Re: GLSL - mediump vs highp |
|
|
perry napsal: |
Mám shader, který běží na mobilech. Problém je, že některé androidy neumí highp precision |
To se mi nezdá, transformace vertexů v half floatech by byly snad nesmysl.
Můžeš sem postnout shader (ideálně minimální verzi, kde to ještě háže tu chybu)?
Nepřiřazuješ třeba hodnotu uniformu nebo tak něco? |
|
Návrat nahoru |
|
|
perry
Založen: 28. 07. 2009 Příspěvky: 879
|
Zaslal: 10. leden 2018, 07:22:31 Předmět: |
|
|
Vertex shader má highp... fragment shader ne a texturovací souřadnice počítám v něm. _________________ Perry.cz |
|
Návrat nahoru |
|
|
TeaTime
Založen: 17. 06. 2011 Příspěvky: 264
|
Zaslal: 10. leden 2018, 08:46:16 Předmět: |
|
|
Ten shader by podle mě mělo jít upravit tak, aby mu stačila nižší přesnost. Hoď sem ten shader. Stejně jsem zkoušel najít na netu nějakou GLSL implementaci texturových interpolačních shaderů a moc jsem toho nenašel, tak by mě to zajímalo i tak, se na to podívat .
Jo a není taky možné, že tam je ještě nějaký jiný problém specifický pro mobily? To co popisuješ (náhlý výskyt kostiček) není úplně to, co bych čekal od změny přesnosti. |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 10. leden 2018, 09:29:18 Předmět: |
|
|
Na mapový projekce je potřeba velká přesnost. Nemusíš je ale počítat ve fragment shaderu. Jako dobrá aproximace by měla stačit mřížka a vypočítat to ve vertex shaderu. Nebo dokonce rovnou na CPU, což mi připadá nejlepší. Nemusíš se pak zatěžovat s problémy v shaderu a můžeš na projekce použít i nějakou knihovnu (libGeo, nebo něco takového).
Já osobně to tak dělám v práci (mřížka + projekce předpočítané na CPU) když generuju terény.
K té interpolaci: Divím se, že na bilineární interpolaci mediump nestačí. Není to nějaká nepřesnost spojená s těmi projekcemi? _________________ Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory |
|
Návrat nahoru |
|
|
perry
Založen: 28. 07. 2009 Příspěvky: 879
|
Zaslal: 10. leden 2018, 12:22:13 Předmět: |
|
|
Jo, myslel jsem to tak, ze prave ty projekce spoctou uz blbe ty texturovaci souradnice a tim se pak asi rozbije i ta bilinear projekce.
Na cpu to nespoctu, ve vertex shaderu by to ssi slo. Ta mrizka bude muset byt asi dost detailni. Ted mam quad a konec. Zkusim udelat treba grid 512x512 nisto jednoho quadu. Side effect bude asi i celkove urychleni _________________ Perry.cz |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 10. leden 2018, 12:30:37 Předmět: |
|
|
Proč by to na CPU nemělo jít spočítat? A ani nemyslím, že by to muselo být nějak extra detailní :-). Já třeba přepočítávám z UTM do Lon/Lat a mřížka vpodstatě stačí i po kilometru a runway letiště sedí. Pokud bys měl třeba pohled na celý svět, bude ti zase stačit malá přesnost, protože z tý dálky nebude vidět ani kilometrová chyba. To bys vyzkoušel. _________________ Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory |
|
Návrat nahoru |
|
|
perry
Založen: 28. 07. 2009 Příspěvky: 879
|
Zaslal: 10. leden 2018, 12:49:10 Předmět: |
|
|
Jako slo by to na CPU akorat semi to moc nelibi, protoze bych to stejne pocital pri pohybu mapy porad znova a ten vypocet na gpu bezi pekne paralelne _________________ Perry.cz |
|
Návrat nahoru |
|
|
|