Nouvo motè rann pou OpenGL ak Vulkan yo te ajoute nan GTK

Devlopè bibliyotèk GTK yo te anonse disponiblite de nouvo motè rann - "ngl" ak "vulkan", lè l sèvi avèk OpenGL (GL 3.3+ ak GLES 3.0+) ak API grafik Vulkan. Nouvo motè yo enkli nan lage eksperimantal GTK 4.13.6. Nan branch GTK eksperimantal la, motè ngl la kounye a itilize pa default, men si yo idantifye pwoblèm enpòtan nan pwochen branch ki estab 4.14, ansyen motè rann "gl" la pral retounen.

Nouvo motè yo pozisyone kòm inifye ak reyini nan yon baz kòd sèl. Sans nan inifikasyon an se ke Vulkan API a itilize kòm baz, sou tèt yo te kreye yon nivo abstrè separe pou OpenGL, pran an kont diferans ki genyen ant OpenGL ak Vulkan. Apwòch sa a te fè li posib pou itilize yon enfrastrikti komen nan tou de motè yo pou trete graf sèn, transfòmasyon, tèkstur kachèt ak glif yo. Inifikasyon tou siyifikativman senplifye antretyen nan baz kòd tou de motè ak kenbe yo ajou ak senkronize.

Kontrèman ak ansyen motè gl la, ki te itilize yon lonbraj senp separe pou chak kalite rann nœuds epi detanzantan re-triye done yo pandan rann offscreen, nouvo motè yo olye pou yo rann offscreen itilize yon shader konplèks (ubershader) ki entèprete done ki soti nan tanpon an. . Nan fòm li ye kounye a, nouvo aplikasyon an toujou lag dèyè ansyen an an tèm de nivo nan optimize, depi konsantre prensipal la nan etap aktyèl la se sou operasyon kòrèk ak fasilite nan antretyen.

Nouvo karakteristik ki manke nan ansyen motè gl la:

  • Lisaj kontou - pèmèt ou prezève detay amann ak reyalize kontour douser.
    Nouvo motè rann pou OpenGL ak Vulkan yo te ajoute nan GTK
  • Fòmasyon nan gradyan abitrè, ki ka itilize nenpòt ki kantite koulè ak anti-aliasing (nan motè a gl, sèlman lineyè, radial ak konik gradyan ak 6 koulè arè yo te sipòte).
    Nouvo motè rann pou OpenGL ak Vulkan yo te ajoute nan GTK
  • Echèl fraksyon, ki pèmèt ou mete valè echèl ki pa nonb antye relatif, pou egzanp, lè w ap itilize yon echèl 125% pou yon fenèt 1200x800, yo pral resevwa yon tanpon 1500x1000, epi yo pa 2400x1600 tankou nan ansyen motè a.
  • Sipò pou teknoloji DMA-BUF pou itilize plizyè GPU ak dechaje operasyon endividyèl yo nan yon lòt GPU.
  • Anpil nœuds rann ki te gen pwoblèm nan ansyen aplikasyon an yo trete kòrèkteman.

Limit yo nan nouvo motè yo gen ladan mank sipò pou pwezante pa valè non antye (pozisyon fraksyon) ak nœuds glshader, ki te lou mare nan karakteristik sa yo nan ansyen motè a, epi ki pa t nesesè ankò apre yo fin ajoute sipò pou nœuds ak mask (mask) ak tèkstur ak transparans. Li mansyone tou ke gen yon posibilite pou pwoblèm posib ak chofè grafik ki rive akòz chanjman nan metòd la nan travay ak chofè yo.

Nan lavni an, ki baze sou nouvo modèl inifye a, kreyasyon motè rann lè l sèvi avèk Metal nan macOS ak DirectX nan Windows pa eskli, men kreyasyon motè sa yo konplike lè yo sèvi ak lòt lang pou shaders ("ngl la". ” ak “vulkan” motè yo sèvi ak lang GLSL, kidonk pou Metal ak Direct ap oblije swa kopi shaders oswa itilize yon kouch ki baze sou bwat zouti SPIRV-Cross la).

Plan pou lavni yo enkli bay sipò HDR ak zouti pou jesyon koulè kòrèk, sipò pou rann Path sou bò GPU, kapasite pou rann glif, rann off-stream, ak optimize pèfòmans pou aparèy ki pi gran yo ak ki ba pouvwa. Nan fòm aktyèl li yo, pèfòmans motè "vulkan" la tou pre pèfòmans ansyen motè "gl". "ngl" motè a enferyè nan pèfòmans pase ansyen "gl" motè a, men pèfòmans ki disponib la ase pou rann nan 60 oswa 144 FPS. Li espere ke sitiyasyon an pral chanje apre optimize.

Sous: opennet.ru

Add nouvo kòmantè