I-Google kanye ne-Binomial open source Basis Universal texture compression system

Google kanye Binomial kuvuliwe ikhodi yomthombo Isisekelo Somhlaba Wonke, i-codec yokuminyanisa ukuthungwa okuphumelelayo kanye nefomethi yefayela ".basis" ehlotshaniswayo yendawo yonke yokusabalalisa ukuthungwa okusekelwe kwisithombe nevidiyo. Ikhodi yokusebenzisa ireferensi ibhalwe ku-C++ futhi kuhlinzekiwe ilayisensi ngaphansi kwe-Apache 2.0.

I-Bass Universal igcwalisa ngaphambilini eshicilelwe Isistimu yokucindezelwa kwedatha ye-Draco 3D futhi izama ukuxazulula inkinga ngokunikeza ukwakheka kwe-GPU. Kuze kube manje, abathuthukisi banqunyelwe ekukhetheni phakathi kwamafomethi asezingeni eliphansi afinyelela ukusebenza okuphezulu kodwa aqondene ngqo ne-GPU futhi athatha isikhala sediski esiningi, namanye amafomethi azuza ukuncishiswa kosayizi kodwa awakwazi ukuncintisana nokuthungwa kwe-GPU ekusebenzeni.

Ifomethi ye-Basis Universal ikuvumela ukuthi ufinyelele ukusebenza kokwakheka kwe-GPU yomdabu, kodwa inikeza izinga eliphezulu lokuminyanisa.
I-Basis iyifomethi emaphakathi ehlinzeka ngokudluliswa kwekhodi okusheshayo kokuthungwa kwe-GPU kuya kumafomethi ahlukene asezingeni eliphansi ukuze asetshenziswe kuzo zombili izinhlelo zedeskithophu namadivayisi eselula ngaphambi kokusetshenziswa. Okwamanje asekelwayo amafomethi e-PVRTC1 (4bpp RGB), BC7 (6 RGB), BC1-5, ETC1, kanye ne-ETC2. Usekelo lwesikhathi esizayo lulindelekile kufomethi ye-ASTC (RGB noma RGBA) kanye nezindlela ezingu-4/5 RGBA ze-BC7 kanye ne-4bpp RGBA ye-PVRTC1.

I-Google kanye ne-Binomial open source Basis Universal texture compression system

Ukwakheka kwefomethi yesisekelo kuthatha inkumbulo yevidiyo ephindwe izikhathi ezingu-6-8 futhi kudinga ukudlulisa cishe uhhafu wedatha eningi njengokuthungwa okujwayelekile okusekelwe kufomethi ye-JPEG kanye no-10-25% ngaphansi kokwakheka kwemodi ye-RDO. Isibonelo, ngosayizi wesithombe se-JPEG esingu-891 KB kanye nokuthungwa kwe-ETC1 okungu-1 MB, usayizi wedatha ngefomethi ye-Basis ungu-469 KB kumodi yekhwalithi ephezulu kakhulu. Lapho kufakwa ukwakheka kumemori yevidiyo, ukuthungwa kwe-JPEG ne-PNG okusetshenziswe ekuhlolweni kudla inkumbulo engu-16 MB, kuyilapho ukuthungwa kungaphakathi.
Isisekelo sidinga u-2 MB wenkumbulo ukuze kuhunyushwe ku-BC1, PVRTC1 ne-ETC1, kanye no-4 MB ukuze kuhunyushelwe ku-BC7.

I-Google kanye ne-Binomial open source Basis Universal texture compression system

Inqubo yokuthuthela izinhlelo zokusebenza ezikhona ku-Basis Universal ilula kakhulu. Kwanele ukuphinda ubhale kabusha ukuthungwa okukhona noma izithombe zibe ifomethi entsha usebenzisa insiza ethi "basisu" enikezwe iphrojekthi, ukukhetha izinga lekhwalithi elidingekayo. Okulandelayo, kuhlelo lokusebenza, ngaphambi kwekhodi yokunikezela, udinga ukuqalisa i-basisu transcoder, enesibopho sokuhumusha ifomethi emaphakathi ibe yifomethi esekelwa yi-GPU yamanje. Ngesikhathi esifanayo, izithombe kulo lonke uchungechunge lokucubungula zihlala zicindezelwe, okuhlanganisa ukulayishwa ngendlela ecindezelwe ku-GPU. Esikhundleni sokudlulisa amakhodi kusengaphambili kuso sonke isithombe, i-GPU ikhetha kuphela izingxenye ezidingekayo zesithombe.

Isekela ukugcinwa kokwakheka okufanayo okuhlukile (ama-cubemaps), ukuthungwa kwe-volumetric, ukuthungwa kwamalungu afanayo, amaleveli e-mipmmap, ukulandelana kwevidiyo noma izingcezu zokuthungwa okungahleliwe kufayela elilodwa. Isibonelo, kungenzeka ukupakisha uchungechunge lwezithombe efayeleni elilodwa ukuze udale amavidiyo amancane, noma uhlanganise ukuthungwa okuningana usebenzisa iphalethi evamile yazo zonke izithombe nokuphindaphinda izifanekiso zezithombe ezijwayelekile. Ukufakwa kwekhodi ye-Basis Universal kusekela ukubhala ngekhodi okunemicu eminingi kusetshenziswa i-OpenMP. I-transcoder okwamanje isebenza kuphela kumodi yochungechunge olulodwa.

Okuthuthukisiwe iyatholakala I-Bass Universal decoder yeziphequluli, ilethwa ngefomethi ye-WebAssembly, engasetshenziswa ezinhlelweni zokusebenza zewebhu ezisekelwe ku-WebGL. Ekugcineni, i-Google ihlose ukusekela i-Basis Universal kuzo zonke iziphequluli ezinkulu futhi iyithuthukise njengefomethi ephathekayo ye-WebGL kanye nokucaciswa kwesikhathi esizayo. I-WebGPU, okufana ngokomqondo nama-Vulkan, Metal kanye ne-Direct3D 12 APIs.

Kuyaphawulwa ukuthi ikhono lokushumeka ividiyo ngokucutshungulwa kwayo okulandelayo kuphela ohlangothini lwe-GPU lenza i-Basis Universal isixazululo esithokozisayo sokwenza ukuxhumana okuguquguqukayo komsebenzisi ku-WebAssembly naku-WebGL, okungabonisa ngesikhathi esisodwa amakhulu amavidiyo amancane anomthwalo omncane we-CPU. Kuze kube yilapho imiyalelo ye-SIMD ingasetshenziswa ku-WebAssembly ngamakhodekhi endabuko, leli zinga lokusebenza ayikafezeki, ngakho ividiyo esekelwe ekuthunjweni ingasetshenziswa ezindaweni lapho ividiyo evamile ingasebenzi khona. Ikhodi enokulungiselelwa okwengeziwe kwevidiyo okwamanje iyalungiselelwa ukushicilelwa, okuhlanganisa nekhono lokuyisebenzisa Ama-I-ozimele kanye nama-P-frame ngosekelo lwe-adaptive padding (CR).

Source: opennet.ru

Engeza amazwana