Google ati Binomial Ṣi koodu fun Ipilẹ Gbogbo Texture funmorawon System

Google ati Binomial ṣí orisun koodu Ipilẹ Gbogbogbo, kodẹki kan fun funmorawon sojurigindin ati awọn ẹya ni nkan ṣe fun gbogbo ".ipilẹ" ọna kika faili fun pinpin image- ati fidio-orisun awoara. Awọn koodu imuse itọkasi ti kọ sinu C ++ ati pese iwe-aṣẹ labẹ Apache 2.0.

Ipilẹ Universal complements tẹlẹ atejade Eto funmorawon data Draco 3D o gbiyanju lati yanju iṣoro naa pẹlu fifun awọn awoara fun GPU. Titi di isisiyi, awọn olupilẹṣẹ ti ni opin si yiyan laarin awọn ọna kika kekere-kekere ti o ṣe aṣeyọri iṣẹ-giga ṣugbọn o jẹ GPU-pato ati gba aaye disk pupọ, ati awọn ọna kika miiran ti o ṣaṣeyọri idinku iwọn ṣugbọn ko le dije pẹlu awọn awoara GPU ni iṣẹ.

Ọna kika Ipilẹ Gbogbogbo gba ọ laaye lati ṣaṣeyọri iṣẹ ti awọn awoara GPU abinibi, ṣugbọn pese ipele ti o ga julọ ti funmorawon.
Ipilẹ jẹ ọna kika agbedemeji ti o pese iyipada iyara ti awọn awoara GPU si ọpọlọpọ awọn ọna kika ipele kekere fun lilo lori awọn eto tabili mejeeji ati awọn ẹrọ alagbeka ṣaaju lilo. Ni atilẹyin lọwọlọwọ jẹ PVRTC1 (4bpp RGB), BC7 (ipo RGB 6), BC1-5, ETC1, ati awọn ọna kika ETC2. Atilẹyin ọjọ iwaju ni a nireti fun ọna kika ASTC (RGB tabi RGBA) ati awọn ipo 4/5 RGBA fun BC7 ati 4bpp RGBA fun PVRTC1.

Google ati Binomial Ṣi koodu fun Ipilẹ Gbogbo Texture funmorawon System

Awọn awoara ni ọna kika ipilẹ gba awọn akoko 6-8 kere si iranti fidio ati pe o nilo gbigbe to idaji bi data pupọ bi awọn awoara aṣoju ti o da lori ọna kika JPEG ati 10-25% kere ju awọn awoara ni ipo RDO. Fun apẹẹrẹ, pẹlu iwọn aworan JPEG ti 891 KB ati ẹya ETC1 ti 1 MB, iwọn data ni ọna kika Basis jẹ 469 KB ni ipo didara julọ. Nigbati o ba gbe awọn awoara sinu iranti fidio, JPEG ati awọn awoara PNG ti a lo ninu awọn idanwo jẹ 16 MB ti iranti, lakoko ti awọn awoara ni
Ipilẹ nilo 2 MB ti iranti fun itumọ si BC1, PVRTC1 ati ETC1, ati 4 MB fun itumọ si BC7.

Google ati Binomial Ṣi koodu fun Ipilẹ Gbogbo Texture funmorawon System

Ilana gbigbe awọn ohun elo ti o wa tẹlẹ si Basis Universal jẹ ohun rọrun. O to lati tun ṣe atunṣe awọn awoara ti o wa tẹlẹ tabi awọn aworan sinu ọna kika tuntun nipa lilo ohun elo “basisu” ti a pese nipasẹ iṣẹ akanṣe, yiyan ipele didara ti o nilo. Nigbamii, ninu ohun elo naa, ṣaaju koodu fifisilẹ, o nilo lati ṣe ipilẹṣẹ transcoder baseu, eyiti o ni iduro fun titumọ ọna kika agbedemeji si ọna kika atilẹyin nipasẹ GPU lọwọlọwọ. Ni akoko kanna, awọn aworan jakejado gbogbo pq processing wa ni fisinuirindigbindigbin, pẹlu ti kojọpọ ni fọọmu fisinuirindigbindigbin sinu GPU. Dipo ti iṣaju-emptively transcoding gbogbo aworan, GPU yiyan yan awọn ẹya pataki ti aworan naa.

O ṣe atilẹyin fifipamọ awọn oniruuru oniruuru oniruuru (cubemaps), awọn awoara iwọn didun, awọn ọna ijuwe, awọn ipele mipmap, awọn ilana fidio tabi awọn ajẹku sojurigindin lainidii ninu faili kan. Fun apẹẹrẹ, o ṣee ṣe lati gbe awọn aworan lẹsẹsẹ ni faili kan lati ṣẹda awọn fidio kekere, tabi ṣajọpọ ọpọlọpọ awọn awoara nipa lilo paleti ti o wọpọ fun gbogbo awọn aworan ati yiyọkuro awọn awoṣe aworan aṣoju. Ipilẹ Ipilẹ gbogbo koodu imuse ṣe atilẹyin fifi koodu-asapo olona nipa lilo OpenMP. transcoder lọwọlọwọ n ṣiṣẹ ni ipo asapo ẹyọkan.

Ti ni ilọsiwaju wa Basis Universal decoder fun awọn aṣawakiri, ti a firanṣẹ ni ọna kika WebAssembly, eyiti o le ṣee lo ni awọn ohun elo wẹẹbu ti o da lori WebGL. Ni ipari, Google pinnu lati ṣe atilẹyin Basis Universal ni gbogbo awọn aṣawakiri pataki ati ṣe igbega bi ọna kika sojurigindin fun WebGL ati sipesifikesonu ọjọ iwaju kan WebGPU, eyi ti o jẹ iru ero si Vulkan, Irin ati Direct3D 12 APIs.

O ṣe akiyesi pe agbara lati fi sii fidio pẹlu sisẹ atẹle rẹ nikan ni ẹgbẹ GPU jẹ ki Basis Universal jẹ ojutu ti o nifẹ fun ṣiṣẹda awọn atọkun olumulo ti o ni agbara lori WebAssembly ati WebGL, eyiti o le ṣafihan awọn ọgọọgọrun ti awọn fidio kekere nigbakanna pẹlu fifuye Sipiyu pọọku. Titi awọn ilana SIMD le ṣee lo ni WebAssembly pẹlu awọn kodẹki ibile, ipele iṣẹ ṣiṣe ko tii ṣe aṣeyọri, nitorinaa fidio ti o da lori ọrọ le ṣee lo ni awọn agbegbe nibiti fidio aṣa ko wulo. Koodu pẹlu afikun awọn iṣapeye fun fidio ti wa ni ipese lọwọlọwọ fun titẹjade, pẹlu agbara lati lo I-fireemu ati P-fireemu pẹlu padding adaptive (CR) support.

orisun: opennet.ru

Fi ọrọìwòye kun