{"id":107760,"date":"2023-04-06T12:48:22","date_gmt":"2023-04-06T10:48:22","guid":{"rendered":"https:\/\/prohoster.info\/?p=107760"},"modified":"2023-04-06T17:07:09","modified_gmt":"2023-04-06T15:07:09","slug":"v-chrome-budet-vklyuchena-podderzhka-webgpu","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/news\/v-chrome-budet-vklyuchena-podderzhka-webgpu","title":{"rendered":"W Chrome zostanie w\u0142\u0105czona obs\u0142uga WebGPU","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Firma Google og\u0142osi\u0142a wprowadzenie domy\u015blnej obs\u0142ugi graficznego API WebGPU oraz j\u0119zyka shader\u00f3w WGSL (WebGPU Shading Language) w wersji Chrome 113, kt\u00f3rej wydanie planowane jest na 2 maja. WebGPU zapewnia interfejs programowania podobny do Vulkan, Metal i Direct3D 12 do wykonywania operacji po stronie GPU, takich jak renderowanie i obliczenia, a tak\u017ce pozwala na korzystanie z j\u0119zyka shader\u00f3w do pisania program\u00f3w dzia\u0142aj\u0105cych na GPU. Wdro\u017cenie WebGPU zostanie pocz\u0105tkowo wprowadzone tylko w wersjach dla ChromeOS, macOS i Windows. Obs\u0142uga WebGPU dla Linux i Androida b\u0119dzie aktywowana p\u00f3\u017aniej.       <\/p>\n<p>Opr\u00f3cz Chrome, eksperymentalne wsparcie dla WebGPU jest testowane od kwietnia 2020 roku w Firefoxie oraz od listopada 2021 roku w Safari. Aby w\u0142\u0105czy\u0107 WebGPU w Firefoxie, nale\u017cy w about:config ustawi\u0107 flagi dom.webgpu.enabled oraz gfx.webgpu.force-enabled. Na razie nie podano informacji o planach w\u0142\u0105czenia WebGPU domy\u015blnie w Firefoxie i Safari. Wersje WebGPU rozwijane dla Firefox i Chrome s\u0105 dost\u0119pne w postaci oddzielnych bibliotek \u2014 Dawn (C++) oraz wgpu (Rust), kt\u00f3re mo\u017cna wykorzysta\u0107 do integracji wsparcia WebGPU w swoich aplikacjach. Prowadzone s\u0105 r\u00f3wnie\u017c prace nad dodaniem wsparcia WebGPU do popularnych bibliotek JavaScript, pierwotnie korzystaj\u0105cych z WebGL. Na przyk\u0142ad pe\u0142ne wsparcie WebGPU zosta\u0142o ju\u017c zg\u0142oszone w Babylon.js, a cz\u0119\u015bciowe w Three.js, PlayCanvas i TensorFlow.js.       <\/p>\n<p>Koncepcyjnie WebGPU r\u00f3\u017cni si\u0119 od WebGL w podobny spos\u00f3b, jak graficzne API Vulkan r\u00f3\u017cni si\u0119 od OpenGL, ale WebGPU nie opiera si\u0119 na konkretnym API graficznym; stanowi uniwersaln\u0105 warstw\u0119, kt\u00f3ra wykorzystuje te same niskopoziomowe prymitywy, kt\u00f3re wyst\u0119puj\u0105 w Vulkan, Metal i Direct3D. WebGPU zapewnia aplikacjom w JavaScript niskopoziomow\u0105 kontrol\u0119 nad organizacj\u0105, przetwarzaniem i przesy\u0142aniem komend do GPU, zarz\u0105dzaniem powi\u0105zanymi zasobami, pami\u0119ci\u0105, buforami, obiektami tekstur i skompilowanymi shaderami graficznymi. Takie podej\u015bcie umo\u017cliwia osi\u0105gni\u0119cie wy\u017cszej wydajno\u015bci aplikacji graficznych poprzez zmniejszenie overheadu i zwi\u0119kszenie efektywno\u015bci pracy z GPU.     <\/p>\n<p>WebGPU umo\u017cliwia tworzenie skomplikowanych projekt\u00f3w 3D w sieci, kt\u00f3re dzia\u0142aj\u0105 r\u00f3wnie dobrze, jak dedykowane aplikacje korzystaj\u0105ce z Vulkan, Metal lub Direct3D, ale nie s\u0105 ograniczone do konkretnych platform. WebGPU oferuje tak\u017ce dodatkowe mo\u017cliwo\u015bci przy portowaniu natywnych program\u00f3w graficznych do formy, kt\u00f3ra mo\u017ce dzia\u0142a\u0107 w oparciu o technologie webowe, dzi\u0119ki kompilacji do WebAssembly. Opr\u00f3cz grafiki 3D, WebGPU obejmuje r\u00f3wnie\u017c mo\u017cliwo\u015bci zwi\u0105zane z przenoszeniem oblicze\u0144 na GPU i wykonywaniem shader\u00f3w.       <\/p>\n<p>Kluczowe cechy WebGPU:  <\/p>\n<ul>\n<li class=\"l\"> Oddzielne zarz\u0105dzanie zasobami, pracami przygotowawczymi i wysy\u0142aniem polece\u0144 do GPU (w WebGL jeden obiekt odpowiada\u0142 za wszystko). Udost\u0119pniane s\u0105 trzy odr\u0119bne konteksty: GPUDevice do tworzenia zasob\u00f3w, takich jak tekstury i bufory; GPUCommandEncoder do kodowania pojedynczych polece\u0144, w tym etap\u00f3w renderowania i oblicze\u0144; GPUCommandBuffer do umieszczania w kolejce do wykonania w GPU. Wynik mo\u017ce by\u0107 rysowany w obszarze zwi\u0105zanym z jednym lub wieloma elementami canvas, lub przetwarzany bez wyj\u015bcia (na przyk\u0142ad podczas uruchamiania zada\u0144 obliczeniowych). Podzia\u0142 etap\u00f3w u\u0142atwia rozdzielanie tworzenia zasob\u00f3w i operacji przygotowawczych na r\u00f3\u017cne obs\u0142ugiwacze, kt\u00f3re mog\u0105 dzia\u0142a\u0107 w r\u00f3\u017cnych w\u0105tkach.    <\/li>\n<li class=\"l\"> Inne podej\u015bcie do przetwarzania stan\u00f3w. W WebGPU proponowane s\u0105 dwa obiekty \u2014 GPURenderPipeline oraz GPUComputePipeline, kt\u00f3re pozwalaj\u0105 na \u0142\u0105czenie r\u00f3\u017cnych stan\u00f3w, wcze\u015bniej okre\u015blonych przez programist\u0119, co umo\u017cliwia przegl\u0105darce nie marnowanie zasob\u00f3w na dodatkowe procesy, takie jak rekompilacja shader\u00f3w. W\u015br\u00f3d obs\u0142ugiwanych stan\u00f3w znajduj\u0105 si\u0119: shadery, uk\u0142ady bufor\u00f3w wierzcho\u0142k\u00f3w i atrybut\u00f3w, uk\u0142ady grup do\u0142\u0105czonych, mieszanie, g\u0142\u0119boko\u015b\u0107 oraz szablony, a tak\u017ce formaty wyj\u015bciowe po renderowaniu.    <\/li>\n<li class=\"l\"> Model powi\u0105zania, w du\u017cej mierze przypominaj\u0105ca obecne w Vulkan narz\u0119dzia grupowania zasob\u00f3w. Do grupowania zasob\u00f3w w WebGPU udost\u0119pniany jest obiekt GPUBindGroup, kt\u00f3ry podczas zapisywania komend mo\u017cna powi\u0105za\u0107 z innymi podobnymi obiektami do u\u017cycia w shaderach. Tworzenie takich grup daje mo\u017cliwo\u015b\u0107 sterownikowi wcze\u015bniejszego wykonania niezb\u0119dnych przygotowa\u0144, a przegl\u0105darkom umo\u017cliwia znacznie szybsz\u0105 zmian\u0119 powi\u0105za\u0144 zasob\u00f3w mi\u0119dzy wywo\u0142aniami renderowania. Uk\u0142ad powi\u0105za\u0144 zasob\u00f3w mo\u017cna okre\u015bli\u0107 z wyprzedzeniem za pomoc\u0105 obiektu GPUBindGroupLayout.  <\/li>\n<\/ul>\n<p>\u0179r\u00f3d\u0142o: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=58929\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e API WebGPU \u0438 \u044f\u0437\u044b\u043a\u0430 \u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432 WGSL (WebGPU Shading Language) \u0432 \u0432\u0435\u0442\u043a\u0435 Chrome 113, \u0440\u0435\u043b\u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u043c\u0435\u0447\u0435\u043d \u043d\u0430 2 \u043c\u0430\u044f. WebGPU \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u0445\u043e\u0436\u0438\u0439 \u0441 Vulkan, Metal \u0438 Direct3D 12 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 GPU, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433 \u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-107760","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e API WebGPU \u0438 \u044f\u0437\u044b\u043a\u0430 \u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432 WGSL (WebGPU Shading Language) \u0432 \u0432\u0435\u0442\u043a\u0435 Chrome 113, \u0440\u0435\u043b\u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u043c\u0435\u0447\u0435\u043d \u043d\u0430 2 \u043c\u0430\u044f.\" \/>\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\/pl\/blog\/news\/v-chrome-budet-vklyuchena-podderzhka-webgpu\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\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 Chrome \u0431\u0443\u0434\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 WebGPU | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e API WebGPU \u0438 \u044f\u0437\u044b\u043a\u0430 \u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432 WGSL (WebGPU Shading Language) \u0432 \u0432\u0435\u0442\u043a\u0435 Chrome 113, \u0440\u0435\u043b\u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u043c\u0435\u0447\u0435\u043d \u043d\u0430 2 \u043c\u0430\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/news\/v-chrome-budet-vklyuchena-podderzhka-webgpu\" \/>\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=\"2023-04-06T10:48:22+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-04-06T15:07:09+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\udd47Wsparcie WebGPU b\u0119dzie w\u0142\u0105czone w Chrome | ProHoster","description":"Firma Google og\u0142osi\u0142a, \u017ce domy\u015blnie w\u0142\u0105czy wsparcie dla graficznego API WebGPU oraz j\u0119zyka shader\u00f3w WGSL (WebGPU Shading Language) w wersji Chrome 113, kt\u00f3rej wydanie zaplanowano na 2 maja.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/news\/v-chrome-budet-vklyuchena-podderzhka-webgpu","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pl_PL","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 Chrome \u0431\u0443\u0434\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 WebGPU | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e API WebGPU \u0438 \u044f\u0437\u044b\u043a\u0430 \u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432 WGSL (WebGPU Shading Language) \u0432 \u0432\u0435\u0442\u043a\u0435 Chrome 113, \u0440\u0435\u043b\u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u043c\u0435\u0447\u0435\u043d \u043d\u0430 2 \u043c\u0430\u044f.","og:url":"https:\/\/prohoster.info\/pl\/blog\/news\/v-chrome-budet-vklyuchena-podderzhka-webgpu","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":"2023-04-06T10:48:22+00:00","article:modified_time":"2023-04-06T15:07:09+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\/pl\/wp-json\/wp\/v2\/posts\/107760","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/comments?post=107760"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/107760\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=107760"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=107760"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=107760"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}