3Dc

Из Википедије, слободне енциклопедије
Иди на навигацију Иди на претрагу

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

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

Циљна апликација, нормално мапирање,је екстензија бамп мапирања која симулира осветљење геометриских поврсина тако што чита површине нормала са проволиниских мрежа који су аналогни текстурним мапама - дајући једноставним моделима импресију повећане комплексности. Овај додатни канал повећава учитавање протока графичким мемориским системима. Пре постојања алгоритама са губитком података имплементираним на корисничком хардверу имали смо мањак прецизности неопходну за репродукцију нормалних мапа без прекомерних видљивих артефакта, правдајући развој 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. Introductions to algorithms -Thomas H. Cormen,Charles E. Leiserson,Ronald L. Rivest,Clifford Stein, књигу можете погледати овде
  2. Алгоритми и структуре података - Мило Томашевић
  • 1,0 1,1 {{| title = АТИРЕФ|cite web| first = АТИ| work = http://www.amd.com/en-us%7C accessdate = 8. 2. 2016| language = Енглески| quote = Компанија се бави производњом микро процесора и флеш меморија}}
  • ^ „NVIDIAРЕФ”. http://www.nvidia.com/content/global/global.php (на језику: енглески). 1993. »NVIDIA Corporation је један од највећих светских произвођача графичких чипова за личне рачунаре и Xbox.«  |first1= захтева |last1= у Authors list (помоћ); Спољашња веза у |work= (помоћ); Недостаје или је празан параметар |url= (помоћ);