.[ ČeskéHry.cz ].
Komprese textur (BC6H a BC7)

 
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
perry



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

PříspěvekZaslal: 9. únor 2012, 17:12:40    Předmět: Komprese textur (BC6H a BC7) Odpovědět s citátem

Pokud chci uložit textury s kompresí BC6H nebo BC7, musím si algoritmus sám napsat (nebo použít sample z DX SDK a podle něj to napsat), nebo je v DX vestavěná komprese (dekomprese předpokládám je).

Pokud bych potřeboval dělat ručně i dekompresi (CPU verze pro HW bez DX11), předpokládám, že to také není problém.

Plus neví někdo o popisu algoritmů... našel jsem pouze stránky (a ten sample v SDK) Microsoftu, jinak nic od třetí strany co by bylo použitelné.

Díky
_________________
Perry.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
pcmaster



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

PříspěvekZaslal: 9. únor 2012, 17:22:42    Předmět: Odpovědět s citátem

Nacitat textury s lubovolnou kompresiou mozes automaticky pomocou D3DX11CreateShaderResourceViewFrom*(), staci ak do 3. parametra (D3DX11_IMAGE_LOAD_INFO::Format) das dany format (napr. DXGI_FORMAT_BC7_UNORM).
Tento resource potom mozes ulozit na disk pomocou D3DX11SaveTextureToFile() a ostane v BC7. To iste pre BC6. Dekompresia je samozrejme vstavana Smile Obecne pri tychto formatoch "standard" stanovuje len dekompresiu, tj poziadavky na jednotlive bloky dat. Tie si mozes vyrobit ako chces, na GameDev.net o tom bola pred par mesiacmi dost rozsiahla diskusia a aj zdrojaky na nejaky kompresor (ale mam pocit, ze len BC3, mozem skusit pohladat...).

Dokumentacia na MSDN je dost podrobna, podla mna by sa podla toho dal napisat dekompresor (to ako prve) a potom aj kompresor (tam budes musiet pouzit nejaku vlastnu heuristiku/statistiku).

Dalsie pravdepodobne velmi relevantne zdroje:

_________________
Off-topic flame-war addict since the very beginning. Registered since Oct. 2003!
Interproductum fimi omne est.


Naposledy upravil pcmaster dne 9. únor 2012, 17:29:26, celkově upraveno 1 krát
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
perry



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

PříspěvekZaslal: 9. únor 2012, 17:25:31    Předmět: Odpovědět s citátem

Jo.. nacitat vim, ze nacita automaticky.. ale nejak ten obrazek musim zkomprimovat nejdriv Smile Takze to si musim napsat sam
_________________
Perry.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
pcmaster



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

PříspěvekZaslal: 9. únor 2012, 17:31:13    Předmět: Odpovědět s citátem

Doplnil som nejake odkazy.

Edit: este http://www.gamedev.net/topic/616231-release-dxtn-compression-algorithm/

Ako pisem, ak ti staci vyrabat obrazky s danou kompresiou, rovno ich s nou nacitaj. Priklad, pre istotu:
1. Mas obycajne PNG/BMP/...
2. Jedinym prikazom si rovno vytvoris SRV vo formate BC7!!!
3. Jedinym prikazom ho ulozis zase na disk ako DDS (vo formate BC7)
Samozrejme za pouzitia DX11 Smile Tak som to myslel.
_________________
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
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
Strana 1 z 1

 
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