CopyrightKhronosGroup2016-Page193SwapchainsUnchained!
(WhatyouneedtoknowaboutVulkanWSI)AlonOr-bach,Chair,VulkanSystemIntegrationSub-Group–May2016@alonorbach(disclaimersapply!
)CopyrightKhronosGroup2016-Page194IntrotoVulkanWindowSystemIntegrationExplicitcontrolforacquisitionandpresentationofimages-DesignedtofittheVulkanAPIandtoday'scompositingwindowsystemsNotallextensionsaresupportedbyeveryplatform-YouMUSTcheckandenabletheextensionsyourapp/engineuses!
!
!
Today'spresentationshouldhelpyougetpresentationworking-Learnhowtopresentthroughaswapchain-OverviewofVulkanobjectsusedbytheWSIextensionsWSIJargonBusterPlatformOurterminologyforanOS/windowsysteme.
g.
Android,Windows,Wayland,X11viaXCBPresentationEngineTheplatform'scompositorordisplayengineApplicationYourapporgameengineCopyrightKhronosGroup2016-Page195HowmanyWSIextensionsarethereTwocross-platforminstanceextensions-VK_KHR_surface-VK_KHR_displaySix(platform)instanceextensions-VK_KHR_android_surface-VK_KHR_mir_surface-VK_KHR_wayland_surface-VK_KHR_win32_surface-VK_KHR_xcb_surface-VK_KHR_xlib_surfaceTwocross-platformdeviceextensions-VK_KHR_swapchain-VK_KHR_display_swapchainCopyrightKhronosGroup2016-Page196VulkanSurfacesVkSurfaceKHR-Vulkan'swaytoencapsulateanativewindow/surfacePlatform-independentsurfacequeries-Findoutcrucialinformationaboutyoursurface'sproperties-Suchasformat,transform,imageusage-SomeplatformsprovideadditionalqueriesPresentationsupportisperqueuefamily-Animplementationmaysupportmultipleplatformse.
g.
bothxlibandxcb-OrmaynotsupportpresentationatallPhysicalDeviceAPlatformXQueueFamily2QueueFamily1QueueFamily0PlatformYPhysicalDeviceBQueueFamily1QueueFamily0PhysicalDeviceCQueueFamily1QueueFamily0UnlikeanEGLSurface,creatingaVulkanSurfacedoesn'tmeanyou'vegotyourrendertargetscreated…yetCopyrightKhronosGroup2016-Page197VulkanSwapchains:VK_KHR_swapchainArrayofpresentableimagesassociatedwithasurface-Applicationrequestsaminimumnumberofpresentableimages-Implementationcreatesatleastthatnumber-ImplementationmayhavealimitUpfrontallocationofpresentableimages-Noallocationhitchingatcrucialmoment-Pre-recordfixedcontentcommandbuffersPresentmodedeterminesbehavior-FIFOsupportmandatory-Platformscanoffermailbox,immediate,FIFOrelaxedconstVkSwapchainCreateInfoKHRcreateInfo={VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR,//sTypeNULL,//pNext0,//flagsmySurface,//surfacedesiredNumberOfPresentableImages,//minImageCountsurfaceFormat,//imageFormatsurfaceColorSpace,//imageColorSpacemyExtent,//imageExtent1,//imageArrayLayersVK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT,//imageUsageVK_SHARING_MODE_EXCLUSIVE,//imageSharingMode0,//queueFamilyIndexCountNULL,//pQueueFamilyIndicessurfaceProperties.
currentTransform,//preTransformVK_COMPOSITE_ALPHA_INHERIT_BIT_KHR,//compositeAlphaswapchainPresentMode,//presentModeVK_TRUE,//clippedVK_NULL_HANDLE//oldSwapchain};FIFOislikeeglSwapInterval=1Mailbox/ImmediateislikeeglSwapInterval0FIFOrelaxedislikeEXT_swap_control_tearCopyrightKhronosGroup2016-Page198SimilarbutneaterthanhowEGL_KHR_partial_update/EGL_EXT_buffer_ageandpreservedbehaviorachievesthisVulkanSwapchains:They'regood!
Applicationknowswhichimagewithinaswapchainitispresenting-ContentofimagepreservedbetweenpresentsApplicationisresponsibleforexplicitlyrecreatingswapchains-nosurprises-Platforminformsappifcurrentswapchain-Suboptimal:e.
g.
afterwindowresize,swapchainstillusableforpresentviaimagescaling-SurfaceLost:swapchainnolongerusableforpresent-ApplicationisresponsibletocreateanewswapchainInEGL,theEGLSurfacemayberesizedbytheplatformafteraneglSwapBufferscall.
VulkanrequirestheapplicationtointerveneCopyrightKhronosGroup2016-Page199VulkanSwapchains:They'rejollygood!
Presentingandacquiringareseparateoperations-Noneedtosubmitanewimagetoacquireanotherone,unlesspresentationenginecannotreleaseitApplicationmustonlymodifypresentableimagesithasacquiredPresentationenginemustonlydisplaypresentableimagesthathavebeenpresented!
Stallsinframeloopareverybad!
InEGL,callingeglSwapBuffersbothpresentsthecurrentbackbufferandacquiresanewoneVulkansplitsthisupintoseparateoperationsCopyrightKhronosGroup2016-Page200VK_KHR__surfaceVK_KHR_surfaceVK_KHR_swapchainPlatform-specificAPIsStepstosetupyourpresentableimages1–Createanativewindow/surface2–CreateaVulkansurface3–Queryinformationaboutyoursurface4–CreateaVulkanswapchain5–GetyourpresentableimagesCopyrightKhronosGroup2016-Page201VK_KHR_swapchainVulkanFrameLoop–aseasyas1-2-3!
2–Submitcommandbuffer(s)forthatimage1–Acquirethenextpresentableimage3–Presenttheimage0–CreateyourswapchainLegendSetupSteady-stateResponsetosuboptimal/surface_lostCopyrightKhronosGroup2016-Page202VulkanDisplays:VK_KHR_displayVulkan'swaytodiscoverdisplaydevices(screens,panels)outsideawindowsystem-Reminder:NotsupportedonallplatformsDefinesVkDisplayKHRandVkDisplayModeKHRobjects-RepresentthedisplaydevicesandthemodestheysupportconnectedtoaVkPhysicalDevice-DetermineifadisplaysupportsmultipleplanesthatareblendedtogetherEnablescreationofaVkSurfaceKHRtorepresentadisplayplanePhysicalDeviceSurfaceDisplay0Plane2Plane1Plane0DisplayMode1DisplayMode0Display1DisplayMode1DisplayMode0AVulkandisplayrepresentsanactualdisplay!
(WhereasanEGLDisplayisactuallyjustaconnectiontoadriver–likeaVulkanDevice)CopyrightKhronosGroup2016-Page203VK_KHR_display_swapchainExtendstheinformationprovidedatvkQueuePresentKHR-Whatregiontopresentfromtheswapchainimage-Whatregiontopresenttoonthedisplay-WhetherthedisplayshouldpersisttheimageAddsabilitytocreateasharedswapchain-SwapchainthattakesmultipleVkSwapchainCreateInfoKHRstructs-Allowsmultipledisplaystobepresentedtosimultaneously-Noguaranteethatpresentsareatomic.
.
.
presently!
CopyrightKhronosGroup2016-Page204Anyquestionalon.
orbach@samsung.
com@alonorbach
HostKvm是一家成立于2013年的国外主机服务商,主要提供基于KVM架构的VPS主机,可选数据中心包括日本、新加坡、韩国、美国、中国香港等多个地区机房,均为国内直连或优化线路,延迟较低,适合建站或者远程办公等。本月商家针对全场VPS主机提供8折优惠码,优惠后美国洛杉矶VPS月付5.2美元起。下面列出几款不同机房VPS主机产品配置信息。套餐:美国US-Plan0CPU:1cores内存:1GB硬...
RackNerd 商家从2019年上线以来争议也是比较大的,一直低价促销很多网友都认为坚持时间不长可能会跑路。不过,目前看到RackNerd还是在坚持且这次黑五活动也有发布,且活动促销也是比较多的,不过对于我们用户来说选择这些低价服务商尽量的不要将长远项目放在上面,低价年付套餐服务商一般都是用来临时业务的。RackNerd商家这次发布黑五促销活动,一共有五款年付套餐,涉及到多个机房。最低年付的套餐...
之前分享过很多次CloudCone的信息,主要是VPS主机,其实商家也提供独立服务器租用,同样在洛杉矶MC机房,分为两种线路:普通优化线路及CN2 GIA,今天来分享下商家的CN2 GIA线路独立服务器产品,提供15-100Mbps带宽,不限制流量,可购买额外的DDoS高防IP,最低每月82美元起,支持使用PayPal或者支付宝等付款方式。下面分享几款洛杉矶CN2 GIA线路独立服务器配置信息。配...
swap为你推荐
笔记本内存价格笔记本内存条多少钱?租车平台哪个好租车哪个平台好点,都要什么费用?电脑杀毒软件哪个好现在电脑用哪个杀毒软件最好江门旅游景点哪个好玩的地方江门有什么地方好玩的?唱K 行街 免答朗逸和速腾哪个好朗逸跟速腾的最大区别在哪朗逸跟速腾买那个好绝地求生加速器哪个好绝地求生用什么加速器比较好?英语词典哪个好英语词典哪个好无纺布和熔喷布口罩哪个好无纺布除了做尿布湿口罩这些,还有其他什么用处吗?手机炒股软件哪个好手机炒股哪个软件好 要免费的云盘哪个好免费的网盘哪个实用?
域名备案中心 美国独立服务器 新世界机房 免备案cdn 域名优惠码 suspended 12u机柜尺寸 京东商城双十一活动 免费网站申请 阿里云浏览器 老左正传 免费cdn 四核服务器 支持外链的相册 linux使用教程 流媒体加速 空间租赁 论坛主机 注册阿里云邮箱 睿云 更多