[{"data":1,"prerenderedAt":573},["ShallowReactive",2],{"qvaRWQfID6":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":572,"_id":4},"VkSurfacePresentModeEXT","Structure describing present mode of a surface","VK_EXT_surface_maintenance1","structs",[],{"type":10,"children":11,"toc":570},"root",[12,28,233,288,418,477,510,564],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,26],{"type":18,"value":19},"text","The ",{"type":13,"tag":21,"props":22,"children":24},"code",{"className":23},[],[25],{"type":18,"value":4},{"type":18,"value":27}," structure is defined as:",{"type":13,"tag":29,"props":30,"children":31},"code-group",{},[32,108],{"type":13,"tag":33,"props":34,"children":40},"pre",{"className":35,"code":36,"filename":37,"language":38,"meta":39,"style":39},"language-c shiki shiki-themes github-light-default github-dark-default","typedef struct VkSurfacePresentModeEXT {\n VkStructureType sType;\n void* pNext;\n VkPresentModeKHR presentMode;\n} VkSurfacePresentModeEXT;\n","C","c","",[41],{"type":13,"tag":21,"props":42,"children":43},{"__ignoreMap":39},[44,67,76,90,99],{"type":13,"tag":45,"props":46,"children":49},"span",{"class":47,"line":48},"line",1,[50,56,61],{"type":13,"tag":45,"props":51,"children":53},{"style":52},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[54],{"type":18,"value":55},"typedef",{"type":13,"tag":45,"props":57,"children":58},{"style":52},[59],{"type":18,"value":60}," struct",{"type":13,"tag":45,"props":62,"children":64},{"style":63},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[65],{"type":18,"value":66}," VkSurfacePresentModeEXT {\n",{"type":13,"tag":45,"props":68,"children":70},{"class":47,"line":69},2,[71],{"type":13,"tag":45,"props":72,"children":73},{"style":63},[74],{"type":18,"value":75}," VkStructureType sType;\n",{"type":13,"tag":45,"props":77,"children":79},{"class":47,"line":78},3,[80,85],{"type":13,"tag":45,"props":81,"children":82},{"style":52},[83],{"type":18,"value":84}," void*",{"type":13,"tag":45,"props":86,"children":87},{"style":63},[88],{"type":18,"value":89}," pNext;\n",{"type":13,"tag":45,"props":91,"children":93},{"class":47,"line":92},4,[94],{"type":13,"tag":45,"props":95,"children":96},{"style":63},[97],{"type":18,"value":98}," VkPresentModeKHR presentMode;\n",{"type":13,"tag":45,"props":100,"children":102},{"class":47,"line":101},5,[103],{"type":13,"tag":45,"props":104,"children":105},{"style":63},[106],{"type":18,"value":107},"} VkSurfacePresentModeEXT;\n",{"type":13,"tag":33,"props":109,"children":114},{"className":110,"code":111,"filename":112,"language":113,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct SurfacePresentModeEXT {\n s_type: vk::StructureType,\n p_next: *mut c_void,\n present_mode: vk::PresentModeKHR,\n}\n","Rust","rs",[115],{"type":13,"tag":21,"props":116,"children":117},{"__ignoreMap":39},[118,141,174,196,225],{"type":13,"tag":45,"props":119,"children":120},{"class":47,"line":48},[121,126,130,136],{"type":13,"tag":45,"props":122,"children":123},{"style":52},[124],{"type":18,"value":125},"pub",{"type":13,"tag":45,"props":127,"children":128},{"style":52},[129],{"type":18,"value":60},{"type":13,"tag":45,"props":131,"children":133},{"style":132},"--shiki-default:#953800;--shiki-dark:#FFA657",[134],{"type":18,"value":135}," SurfacePresentModeEXT",{"type":13,"tag":45,"props":137,"children":138},{"style":63},[139],{"type":18,"value":140}," {\n",{"type":13,"tag":45,"props":142,"children":143},{"class":47,"line":69},[144,149,154,159,164,169],{"type":13,"tag":45,"props":145,"children":146},{"style":63},[147],{"type":18,"value":148}," s_type",{"type":13,"tag":45,"props":150,"children":151},{"style":52},[152],{"type":18,"value":153},":",{"type":13,"tag":45,"props":155,"children":156},{"style":132},[157],{"type":18,"value":158}," vk",{"type":13,"tag":45,"props":160,"children":161},{"style":52},[162],{"type":18,"value":163},"::",{"type":13,"tag":45,"props":165,"children":166},{"style":132},[167],{"type":18,"value":168},"StructureType",{"type":13,"tag":45,"props":170,"children":171},{"style":63},[172],{"type":18,"value":173},",\n",{"type":13,"tag":45,"props":175,"children":176},{"class":47,"line":78},[177,182,186,191],{"type":13,"tag":45,"props":178,"children":179},{"style":63},[180],{"type":18,"value":181}," p_next",{"type":13,"tag":45,"props":183,"children":184},{"style":52},[185],{"type":18,"value":153},{"type":13,"tag":45,"props":187,"children":188},{"style":52},[189],{"type":18,"value":190}," *mut",{"type":13,"tag":45,"props":192,"children":193},{"style":63},[194],{"type":18,"value":195}," c_void,\n",{"type":13,"tag":45,"props":197,"children":198},{"class":47,"line":92},[199,204,208,212,216,221],{"type":13,"tag":45,"props":200,"children":201},{"style":63},[202],{"type":18,"value":203}," present_mode",{"type":13,"tag":45,"props":205,"children":206},{"style":52},[207],{"type":18,"value":153},{"type":13,"tag":45,"props":209,"children":210},{"style":132},[211],{"type":18,"value":158},{"type":13,"tag":45,"props":213,"children":214},{"style":52},[215],{"type":18,"value":163},{"type":13,"tag":45,"props":217,"children":218},{"style":132},[219],{"type":18,"value":220},"PresentModeKHR",{"type":13,"tag":45,"props":222,"children":223},{"style":63},[224],{"type":18,"value":173},{"type":13,"tag":45,"props":226,"children":227},{"class":47,"line":101},[228],{"type":13,"tag":45,"props":229,"children":230},{"style":63},[231],{"type":18,"value":232},"}\n",{"type":13,"tag":234,"props":235,"children":236},"ul",{},[237,258,277],{"type":13,"tag":238,"props":239,"children":240},"li",{},[241,247,249,256],{"type":13,"tag":21,"props":242,"children":244},{"className":243},[],[245],{"type":18,"value":246},"sType",{"type":18,"value":248}," is a ",{"type":13,"tag":250,"props":251,"children":253},"a",{"href":252},"/man/VkStructureType",[254],{"type":18,"value":255},"VkStructureType",{"type":18,"value":257}," value identifying this structure.",{"type":13,"tag":238,"props":259,"children":260},{},[261,267,269,275],{"type":13,"tag":21,"props":262,"children":264},{"className":263},[],[265],{"type":18,"value":266},"pNext",{"type":18,"value":268}," is ",{"type":13,"tag":21,"props":270,"children":272},{"className":271},[],[273],{"type":18,"value":274},"NULL",{"type":18,"value":276}," or a pointer to a structure extending this\nstructure.",{"type":13,"tag":238,"props":278,"children":279},{},[280,286],{"type":13,"tag":21,"props":281,"children":283},{"className":282},[],[284],{"type":18,"value":285},"presentMode",{"type":18,"value":287}," is the presentation mode the swapchain will use.",{"type":13,"tag":14,"props":289,"children":290},{},[291,293,298,300,305,307,313,315,321,322,328,329,333,334,340,341,347,348,354,356,360,361,367,369,374,376,381,382,388,390,396,398,403,405,409,411,416],{"type":18,"value":292},"If the ",{"type":13,"tag":21,"props":294,"children":296},{"className":295},[],[297],{"type":18,"value":4},{"type":18,"value":299}," structure is included in the\n",{"type":13,"tag":21,"props":301,"children":303},{"className":302},[],[304],{"type":18,"value":266},{"type":18,"value":306}," chain of ",{"type":13,"tag":250,"props":308,"children":310},{"href":309},"/man/VkPhysicalDeviceSurfaceInfo2KHR",[311],{"type":18,"value":312},"VkPhysicalDeviceSurfaceInfo2KHR",{"type":18,"value":314},", the values\nreturned in ",{"type":13,"tag":250,"props":316,"children":318},{"href":317},"/man/VkSurfaceCapabilitiesKHR",[319],{"type":18,"value":320},"VkSurfaceCapabilitiesKHR",{"type":18,"value":163},{"type":13,"tag":21,"props":323,"children":325},{"className":324},[],[326],{"type":18,"value":327},"minImageCount",{"type":18,"value":173},{"type":13,"tag":250,"props":330,"children":331},{"href":317},[332],{"type":18,"value":320},{"type":18,"value":163},{"type":13,"tag":21,"props":335,"children":337},{"className":336},[],[338],{"type":18,"value":339},"maxImageCount",{"type":18,"value":173},{"type":13,"tag":250,"props":342,"children":344},{"href":343},"/man/VkSurfacePresentScalingCapabilitiesEXT",[345],{"type":18,"value":346},"VkSurfacePresentScalingCapabilitiesEXT",{"type":18,"value":163},{"type":13,"tag":21,"props":349,"children":351},{"className":350},[],[352],{"type":18,"value":353},"minScaledImageExtent",{"type":18,"value":355},",\nand ",{"type":13,"tag":250,"props":357,"children":358},{"href":343},[359],{"type":18,"value":346},{"type":18,"value":163},{"type":13,"tag":21,"props":362,"children":364},{"className":363},[],[365],{"type":18,"value":366},"maxScaledImageExtent",{"type":18,"value":368},"\nare valid only for the specified ",{"type":13,"tag":21,"props":370,"children":372},{"className":371},[],[373],{"type":18,"value":285},{"type":18,"value":375},".\nIf ",{"type":13,"tag":21,"props":377,"children":379},{"className":378},[],[380],{"type":18,"value":285},{"type":18,"value":268},{"type":13,"tag":21,"props":383,"children":385},{"className":384},[],[386],{"type":18,"value":387},"VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR",{"type":18,"value":389}," or\n",{"type":13,"tag":21,"props":391,"children":393},{"className":392},[],[394],{"type":18,"value":395},"VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR",{"type":18,"value":397},", the per-present mode\nimage counts ",{"type":13,"tag":399,"props":400,"children":402},"normative",{"type":401},"must",[],{"type":18,"value":404}," both be one.\nThe per-present mode image counts ",{"type":13,"tag":399,"props":406,"children":408},{"type":407},"may",[],{"type":18,"value":410}," be less-than or greater-than the\nimage counts returned when ",{"type":13,"tag":21,"props":412,"children":414},{"className":413},[],[415],{"type":18,"value":4},{"type":18,"value":417}," is not provided.",{"type":13,"tag":419,"props":420,"children":421},"note",{},[422,468],{"type":13,"tag":14,"props":423,"children":424},{},[425,427,433,435,439,440,445,447,453,455,460,462,466],{"type":18,"value":426},"If ",{"type":13,"tag":250,"props":428,"children":430},{"href":429},"/man/VkSwapchainPresentModesCreateInfoEXT",[431],{"type":18,"value":432},"VkSwapchainPresentModesCreateInfoEXT",{"type":18,"value":434}," is provided to swapchain\ncreation, the requirements for forward progress may be less strict.\nFor example, a FIFO swapchain might only require 2 images to guarantee\nforward progress, but a MAILBOX one might require 4.\nWithout the per-present image counts, such an implementation would have to\nreturn 4 in ",{"type":13,"tag":250,"props":436,"children":437},{"href":317},[438],{"type":18,"value":320},{"type":18,"value":163},{"type":13,"tag":21,"props":441,"children":443},{"className":442},[],[444],{"type":18,"value":327},{"type":18,"value":446},", which\npessimizes FIFO.\nConversely, an implementation may return a low number for minImageCount, but\ninternally bump the image count when application queries\n",{"type":13,"tag":250,"props":448,"children":450},{"href":449},"/man/vkGetSwapchainImagesKHR",[451],{"type":18,"value":452},"vkGetSwapchainImagesKHR",{"type":18,"value":454},", which can surprise applications, and is not\ndiscoverable until swapchain creation.\nUsing ",{"type":13,"tag":21,"props":456,"children":458},{"className":457},[],[459],{"type":18,"value":4},{"type":18,"value":461}," and\n",{"type":13,"tag":250,"props":463,"children":464},{"href":429},[465],{"type":18,"value":432},{"type":18,"value":467}," together effectively removes this\nproblem.",{"type":13,"tag":14,"props":469,"children":470},{},[471,475],{"type":13,"tag":250,"props":472,"children":473},{"href":429},[474],{"type":18,"value":432},{"type":18,"value":476}," is required for the specification\nto be backwards compatible with applications that do not know about, or make\nuse of this feature.",{"type":13,"tag":478,"props":479,"children":481},"validity-group",{"name":480},"Valid Usage",[482],{"type":13,"tag":483,"props":484,"children":486},"validity-field",{"name":485},"VUID-VkSurfacePresentModeEXT-presentMode-07780",[487],{"type":13,"tag":14,"props":488,"children":489},{},[490,495,497,500,502,508],{"type":13,"tag":21,"props":491,"children":493},{"className":492},[],[494],{"type":18,"value":285},{"type":18,"value":496}," ",{"type":13,"tag":399,"props":498,"children":499},{"type":401},[],{"type":18,"value":501}," be a value reported by\n",{"type":13,"tag":250,"props":503,"children":505},{"href":504},"/man/vkGetPhysicalDeviceSurfacePresentModesKHR",[506],{"type":18,"value":507},"vkGetPhysicalDeviceSurfacePresentModesKHR",{"type":18,"value":509}," for the specified\nsurface",{"type":13,"tag":478,"props":511,"children":513},{"name":512},"Valid Usage (Implicit)",[514,538],{"type":13,"tag":483,"props":515,"children":517},{"name":516},"VUID-VkSurfacePresentModeEXT-sType-sType",[518],{"type":13,"tag":14,"props":519,"children":520},{},[521,526,527,530,532],{"type":13,"tag":21,"props":522,"children":524},{"className":523},[],[525],{"type":18,"value":246},{"type":18,"value":496},{"type":13,"tag":399,"props":528,"children":529},{"type":401},[],{"type":18,"value":531}," be ",{"type":13,"tag":21,"props":533,"children":535},{"className":534},[],[536],{"type":18,"value":537},"VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT",{"type":13,"tag":483,"props":539,"children":541},{"name":540},"VUID-VkSurfacePresentModeEXT-presentMode-parameter",[542],{"type":13,"tag":14,"props":543,"children":544},{},[545,550,551,554,556,562],{"type":13,"tag":21,"props":546,"children":548},{"className":547},[],[549],{"type":18,"value":285},{"type":18,"value":496},{"type":13,"tag":399,"props":552,"children":553},{"type":401},[],{"type":18,"value":555}," be a valid ",{"type":13,"tag":250,"props":557,"children":559},{"href":558},"/man/VkPresentModeKHR",[560],{"type":18,"value":561},"VkPresentModeKHR",{"type":18,"value":563}," value",{"type":13,"tag":565,"props":566,"children":567},"style",{},[568],{"type":18,"value":569},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":39,"searchDepth":69,"depth":69,"links":571},[],"markdown",1725732589505]