3Dc

С Википедије, слободне енциклопедије

3Dc (FourCC : ATI2), позната као и DXN, BC5, или Block Compression 5 је алгоритам компресије са губитком података за нормалне мапе направљен и прво имплементиран од стране ATI[1]. Ослања се на ранији DXT5 алгоритам и то је отворен стандард.3Dc је сада имплементиран од стране ATI[1] и Nvidia[2] је један од највећих светских произвођача графичких чипова за личне рачунаре и Xbox.

Циљна апликација[уреди | уреди извор]

Циљна апликација, нормално мапирање, је екстензија бамп мапирања која симулира осветљење геометриских поврсина тако што чита површине нормала са проволиниских мрежа који су аналогни текстурним мапама - дајући једноставним моделима импресију повећане комплексности. Овај додатни канал повећава учитавање протока графичким мемориским системима. Пре постојања алгоритама са губитком података имплементираним на корисничком хардверу имали смо мањак прецизности неопходну за репродукцију нормалних мапа без прекомерних видљивих артефакта, правдајући развој 3Dc.

Алгоритам[уреди | уреди извор]

Нормале површине су тродимензионални вектори, јединичне вредности. Зато сто је дужина константна само два елемента једне нормале морају бити сортирана. И због тога је улаз само низ од само дводимензионалних елемената.

Компресија се изводи на 4х4 блоковима. У сваком блоку, две компоненте сваке вредности су компресоване појединачно. За сваки блок, свака од две компоненте има палету од осам вредности. Палете су генерисане од две вредности које представљају почетак и крај праве, остале шест вредности су генерисане као линеарна комбинација почетка и краја праве.

Компресија је изворно постигнута проналажењем најмање и највеће вредности од 16 пиксела, које су компресоване и сортиране у 8-битним количинама. Индивидуални елементи у 4х4 блоковима се чувају у 3-бита појединачно, представљајући њихову позицију на осмо степеној линеарнј скали. Свака 3-битна вредност пиксела биће изабрана од минималне дистанце од оригиналне вредности.

Укупно чување је 128-бита по 4х4 блоку, кад два извора буду факторисана. У не компресованој шеми са 8-битној прецизношћу, извор података је 32 8-битне вредности за исту област, заузимају ћи 256 бита. Тада алгоритам прави компресију размере 2:1.

Размера компресије на почетку је 4:1 јер је уобичајно да се користи 16-битна прецизност за улазне податке него 8-битна.

3Dc+[уреди | уреди извор]

3Dc+ (FourCC: ATI1) (позната као BC4 или Block Compression 4) може да компресује текстуре тј. лаке мапе, мапе сенки, HDR текстуре и својства материјала.3Dc+ омогућава 2:1 однос компресије са једном компонентом 8-битне целобројне текстуре и 4:1 однос компресије са нормалним мапама и са текстурама које се састоје од две 8-битне целобројне компоненте.

Референце[уреди | уреди извор]

  1. ^ а б АТИ. „АТИРЕФ” (на језику: енглески). Приступљено 8. 2. 2016. „Компанија се бави производњом микропроцесора и флеш меморија 
  2. ^ „NVIDIAРЕФ” (на језику: енглески). 1993. Приступљено 8. 2. 2016. „NVIDIA Corporation  |first1= захтева |last1= у Authors list (помоћ)

Литература[уреди | уреди извор]

  • Introductions to algorithms -Thomas H. Cormen,Charles E. Leiserson,Ronald L. Rivest,Clifford Stein, књигу можете погледати овде Архивирано на сајту Wayback Machine (18. октобар 2016)
  • Алгоритми и структуре података - Мило Томашевић

Спољашње везе[уреди | уреди извор]