{"id":113225,"date":"2024-01-29T12:50:31","date_gmt":"2024-01-29T10:50:32","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/v-gtk-dobavleny-novye-dvizhki-otrisovki-dlya-opengl-i-vulkan"},"modified":"2024-01-29T12:50:31","modified_gmt":"2024-01-29T10:50:32","slug":"v-gtk-dobavleny-novye-dvizhki-otrisovki-dlya-opengl-i-vulkan","status":"publish","type":"post","link":"https:\/\/prohoster.info\/nl\/blog\/news\/v-gtk-dobavleny-novye-dvizhki-otrisovki-dlya-opengl-i-vulkan","title":{"rendered":"Nieuwe rendering-engines voor OpenGL en Vulkan zijn toegevoegd aan GTK.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>De ontwikkelaars van de GTK-bibliotheek hebben de beschikbaarheid van twee nieuwe rendering-engines aangekondigd - 'ngl' en 'vulkan', die gebruikmaken van de graphics API's OpenGL (GL 3.3+ en GLES 3.0+) en Vulkan. De nieuwe engines zijn opgenomen in de experimentele release GTK 4.13.6. In de experimentele tak van GTK wordt de ngl-engine nu standaard gebruikt, maar als er aanzienlijke problemen worden aangetroffen, zal in de volgende stabiele release 4.14 de oude rendering-engine 'gl' worden hersteld.    <\/p>\n<p>De nieuwe engines worden gepositioneerd als uniform en zijn opgebouwd uit een enkele codebasis. Het idee van uniformiteit is dat de API Vulkan als basis wordt gebruikt, bovenop welke voor OpenGL een apart abstractieniveau is gecre\u00eberd dat rekening houdt met de verschillen tussen OpenGL en Vulkan. Deze benadering heeft het mogelijk gemaakt om in beide engines een gemeenschappelijke infrastructuur te benutten voor het verwerken van het sc\u00e8ne-grafiek, transformaties, het cachen van texturen en glyphs. Uniformiteit heeft ook de onderhoudbaarheid van de codebasis van beide engines aanzienlijk vereenvoudigd en ervoor gezorgd dat deze up-to-date en gesynchroniseerd blijft.     <\/p>\n<p>In tegenstelling tot de oude 'gl'-engine, waarbij voor elk type renderer (rendernode) een aparte eenvoudige shader werd gebruikt en periodiek de gegevens werden hergroepeerd tijdens offscreen rendering, wordt in de nieuwe engines een complexe shader (ubershader) gebruikt, die gegevens uit de buffer interpreteert in plaats van offscreen rendering. In zijn huidige vorm blijft de nieuwe implementatie achter bij de oude qua optimalisaties, omdat in deze fase de focus ligt op de correctheid van de werking en de eenvoud van onderhoud.    <\/p>\n<p>Nieuwe functies die ontbreken in de oude 'gl'-engine:  <\/p>\n<ul>\n<li class=\"l\"> Antialiasing - dit maakt het mogelijk om fijne details te behouden en een gladdere omtrek te cre\u00ebren.    <center><img decoding=\"async\" alt=\"Nieuwe rendering-engines voor OpenGL en Vulkan zijn toegevoegd aan GTK.\" src=\"\/wp-content\/uploads\/2024\/01\/dc690b87095af7bca8d2826ebb3a9584.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>\n<li class=\"l\"> Het cre\u00ebren van willekeurige gradients, waarbij een onbeperkt aantal kleuren en antialiasing kan worden gebruikt (de 'gl'-engine ondersteunde alleen lineaire, radiale en conische gradients met maximaal 6 kleurstops).      <center><img decoding=\"async\" alt=\"Nieuwe rendering-engines voor OpenGL en Vulkan zijn toegevoegd aan GTK.\" src=\"\/wp-content\/uploads\/2024\/01\/331c81cddc35e00e08db425a38d90dca.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>\n<li class=\"l\"> Fractionele schaling (fractional scale), waarmee niet-gehele schaalwaarden kunnen worden ingesteld; bijvoorbeeld, bij een schaling van 125% voor een venster van 1200\u00d7800 zal een buffer van 1500\u00d71000 worden toegewezen, en niet 2400\u00d71600 zoals in de oude engine.\n<li class=\"l\"> Ondersteuning voor DMA-BUF-technologie voor het gebruik van meerdere GPU's en om bepaalde bewerkingen naar een andere GPU te verplaatsen.\n<li class=\"l\"> Veel rendering knooppunten worden correct verwerkt, waar er problemen waren in de oude implementatie.  <\/ul>\n<p>Bij de beperkingen van de nieuwe engines wordt genoemd dat er geen ondersteuning is voor positionering op fractionele waarden en glshader knooppunten, die sterk afhankelijk waren van de kenmerken van de oude engine en waarvan de noodzaak is verdwenen na de toevoeging van ondersteuning voor knooppunten met maskers en texturen met transparantie. Ook wordt de mogelijkheid vermeld van mogelijke problemen met grafische stuurprogramma's als gevolg van de wijziging in de manier van werken met stuurprogramma's.      <\/p>\n<p>In de toekomst is het mogelijk om op basis van het nieuwe uniforme model rendering-engines te cre\u00ebren die Metal in macOS en DirectX in Windows gebruiken, maar het ontwikkelen van dergelijke engines wordt bemoeilijkt door het gebruik van andere talen voor shaders (in de 'ngl'- en 'vulkan'-engines is de GLSL-taal gebruikt, dus voor Metal en Direct zal het nodig zijn om shaders te dupliceren of een laag te gebruiken op basis van SPIRV-Cross-tools).    <\/p>\n<p>In de toekomstplannen wordt ondersteuning voor HDR en middelen voor correcte kleurbeheer genoemd, ondersteuning van path rendering aan de GPU-kant, de mogelijkheid om glyphs te renderen, rendering buiten de hoofdthread en prestatieoptimalisatie voor oudere en minder krachtige apparaten. In de huidige staat is de prestaties van de 'vulkan' engine vergelijkbaar met die van de oude 'gl' engine. De 'ngl' engine presteert minder goed dan de oude 'gl' engine, maar de beschikbare statistieken zijn voldoende voor rendering met een frequentie van 60 of 144 FPS. Het wordt verwacht dat de situatie zal verbeteren na de optimalisatie.<br \/>\n<br \/>Bron: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=60515\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 GTK \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u0438 \u0434\u0432\u0443\u0445 \u043d\u043e\u0432\u044b\u0445 \u0434\u0432\u0438\u0436\u043a\u043e\u0432 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 &#8212; &#171;ngl&#187; \u0438 &#171;vulkan&#187;, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0445 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 API OpenGL (GL 3.3+ \u0438 GLES 3.0+) \u0438 Vulkan. \u041d\u043e\u0432\u044b\u0435 \u0434\u0432\u0438\u0436\u043a\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0432 \u0441\u043e\u0441\u0442\u0430\u0432 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u0443\u0441\u043a\u0430 GTK 4.13.6. \u0412 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 GTK \u0434\u0432\u0438\u0436\u043e\u043a ngl \u0442\u0435\u043f\u0435\u0440\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u043d\u043e \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0435 4.14 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":113226,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-113225","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 GTK \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u0438 \u0434\u0432\u0443\u0445 \u043d\u043e\u0432\u044b\u0445 \u0434\u0432\u0438\u0436\u043a\u043e\u0432 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 - &quot;ngl&quot; \u0438 &quot;vulkan&quot;, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0445 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 API OpenGL (GL 3.3+ \u0438 GLES 3.0+) \u0438 Vulkan.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/nl\/blog\/news\/v-gtk-dobavleny-novye-dvizhki-otrisovki-dlya-opengl-i-vulkan\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"nl_NL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412 GTK \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043d\u043e\u0432\u044b\u0435 \u0434\u0432\u0438\u0436\u043a\u0438 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u0434\u043b\u044f OpenGL \u0438 Vulkan | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 GTK \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u0438 \u0434\u0432\u0443\u0445 \u043d\u043e\u0432\u044b\u0445 \u0434\u0432\u0438\u0436\u043a\u043e\u0432 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 - &quot;ngl&quot; \u0438 &quot;vulkan&quot;, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0445 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 API OpenGL (GL 3.3+ \u0438 GLES 3.0+) \u0438 Vulkan.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/nl\/blog\/news\/v-gtk-dobavleny-novye-dvizhki-otrisovki-dlya-opengl-i-vulkan\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2024-01-29T10:50:32+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-01-29T10:50:32+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Nieuwe rendering engines voor OpenGL en Vulkan toegevoegd aan GTK | ProHoster","description":"De ontwikkelaars van de GTK-bibliotheek hebben de beschikbaarheid van twee nieuwe rendering engines aangekondigd - \"ngl\" en \"vulkan\", die gebruikmaken van de grafische API's OpenGL (GL 3.3+ en GLES 3.0+) en Vulkan.","canonical_url":"https:\/\/prohoster.info\/nl\/blog\/news\/v-gtk-dobavleny-novye-dvizhki-otrisovki-dlya-opengl-i-vulkan","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nl_NL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412 GTK \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043d\u043e\u0432\u044b\u0435 \u0434\u0432\u0438\u0436\u043a\u0438 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u0434\u043b\u044f OpenGL \u0438 Vulkan | ProHoster","og:description":"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 GTK \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u0438 \u0434\u0432\u0443\u0445 \u043d\u043e\u0432\u044b\u0445 \u0434\u0432\u0438\u0436\u043a\u043e\u0432 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 - &quot;ngl&quot; \u0438 &quot;vulkan&quot;, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0445 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 API OpenGL (GL 3.3+ \u0438 GLES 3.0+) \u0438 Vulkan.","og:url":"https:\/\/prohoster.info\/nl\/blog\/news\/v-gtk-dobavleny-novye-dvizhki-otrisovki-dlya-opengl-i-vulkan","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2024-01-29T10:50:32+00:00","article:modified_time":"2024-01-29T10:50:32+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/113225","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/comments?post=113225"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/113225\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media\/113226"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media?parent=113225"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/categories?post=113225"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/tags?post=113225"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}