[{"data":1,"prerenderedAt":633},["ShallowReactive",2],{"lc34NSFnjK":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":632,"_id":4},"vkGetRenderAreaGranularity","Returns the granularity for optimal render area","VK_VERSION_1_0","protos",[],{"type":10,"children":11,"toc":630},"root",[12,20,277,322,335,505,518,624],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17],{"type":18,"value":19},"text","To query the render area granularity, call:",{"type":13,"tag":21,"props":22,"children":23},"code-group",{},[24,123],{"type":13,"tag":25,"props":26,"children":32},"pre",{"className":27,"code":28,"filename":29,"language":30,"meta":31,"style":31},"language-c shiki shiki-themes github-light-default github-dark-default","void vkGetRenderAreaGranularity(\n VkDevice device,\n VkRenderPass renderPass,\n VkExtent2D* pGranularity);\n","C","c","",[33],{"type":13,"tag":34,"props":35,"children":36},"code",{"__ignoreMap":31},[37,61,81,99],{"type":13,"tag":38,"props":39,"children":42},"span",{"class":40,"line":41},"line",1,[43,49,55],{"type":13,"tag":38,"props":44,"children":46},{"style":45},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[47],{"type":18,"value":48},"void",{"type":13,"tag":38,"props":50,"children":52},{"style":51},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[53],{"type":18,"value":54}," vkGetRenderAreaGranularity",{"type":13,"tag":38,"props":56,"children":58},{"style":57},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[59],{"type":18,"value":60},"(\n",{"type":13,"tag":38,"props":62,"children":64},{"class":40,"line":63},2,[65,70,76],{"type":13,"tag":38,"props":66,"children":67},{"style":57},[68],{"type":18,"value":69}," VkDevice ",{"type":13,"tag":38,"props":71,"children":73},{"style":72},"--shiki-default:#953800;--shiki-dark:#FFA657",[74],{"type":18,"value":75},"device",{"type":13,"tag":38,"props":77,"children":78},{"style":57},[79],{"type":18,"value":80},",\n",{"type":13,"tag":38,"props":82,"children":84},{"class":40,"line":83},3,[85,90,95],{"type":13,"tag":38,"props":86,"children":87},{"style":57},[88],{"type":18,"value":89}," VkRenderPass ",{"type":13,"tag":38,"props":91,"children":92},{"style":72},[93],{"type":18,"value":94},"renderPass",{"type":13,"tag":38,"props":96,"children":97},{"style":57},[98],{"type":18,"value":80},{"type":13,"tag":38,"props":100,"children":102},{"class":40,"line":101},4,[103,108,113,118],{"type":13,"tag":38,"props":104,"children":105},{"style":57},[106],{"type":18,"value":107}," VkExtent2D",{"type":13,"tag":38,"props":109,"children":110},{"style":45},[111],{"type":18,"value":112},"*",{"type":13,"tag":38,"props":114,"children":115},{"style":72},[116],{"type":18,"value":117}," pGranularity",{"type":13,"tag":38,"props":119,"children":120},{"style":57},[121],{"type":18,"value":122},");\n",{"type":13,"tag":25,"props":124,"children":129},{"className":125,"code":126,"filename":127,"language":128,"meta":31,"style":31},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn get_render_area_granularity(\n device: crate :: vk :: vk::Device,\n render_pass: vk::RenderPass,\n p_granularity: *mut vk::Extent2D,\n);\n","Rust","rs",[130],{"type":13,"tag":34,"props":131,"children":132},{"__ignoreMap":31},[133,155,206,235,269],{"type":13,"tag":38,"props":134,"children":135},{"class":40,"line":41},[136,141,146,151],{"type":13,"tag":38,"props":137,"children":138},{"style":45},[139],{"type":18,"value":140},"pub",{"type":13,"tag":38,"props":142,"children":143},{"style":45},[144],{"type":18,"value":145}," fn",{"type":13,"tag":38,"props":147,"children":148},{"style":51},[149],{"type":18,"value":150}," get_render_area_granularity",{"type":13,"tag":38,"props":152,"children":153},{"style":57},[154],{"type":18,"value":60},{"type":13,"tag":38,"props":156,"children":157},{"class":40,"line":63},[158,163,168,173,178,183,188,193,197,202],{"type":13,"tag":38,"props":159,"children":160},{"style":57},[161],{"type":18,"value":162}," device",{"type":13,"tag":38,"props":164,"children":165},{"style":45},[166],{"type":18,"value":167},":",{"type":13,"tag":38,"props":169,"children":170},{"style":45},[171],{"type":18,"value":172}," crate",{"type":13,"tag":38,"props":174,"children":175},{"style":45},[176],{"type":18,"value":177}," ::",{"type":13,"tag":38,"props":179,"children":180},{"style":57},[181],{"type":18,"value":182}," vk ",{"type":13,"tag":38,"props":184,"children":185},{"style":45},[186],{"type":18,"value":187},"::",{"type":13,"tag":38,"props":189,"children":190},{"style":72},[191],{"type":18,"value":192}," vk",{"type":13,"tag":38,"props":194,"children":195},{"style":45},[196],{"type":18,"value":187},{"type":13,"tag":38,"props":198,"children":199},{"style":72},[200],{"type":18,"value":201},"Device",{"type":13,"tag":38,"props":203,"children":204},{"style":57},[205],{"type":18,"value":80},{"type":13,"tag":38,"props":207,"children":208},{"class":40,"line":83},[209,214,218,222,226,231],{"type":13,"tag":38,"props":210,"children":211},{"style":57},[212],{"type":18,"value":213}," render_pass",{"type":13,"tag":38,"props":215,"children":216},{"style":45},[217],{"type":18,"value":167},{"type":13,"tag":38,"props":219,"children":220},{"style":72},[221],{"type":18,"value":192},{"type":13,"tag":38,"props":223,"children":224},{"style":45},[225],{"type":18,"value":187},{"type":13,"tag":38,"props":227,"children":228},{"style":72},[229],{"type":18,"value":230},"RenderPass",{"type":13,"tag":38,"props":232,"children":233},{"style":57},[234],{"type":18,"value":80},{"type":13,"tag":38,"props":236,"children":237},{"class":40,"line":101},[238,243,247,252,256,260,265],{"type":13,"tag":38,"props":239,"children":240},{"style":57},[241],{"type":18,"value":242}," p_granularity",{"type":13,"tag":38,"props":244,"children":245},{"style":45},[246],{"type":18,"value":167},{"type":13,"tag":38,"props":248,"children":249},{"style":45},[250],{"type":18,"value":251}," *mut",{"type":13,"tag":38,"props":253,"children":254},{"style":72},[255],{"type":18,"value":192},{"type":13,"tag":38,"props":257,"children":258},{"style":45},[259],{"type":18,"value":187},{"type":13,"tag":38,"props":261,"children":262},{"style":72},[263],{"type":18,"value":264},"Extent2D",{"type":13,"tag":38,"props":266,"children":267},{"style":57},[268],{"type":18,"value":80},{"type":13,"tag":38,"props":270,"children":272},{"class":40,"line":271},5,[273],{"type":13,"tag":38,"props":274,"children":275},{"style":57},[276],{"type":18,"value":122},{"type":13,"tag":278,"props":279,"children":280},"ul",{},[281,292,302],{"type":13,"tag":282,"props":283,"children":284},"li",{},[285,290],{"type":13,"tag":34,"props":286,"children":288},{"className":287},[],[289],{"type":18,"value":75},{"type":18,"value":291}," is the logical device that owns the render pass.",{"type":13,"tag":282,"props":293,"children":294},{},[295,300],{"type":13,"tag":34,"props":296,"children":298},{"className":297},[],[299],{"type":18,"value":94},{"type":18,"value":301}," is a handle to a render pass.",{"type":13,"tag":282,"props":303,"children":304},{},[305,311,313,320],{"type":13,"tag":34,"props":306,"children":308},{"className":307},[],[309],{"type":18,"value":310},"pGranularity",{"type":18,"value":312}," is a pointer to a ",{"type":13,"tag":314,"props":315,"children":317},"a",{"href":316},"/man/VkExtent2D",[318],{"type":18,"value":319},"VkExtent2D",{"type":18,"value":321}," structure in which\nthe granularity is returned.",{"type":13,"tag":14,"props":323,"children":324},{},[325,327,333],{"type":18,"value":326},"The conditions leading to an optimal ",{"type":13,"tag":34,"props":328,"children":330},{"className":329},[],[331],{"type":18,"value":332},"renderArea",{"type":18,"value":334}," are:",{"type":13,"tag":278,"props":336,"children":337},{},[338,372,402,458],{"type":13,"tag":282,"props":339,"children":340},{},[341,343,349,351,356,358,364,366,370],{"type":18,"value":342},"the ",{"type":13,"tag":34,"props":344,"children":346},{"className":345},[],[347],{"type":18,"value":348},"offset.x",{"type":18,"value":350}," member in ",{"type":13,"tag":34,"props":352,"children":354},{"className":353},[],[355],{"type":18,"value":332},{"type":18,"value":357}," is a multiple of the\n",{"type":13,"tag":34,"props":359,"children":361},{"className":360},[],[362],{"type":18,"value":363},"width",{"type":18,"value":365}," member of the returned ",{"type":13,"tag":314,"props":367,"children":368},{"href":316},[369],{"type":18,"value":319},{"type":18,"value":371}," (the horizontal\ngranularity).",{"type":13,"tag":282,"props":373,"children":374},{},[375,376,382,383,388,389,395,396,400],{"type":18,"value":342},{"type":13,"tag":34,"props":377,"children":379},{"className":378},[],[380],{"type":18,"value":381},"offset.y",{"type":18,"value":350},{"type":13,"tag":34,"props":384,"children":386},{"className":385},[],[387],{"type":18,"value":332},{"type":18,"value":357},{"type":13,"tag":34,"props":390,"children":392},{"className":391},[],[393],{"type":18,"value":394},"height",{"type":18,"value":365},{"type":13,"tag":314,"props":397,"children":398},{"href":316},[399],{"type":18,"value":319},{"type":18,"value":401}," (the vertical\ngranularity).",{"type":13,"tag":282,"props":403,"children":404},{},[405,407,413,414,419,421,426,428,433,435,440,442,448,450,456],{"type":18,"value":406},"either the ",{"type":13,"tag":34,"props":408,"children":410},{"className":409},[],[411],{"type":18,"value":412},"extent.width",{"type":18,"value":350},{"type":13,"tag":34,"props":415,"children":417},{"className":416},[],[418],{"type":18,"value":332},{"type":18,"value":420}," is a multiple\nof the horizontal granularity or ",{"type":13,"tag":34,"props":422,"children":424},{"className":423},[],[425],{"type":18,"value":348},{"type":18,"value":427},"+",{"type":13,"tag":34,"props":429,"children":431},{"className":430},[],[432],{"type":18,"value":412},{"type":18,"value":434}," is\nequal to the ",{"type":13,"tag":34,"props":436,"children":438},{"className":437},[],[439],{"type":18,"value":363},{"type":18,"value":441}," of the ",{"type":13,"tag":34,"props":443,"children":445},{"className":444},[],[446],{"type":18,"value":447},"framebuffer",{"type":18,"value":449}," in the\n",{"type":13,"tag":314,"props":451,"children":453},{"href":452},"/man/VkRenderPassBeginInfo",[454],{"type":18,"value":455},"VkRenderPassBeginInfo",{"type":18,"value":457},".",{"type":13,"tag":282,"props":459,"children":460},{},[461,462,468,469,474,476,481,482,487,488,493,494,499,500,504],{"type":18,"value":406},{"type":13,"tag":34,"props":463,"children":465},{"className":464},[],[466],{"type":18,"value":467},"extent.height",{"type":18,"value":350},{"type":13,"tag":34,"props":470,"children":472},{"className":471},[],[473],{"type":18,"value":332},{"type":18,"value":475}," is a multiple\nof the vertical granularity or ",{"type":13,"tag":34,"props":477,"children":479},{"className":478},[],[480],{"type":18,"value":381},{"type":18,"value":427},{"type":13,"tag":34,"props":483,"children":485},{"className":484},[],[486],{"type":18,"value":467},{"type":18,"value":434},{"type":13,"tag":34,"props":489,"children":491},{"className":490},[],[492],{"type":18,"value":394},{"type":18,"value":441},{"type":13,"tag":34,"props":495,"children":497},{"className":496},[],[498],{"type":18,"value":447},{"type":18,"value":449},{"type":13,"tag":314,"props":501,"children":502},{"href":452},[503],{"type":18,"value":455},{"type":18,"value":457},{"type":13,"tag":14,"props":506,"children":507},{},[508,510,516],{"type":18,"value":509},"Subpass dependencies are not affected by the render area, and apply to the\nentire image subresources attached to the framebuffer as specified in the\ndescription of ",{"type":13,"tag":314,"props":511,"children":513},{"href":512},"/chapters/renderpass#renderpass-layout-transitions",[514],{"type":18,"value":515},"automatic layout\ntransitions",{"type":18,"value":517},".\nSimilarly, pipeline barriers are valid even if their effect extends outside\nthe render area.",{"type":13,"tag":519,"props":520,"children":522},"validity-group",{"name":521},"Valid Usage (Implicit)",[523,553,577,601],{"type":13,"tag":524,"props":525,"children":527},"validity-field",{"name":526},"VUID-vkGetRenderAreaGranularity-device-parameter",[528],{"type":13,"tag":14,"props":529,"children":530},{},[531,536,538,543,545,551],{"type":13,"tag":34,"props":532,"children":534},{"className":533},[],[535],{"type":18,"value":75},{"type":18,"value":537}," ",{"type":13,"tag":539,"props":540,"children":542},"normative",{"type":541},"must",[],{"type":18,"value":544}," be a valid ",{"type":13,"tag":314,"props":546,"children":548},{"href":547},"/man/VkDevice",[549],{"type":18,"value":550},"VkDevice",{"type":18,"value":552}," handle",{"type":13,"tag":524,"props":554,"children":556},{"name":555},"VUID-vkGetRenderAreaGranularity-renderPass-parameter",[557],{"type":13,"tag":14,"props":558,"children":559},{},[560,565,566,569,570,576],{"type":13,"tag":34,"props":561,"children":563},{"className":562},[],[564],{"type":18,"value":94},{"type":18,"value":537},{"type":13,"tag":539,"props":567,"children":568},{"type":541},[],{"type":18,"value":544},{"type":13,"tag":314,"props":571,"children":573},{"href":572},"/man/VkRenderPass",[574],{"type":18,"value":575},"VkRenderPass",{"type":18,"value":552},{"type":13,"tag":524,"props":578,"children":580},{"name":579},"VUID-vkGetRenderAreaGranularity-pGranularity-parameter",[581],{"type":13,"tag":14,"props":582,"children":583},{},[584,589,590,593,595,599],{"type":13,"tag":34,"props":585,"children":587},{"className":586},[],[588],{"type":18,"value":310},{"type":18,"value":537},{"type":13,"tag":539,"props":591,"children":592},{"type":541},[],{"type":18,"value":594}," be a valid pointer to a ",{"type":13,"tag":314,"props":596,"children":597},{"href":316},[598],{"type":18,"value":319},{"type":18,"value":600}," structure",{"type":13,"tag":524,"props":602,"children":604},{"name":603},"VUID-vkGetRenderAreaGranularity-renderPass-parent",[605],{"type":13,"tag":14,"props":606,"children":607},{},[608,613,614,617,619],{"type":13,"tag":34,"props":609,"children":611},{"className":610},[],[612],{"type":18,"value":94},{"type":18,"value":537},{"type":13,"tag":539,"props":615,"children":616},{"type":541},[],{"type":18,"value":618}," have been created, allocated, or retrieved from ",{"type":13,"tag":34,"props":620,"children":622},{"className":621},[],[623],{"type":18,"value":75},{"type":13,"tag":625,"props":626,"children":627},"style",{},[628],{"type":18,"value":629},"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":31,"searchDepth":63,"depth":63,"links":631},[],"markdown",1725732621638]