O masini fa'aliliu fou mo OpenGL ma Vulkan ua fa'aopoopo i le GTK

Ua fa'ailoa mai e le au atia'e o le faletusi GTK le maua o masini fa'aliliu fou e lua - "ngl" ma le "vulkan", fa'aaoga le OpenGL (GL 3.3+ ma GLES 3.0+) ma Vulkan graphics APIs. O afi fou o loʻo aofia i le faʻataʻitaʻiga o le GTK 4.13.6. I le fa'ata'ita'iga GTK lala, o le ngl engine o lo'o fa'aogaina nei e ala i le le mafai, ae afai e fa'aalia ni fa'afitauli tetele i le isi lala mautu 4.14, o le a toe fa'afo'i le afi tuai o le "gl".

O afi fou o loʻo faʻatulagaina e tuʻufaʻatasia ma faʻapipiʻi mai se faʻavae code tasi. O le ute o le faʻatasi o le Vulkan API o loʻo faʻaaogaina e fai ma faavae, i luga o lea na faia ai se tulaga eseʻese eseʻese mo OpenGL, ma amanaʻia le eseesega i le va o OpenGL ma Vulkan. O lenei faiga na mafai ai ona fa'aogaina se atina'e masani i masini uma e lua mo le fa'agaioia o le kalafi o le vaaiga, suiga, fa'aoga mea e teu ai ma glyphs. O le tuufaatasia foi na matua faafaigofieina le tausiga o le code base o afi uma e lua ma tausia i latou i aso nei ma synchronized.

E le pei o le masini gl tuai, lea na faʻaaogaina se paolo faigofie eseese mo ituaiga taʻitasi render node ma toe faʻavasegaina faʻamaumauga i taimi o faʻataʻitaʻiga i fafo, o afi fou nai lo le faʻaogaina o le mata e faʻaaogaina ai se paolo lavelave (ubershader) e faʻamatalaina faʻamatalaga mai le pa. . I lona tulaga o loʻo iai nei, o le faʻatinoga fou o loʻo i tua atu o le mea tuai i tulaga o le maualuga o faʻataʻitaʻiga, talu ai o le taulaiga autu i le taimi nei o loʻo i luga o le faʻaogaina saʻo ma le faigofie o le tausiga.

O foliga fou o loʻo misi i le masini gl tuai:

  • Contour smoothing - faʻatagaina oe e faʻasaoina faʻamatalaga lelei ma ausia faʻasologa lamolemole.
    O masini fa'aliliu fou mo OpenGL ma Vulkan ua fa'aopoopo i le GTK
  • Fausiaina o gradients arbitrary, lea e mafai ona faʻaaogaina soʻo se numera o lanu ma anti-aliasing (i le gl engine, naʻo laina laina, radial ma conical gradients ma 6 taofi lanu na lagolagoina).
    O masini fa'aliliu fou mo OpenGL ma Vulkan ua fa'aopoopo i le GTK
  • Fuafuaga vaevaega, lea e mafai ai ona e setiina le fuaina o fua faʻatatau, mo se faʻataʻitaʻiga, pe a faʻaaogaina se fua o le 125% mo se faʻamalama o le 1200x800, o le a tuʻuina atu se paʻu o le 1500x1000, ae le o le 2400x1600 pei o le afi tuai.
  • Lagolago mo le DMA-BUF tekinolosi mo le faʻaaogaina o le tele o GPU ma le faʻauluina o gaioiga taʻitasi i se isi GPU.
  • O le tele o nodes fa'aliliu na iai fa'afitauli i le fa'atinoga tuai o lo'o fa'agasolo lelei.

O tapulaʻa o afi fou e aofia ai le leai o se lagolago mo le faʻatulagaina i tulaga e le o faʻatatau (tulaga vaevaega) ma glshader nodes, lea na matua noatia i foliga o le afi tuai, ma e le toe manaʻomia pe a uma ona faʻaopoopoina le lagolago mo nodes ma ufimata (mask) ma lanu ma le manino. O loʻo taʻua foi o loʻo i ai se avanoa e ono tulaʻi mai ai faʻafitauli i avetaavale ata ona o suiga i le auala e galulue ai ma avetaavale.

I le lumanaʻi, e faʻavae i luga o le faʻataʻitaʻiga fou fou, o le fausiaina o masini faʻaogaina e faʻaaoga ai le Metal i macOS ma DirectX i Windows e le o aofia ai, ae o le fausiaina o ia masini e faigata ona o le faʻaogaina o isi gagana mo shaders (o le "ngl "ma le "vulkan" afi e faʻaogaina le gagana GLSL, o lea mo Metal ma Direct e tatau ona faʻalua faʻataʻitaʻiga pe faʻaaoga se faʻavae e faʻatatau i le SPIRV-Cross toolkit).

Fuafuaga i le lumanaʻi e aofia ai le tuʻuina atu o le HDR lagolago ma meafaigaluega mo le faʻatonutonuina o lanu saʻo, lagolago mo le faʻaogaina o le ala i le itu o le GPU, o le mafai ona tuʻuina atu glyphs, faʻaogaina o le vaitafe, ma faʻataʻitaʻiga faʻatinoga mo masini tuai ma maualalo le malosi. I lona tulaga o loʻo iai nei, o le faʻatinoga o le afi "vulkan" e latalata i le faʻatinoga o le masini tuai "gl". O le afi "ngl" e maualalo i le faʻatinoga i le masini tuai "gl", ae o le avanoa avanoa e lava mo le faʻaalia i le 60 poʻo le 144 FPS. O lo'o fa'amoemoeina o le a suia le tulaga pe a mae'a fa'atonuga.

puna: opennet.ru

Faaopoopo i ai se faamatalaga