{"id":55263,"date":"2020-01-16T00:00:00","date_gmt":"2020-01-15T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/opublikovan-graficheskij-standart-vulkan-1-2"},"modified":"2020-02-18T14:03:22","modified_gmt":"2020-02-18T11:03:22","slug":"opublikovan-graficheskij-standart-vulkan-1-2","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/news\/opublikovan-graficheskij-standart-vulkan-1-2","title":{"rendered":"Byl publikov\u00e1n grafick\u00fd standard Vulkan 1.2","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Konsorcium Khronos, kter\u00e9 se zab\u00fdv\u00e1 v\u00fdvojem grafick\u00fdch standard\u016f,<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.khronos.org\/news\/press\/khronos-group-releases-vulkan-1.2\">vydal<\/a><\/noindex> specifikaci <noindex><a rel=\"nofollow\" href=\"https:\/\/www.khronos.org\/vulkan\/\">Vulkan 1.2<\/a><\/noindex>, kter\u00e1 definuje API pro p\u0159\u00edstup k grafick\u00fdm a v\u00fdpo\u010detn\u00edm schopnostem GPU. Nov\u00e1 specifikace zahrnuje opravy, kter\u00e9 se nasb\u00edraly za posledn\u00ed dva roky, a  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.khronos.org\/registry\/vulkan\/#apispecs\">roz\u0161\u00ed\u0159en\u00ed<\/a><\/noindex>. Ovlada\u010de s podporou nov\u00e9 verze Vulkan jsou ji\u017e <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/issues\/1162\">vydal<\/a><\/noindex> spole\u010dnosti Intel, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.amd.com\/en\/support\/kb\/release-notes\/rn-rad-win-20-1-2\">AMD<\/a><\/noindex>, ARM, Imagination Technologies a <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.nvidia.com\/vulkan-driver\">NVIDIA<\/a><\/noindex>. V Mesa je podpora Vulkan 1.2 nab\u00edzena pro ovlada\u010de <noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.freedesktop.org\/mesa\/mesa\/merge_requests\/3410\">RADV<\/a><\/noindex> (grafick\u00e9 karty AMD) a <noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.freedesktop.org\/mesa\/mesa\/merge_requests\/3409\">ANV<\/a><\/noindex> (Intel). Podpora Vulkan 1.2 je tak\u00e9 realizov\u00e1na v n\u00e1stroji <noindex><a rel=\"nofollow\" href=\"https:\/\/renderdoc.org\/\">RenderDoc 1.6<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.lunarg.com\/vulkan-sdk\/\">LunarG Vulkan SDK<\/a><\/noindex> a sad\u011b p\u0159\u00edklad\u016f <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Samples\">Vulkan-Samples<\/a><\/noindex>.<\/p>\n<p>Hlavn\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/www.khronos.org\/assets\/uploads\/apis\/Vulkan-1-2-Launch_Jan20.pdf\">novinky<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/www.khronos.org\/blog\/hlsl-first-class-vulkan-shading-language\">Byla dokon\u010dena<\/a><\/noindex> implementace programovac\u00edho jazyka shader\u016f <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/HLSL\">HLSL<\/a><\/noindex>, vyvinut\u00e9ho spole\u010dnost\u00ed Microsoft pro DirectX. Podpora HLSL ve Vulkan umo\u017e\u0148uje pou\u017e\u00edv\u00e1n\u00ed stejn\u00fdch HLSL shader\u016f v aplikac\u00edch zalo\u017een\u00fdch na Vulkan a DirectX, a tak\u00e9 usnad\u0148uje p\u0159eklad z HLSL do SPIR-V. Pro kompilaci shader\u016f se doporu\u010duje pou\u017e\u00edt standardn\u00ed kompil\u00e1tor<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Microsoft\/DirectXShaderCompiler\">DXC<\/a><\/noindex>, kter\u00fd byl zve\u0159ejn\u011bn spole\u010dnost\u00ed Microsoft v roce 2017 a vych\u00e1z\u00ed z technologie LLVM. Podpora Vulkan je realizov\u00e1na prost\u0159ednictv\u00edm samostatn\u00e9ho backendu, kter\u00fd umo\u017e\u0148uje p\u0159evod HLSL do meziproduktu shader\u016f SPIR-V. Implementace pokr\u00fdv\u00e1 nejen v\u0161echny zabudovan\u00e9 funkce<br \/>\nHLSL, v\u010detn\u011b matematick\u00fdch typ\u016f, \u0159\u00eddic\u00edch tok\u016f, funkc\u00ed, sad, typ\u016f zdroj\u016f, jmenn\u00fdch prostor\u016f, Shader Model 6.2, struktur a metod, a tak\u00e9 umo\u017e\u0148uje pou\u017e\u00edvat specifick\u00e1 roz\u0161\u00ed\u0159en\u00ed pro Vulkan, jako je VKRay od NVIDIA. V re\u017eimu HLSL nad Vulkanem se poda\u0159ilo realizovat fungov\u00e1n\u00ed her, jako jsou Destiny 2, Red Dead Redemption II, Assassin's Creed Odyssey a Tomb Raider.<\/p>\n<p><center><noindex><a rel=\"nofollow\" href=\"https:\/\/www.khronos.org\/assets\/uploads\/blogs\/2020-blog-microsoft-dxc-compiler-supports-vulkan-dx12-code-gen_1.jpg\"><img decoding=\"async\" alt=\"Byl publikov\u00e1n grafick\u00fd standard Vulkan 1.2\" src=\"\/wp-content\/uploads\/2020\/01\/e6da0b0397b1320c69fe55770a441fc2.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/center><\/p>\n<li class=\"l\"> Byla aktualizov\u00e1na specifikace <noindex><a rel=\"nofollow\" href=\"https:\/\/www.khronos.org\/registry\/spir-v\/\">SPIR-V 1.5<\/a><\/noindex>, kter\u00e1 definuje univerz\u00e1ln\u00ed meziprodukt shader\u016f pro v\u0161echny platformy, kter\u00fd se m\u016f\u017ee pou\u017e\u00edvat jak pro grafiku, tak pro paraleln\u00ed v\u00fdpo\u010dty.<br \/>\nSPIR-V p\u0159edpokl\u00e1d\u00e1 vy\u010dlen\u011bn\u00ed samostatn\u00e9 f\u00e1ze kompilace shader\u016f do meziproduktu, co\u017e umo\u017e\u0148uje vytv\u00e1\u0159en\u00ed frontend\u016f pro r\u016fzn\u00e9 vysoce \u00farov\u0148ov\u00e9 jazyky. Na z\u00e1klad\u011b r\u016fzn\u00fdch pro vysokou \u00farove\u0148 realizac\u00ed se generuje jednotn\u00fd meziproduktov\u00fd k\u00f3d, kter\u00fd mohou pou\u017e\u00edvat ovlada\u010de OpenGL, Vulkan a OpenCL bez pot\u0159eby zabudovan\u00e9ho kompil\u00e1toru shader\u016f. <\/p>\n<p><center><img decoding=\"async\" alt=\"Byl publikov\u00e1n grafick\u00fd standard Vulkan 1.2\" src=\"\/wp-content\/uploads\/2020\/01\/48f8f20b43967bc39fd097bb893ec328.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center><\/p>\n<li class=\"l\"> V hlavn\u00edm API Vulkan je zahrnuto 23 roz\u0161\u00ed\u0159en\u00ed, kter\u00e1 umo\u017enila zv\u00fd\u0161it v\u00fdkon, zlep\u0161it kvalitu zobrazen\u00ed a usnadnit v\u00fdvoj. Mezi p\u0159idan\u00e1 roz\u0161\u00ed\u0159en\u00ed pat\u0159\u00ed:\n<ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/www.khronos.org\/blog\/vulkan-timeline-semaphores\">Chronologick\u00e9 semafory<\/a><\/noindex> (\u010casov\u00e1 semafor), unifikuj\u00edc\u00ed synchronizace s hostitelem a frontami za\u0159\u00edzen\u00ed (umo\u017e\u0148uj\u00ed pou\u017e\u00edt jeden primitiv pro obousm\u011brnou synchronizaci mezi za\u0159\u00edzen\u00edm a hostitelem, bez pou\u017eit\u00ed odd\u011blen\u00fdch primitiv VkFence a VkSemaphore). Nov\u00e9 semafory jsou prezentov\u00e1ny jako monot\u00f3nn\u011b rostouc\u00ed 64-bitov\u00e1 hodnota, kterou je mo\u017en\u00e9 sledovat a aktualizovat v n\u011bkolika vl\u00e1knech.<br \/>\n<center><img decoding=\"async\" alt=\"Byl publikov\u00e1n grafick\u00fd standard Vulkan 1.2\" src=\"\/wp-content\/uploads\/2020\/01\/83a1ccf089034dbe720225c88bd3cb79.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center><\/p>\n<li class=\"l\"> Mo\u017enost pou\u017eit\u00ed \u010d\u00edseln\u00fdch typ\u016f s ni\u017e\u0161\u00ed p\u0159esnost\u00ed ve shaderech;\n<li class=\"l\"> Kompatibiln\u00ed varianta rozlo\u017een\u00ed pam\u011bti s HLSL;\n<li class=\"l\"> Nez\u00e1visl\u00e9 zdroje (bindless), odstra\u0148uj\u00edc\u00ed omezen\u00ed na po\u010det dostupn\u00fdch pro shadery zdroj\u016f d\u00edky vyu\u017eit\u00ed spole\u010dn\u00e9ho virtu\u00e1ln\u00edho prostoru syst\u00e9mov\u00e9 pam\u011bti a pam\u011bti GPU;\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/www.khronos.org\/blog\/vulkan-has-just-become-the-worlds-first-graphics-api-with-a-formal-memory-model.-so-what-is-a-memory-model-and-why-should-i-care\">Form\u00e1ln\u00ed model pam\u011bti<\/a><\/noindex>, kter\u00fd ur\u010duje, jak mohou paraleln\u011b prov\u00e1d\u011bn\u00e9 vl\u00e1kna p\u0159istupovat ke sd\u00edlen\u00fdm dat\u016fm a operac\u00edm synchronizace;\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=tXipcoeuNh4\">Indexov\u00e1n\u00ed deskriptor\u016f<\/a><\/noindex> pro op\u011btovn\u00e9 pou\u017eit\u00ed deskriptor\u016f rozlo\u017een\u00ed v n\u011bkolika shaderech;\n<li class=\"l\"> Odkazy na buffery.\n<\/ul>\n<p> \u00dapln\u00fd seznam p\u0159idan\u00fdch roz\u0161\u00ed\u0159en\u00ed:<\/p>\n<ul>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_8bit_storage.txt\">VK_KHR_8bit_storage<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_buffer_device_address.txt\">VK_KHR_buffer_device_address<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_create_renderpass2.txt\">VK_KHR_create_renderpass2<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_depth_stencil_resolve.txt\">VK_KHR_depth_stencil_resolve<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_draw_indirect_count.txt\">VK_KHR_draw_indirect_count<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_driver_properties.txt\">VK_KHR_driver_properties<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_image_format_list.txt\">VK_KHR_image_format_list<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_imageless_framebuffer.txt\">VK_KHR_imageless_framebuffer<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_sampler_mirror_clamp_to_edge.txt\">VK_KHR_sampler_mirror_clamp_to_edge<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_separate_depth_stencil_layouts.txt\">VK_KHR_separate_depth_stencil_layouts<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_shader_atomic_int64.txt\">VK_KHR_shader_atomic_int64<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_shader_float16_int8.txt\">VK_KHR_shader_float16_int8<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_shader_float_controls.txt\">VK_KHR_shader_float_controls<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_shader_subgroup_extended_types.txt\">VK_KHR_shader_subgroup_extended_types<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_spirv_1_4.txt\">VK_KHR_spirv_1_4<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_timeline_semaphore.txt\">VK_KHR_timeline_semaphore<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_uniform_buffer_standard_layout.txt\">VK_KHR_uniform_buffer_standard_layout<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_KHR_vulkan_memory_model.txt\">VK_KHR_vulkan_memory_model<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_EXT_descriptor_indexing.txt\">VK_EXT_descriptor_indexing<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_EXT_host_query_reset.txt\">VK_EXT_host_query_reset<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_EXT_sampler_filter_minmax.txt\">VK_EXT_sampler_filter_minmax<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_EXT_scalar_block_layout.txt\">VK_EXT_scalar_block_layout<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_EXT_separate_stencil_usage.txt\">VK_EXT_separate_stencil_usage<\/a><\/noindex>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/blob\/master\/appendices\/VK_EXT_shader_viewport_index_layer.txt\">VK_EXT_shader_viewport_index_layer<\/a><\/noindex>\n<\/ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/www.khronos.org\/registry\/vulkan\/specs\/1.2\/html\/vkspec.html#versions-1.2\">Bylo p\u0159id\u00e1no<\/a><\/noindex> v\u00edce ne\u017e 50 nov\u00fdch struktur a 13 funkc\u00ed;\n<li class=\"l\"> P\u0159ipraveny zjednodu\u0161en\u00e9 varianty specifikace pro standardn\u00ed c\u00edlov\u00e9 platformy, kter\u00e9 usnad\u0148uj\u00ed pr\u00e1ci na platform\u00e1ch, pro kter\u00e9 zat\u00edm nejsou podporov\u00e1na v\u0161echna roz\u0161\u00ed\u0159en\u00ed, a umo\u017e\u0148uj\u00ed obej\u00edt se bez selektivn\u00ed aktivace z\u00e1kladn\u00edch funkc\u00ed API Vulkan.\n<li class=\"l\"> Pokra\u010duje pr\u00e1ce na projektu zaji\u0161t\u011bn\u00ed p\u0159enositelnosti s jin\u00fdmi grafick\u00fdmi API. Nap\u0159\u00edklad ve Vulkan byly navr\u017eeny roz\u0161\u00ed\u0159en\u00ed, kter\u00e1 umo\u017e\u0148uj\u00ed p\u0159evod OpenGL (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=49538\">Zink<\/a><\/noindex>), OpenCL (<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/google\/clspv\">clspv<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kpet\/clvk\">clvk<\/a><\/noindex>), OpenGL ES (GLOVE, Angle) a DirectX (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52042\">DXVK<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=48648\">vkd3d<\/a><\/noindex>) p\u0159es API Vulkan, stejn\u011b jako naopak pro zaji\u0161t\u011bn\u00ed provozu Vulkan na platform\u00e1ch bez jeho nativn\u00ed podpory (<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/gfx-rs\/gfx\">gfx-rs<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/DragonJoker\/Ashes\">Ashes<\/a><\/noindex> pro provoz nad OpenGL a DirectX, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/MoltenVK\">MoltenVK<\/a><\/noindex> a gfx-rs pro provoz nad Metal).<br \/>\nPro zlep\u0161en\u00ed kompatibility s DirectX a HLSL byla p\u0159id\u00e1na roz\u0161\u00ed\u0159en\u00ed<br \/>\nVK_KHR_host_query_reset, VK_KHR_uniform_buffer_standard_layout, VK_EXT_scalar_block_layou, VK_KHR_separate_stencil_usage, VK_KHR_separate_depth_stencil_layouts, a tak\u00e9 ve SPIR-V byly implementov\u00e1ny specifick\u00e9 mo\u017enosti HLSL.<\/p>\n<\/ul>\n<p>Mezi budouc\u00edmi pl\u00e1ny se zmi\u0148uje rozvoj roz\u0161\u00ed\u0159en\u00ed pro strojov\u00e9 u\u010den\u00ed, ray tracing, k\u00f3dov\u00e1n\u00ed a dek\u00f3dov\u00e1n\u00ed videa, podporu VRS (variable-rate shading) a Mesh-shader\u016f.<\/p>\n<p>P\u0159ipom\u00edn\u00e1me, \u017ee API Vulkan <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=43887\">je pozoruhodn\u00e9<\/a><\/noindex> je z\u00e1sadn\u00edm zjednodu\u0161en\u00edm ovlada\u010d\u016f, p\u0159esunem generov\u00e1n\u00ed p\u0159\u00edkaz\u016f GPU na stranu aplikace, mo\u017enost\u00ed p\u0159ipojit ladic\u00ed vrstvy, unifikac\u00ed API pro r\u016fzn\u00e9 platformy a u\u017e\u00edv\u00e1n\u00edm prekompilovan\u00e9ho mezik\u00f3du pro vykon\u00e1v\u00e1n\u00ed na stran\u011b GPU. Pro zaji\u0161t\u011bn\u00ed vysok\u00e9ho v\u00fdkonu a p\u0159edv\u00eddatelnosti poskytuje Vulkan aplikac\u00edm prost\u0159edky pro p\u0159\u00edm\u00e9 \u0159\u00edzen\u00ed operac\u00ed GPU a vestav\u011bnou podporu v\u00edcetrhu p\u0159\u00edkaz\u016f GPU, co\u017e minimalizuje re\u017eijn\u00ed n\u00e1klady zav\u00e1d\u011bn\u00e9 ovlada\u010dem, zat\u00edmco mo\u017enosti realizovan\u00e9 na stran\u011b ovlada\u010de se v\u00fdrazn\u011b zjednodu\u0161uj\u00ed a st\u00e1vaj\u00ed se v\u00edce p\u0159edv\u00eddateln\u00fdmi. Nap\u0159\u00edklad operace, jako je spr\u00e1va pam\u011bti a zpracov\u00e1n\u00ed chyb, realizovan\u00e9 v OpenGL na stran\u011b ovlada\u010de, jsou ve Vulkanu p\u0159esunuty na \u00farove\u0148 aplikace.<\/p>\n<p>Vulkan pokr\u00fdv\u00e1 v\u0161echny dostupn\u00e9 platformy a poskytuje jednotn\u00e9 API pro desktopov\u00e9, mobiln\u00ed syst\u00e9my a Web, co\u017e umo\u017e\u0148uje pou\u017eit\u00ed jednoho spole\u010dn\u00e9ho API pro r\u016fzn\u00e9 grafick\u00e9 procesory a oblasti pou\u017eit\u00ed. D\u00edky v\u00edcestup\u0148ov\u00e9 architektu\u0159e Vulkan, kter\u00e1 p\u0159edpokl\u00e1d\u00e1 vytv\u00e1\u0159en\u00ed n\u00e1stroj\u016f funguj\u00edc\u00edch s jak\u00fdmikoliv GPU, mohou v\u00fdrobci hardwaru pou\u017e\u00edvat p\u0159i v\u00fdvoji standardizovan\u00e9 n\u00e1stroje pro kontrolu k\u00f3du, lad\u011bn\u00ed a profilov\u00e1n\u00ed. Pro vytv\u00e1\u0159en\u00ed shader\u016f je navr\u017eeno nov\u00e9 p\u0159enosn\u00e9 mezilehl\u00e9 zobrazen\u00ed SPIR-V, zalo\u017een\u00e9 na LLVM a vyu\u017e\u00edvaj\u00edc\u00ed spole\u010dn\u00e9 z\u00e1kladn\u00ed technologie s OpenCL. Pro \u0159\u00edzen\u00ed za\u0159\u00edzen\u00ed a obrazovek poskytuje Vulkan rozhran\u00ed WSI (Window System Integration), kter\u00e9 \u0159e\u0161\u00ed podobn\u00e9 \u00fakoly jako EGL v OpenGL ES. Podpora WSI je k dispozici ihned v Waylandu \u2013 v\u0161echny aplikace pou\u017e\u00edvaj\u00edc\u00ed Vulkan mohou b\u011b\u017eet v prost\u0159ed\u00ed nemodifikovan\u00fdch server\u016f Wayland. Mo\u017enost pr\u00e1ce p\u0159es WSI je tak\u00e9 zaji\u0161t\u011bna pro Android, X11 (s DRI3), Windows, Tizen, macOS a iOS.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Zdroj: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52194\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043d\u0441\u043e\u0440\u0446\u0438\u0443\u043c Khronos, \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439\u0441\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e Vulkan 1.2, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0443\u044e API \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044f\u043c GPU. \u041d\u043e\u0432\u0430\u044f \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0432\u043e\u0431\u0440\u0430\u043b\u0430 \u0432 \u0441\u0435\u0431\u044f \u043d\u0430\u043a\u043e\u043f\u0438\u0432\u0448\u0438\u0435\u0441\u044f \u0437\u0430 \u0434\u0432\u0430 \u0433\u043e\u0434\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f. \u0414\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 Vulkan \u0443\u0436\u0435 \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Intel, AMD, ARM, Imagination Technologies \u0438 NVIDIA. \u0412 Mesa \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Vulkan 1.2 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0430 \u0434\u043b\u044f [&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-55263","post","type-post","status-publish","format-standard","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=\"\u041a\u043e\u043d\u0441\u043e\u0440\u0446\u0438\u0443\u043c Khronos, \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439\u0441\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e.\" \/>\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\/cs\/blog\/news\/opublikovan-graficheskij-standart-vulkan-1-2\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\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\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442 Vulkan 1.2 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043d\u0441\u043e\u0440\u0446\u0438\u0443\u043c Khronos, \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439\u0441\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/news\/opublikovan-graficheskij-standart-vulkan-1-2\" \/>\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=\"2020-01-15T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:22+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\udd47Byl publikov\u00e1n grafick\u00fd standard Vulkan 1.2 | ProHoster","description":"Konsorcium Khronos, kter\u00e9 se zab\u00fdv\u00e1 v\u00fdvojem grafick\u00fdch standard\u016f, zve\u0159ejnilo specifikaci.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/opublikovan-graficheskij-standart-vulkan-1-2","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","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\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442 Vulkan 1.2 | ProHoster","og:description":"\u041a\u043e\u043d\u0441\u043e\u0440\u0446\u0438\u0443\u043c Khronos, \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439\u0441\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e.","og:url":"https:\/\/prohoster.info\/cs\/blog\/news\/opublikovan-graficheskij-standart-vulkan-1-2","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":"2020-01-15T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:22+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55263","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:47:37","updated":"2022-10-02 21:51:59","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/55263","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=55263"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/55263\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=55263"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=55263"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=55263"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}