[{"data":1,"prerenderedAt":564},["ShallowReactive",2],{"AooGO0UAQR":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":563,"_id":4},"VkPhysicalDeviceSparseProperties","Structure specifying physical device sparse memory properties","VK_VERSION_1_0","structs",[],{"type":10,"children":11,"toc":561},"root",[12,28,333,555],{"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,121],{"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 VkPhysicalDeviceSparseProperties {\n VkBool32 residencyStandard2DBlockShape;\n VkBool32 residencyStandard2DMultisampleBlockShape;\n VkBool32 residencyStandard3DBlockShape;\n VkBool32 residencyAlignedMipSize;\n VkBool32 residencyNonResidentStrict;\n} VkPhysicalDeviceSparseProperties;\n","C","c","",[41],{"type":13,"tag":21,"props":42,"children":43},{"__ignoreMap":39},[44,67,76,85,94,103,112],{"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}," VkPhysicalDeviceSparseProperties {\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}," VkBool32 residencyStandard2DBlockShape;\n",{"type":13,"tag":45,"props":77,"children":79},{"class":47,"line":78},3,[80],{"type":13,"tag":45,"props":81,"children":82},{"style":63},[83],{"type":18,"value":84}," VkBool32 residencyStandard2DMultisampleBlockShape;\n",{"type":13,"tag":45,"props":86,"children":88},{"class":47,"line":87},4,[89],{"type":13,"tag":45,"props":90,"children":91},{"style":63},[92],{"type":18,"value":93}," VkBool32 residencyStandard3DBlockShape;\n",{"type":13,"tag":45,"props":95,"children":97},{"class":47,"line":96},5,[98],{"type":13,"tag":45,"props":99,"children":100},{"style":63},[101],{"type":18,"value":102}," VkBool32 residencyAlignedMipSize;\n",{"type":13,"tag":45,"props":104,"children":106},{"class":47,"line":105},6,[107],{"type":13,"tag":45,"props":108,"children":109},{"style":63},[110],{"type":18,"value":111}," VkBool32 residencyNonResidentStrict;\n",{"type":13,"tag":45,"props":113,"children":115},{"class":47,"line":114},7,[116],{"type":13,"tag":45,"props":117,"children":118},{"style":63},[119],{"type":18,"value":120},"} VkPhysicalDeviceSparseProperties;\n",{"type":13,"tag":33,"props":122,"children":127},{"className":123,"code":124,"filename":125,"language":126,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct PhysicalDeviceSparseProperties {\n residency_standard2_d_block_shape: vk::Bool32, // Sparse resources support: GPU will access all 2D (single sample) sparse resources using the standard sparse image block shapes (based on pixel format)\n residency_standard2_d_multisample_block_shape: vk::Bool32, // Sparse resources support: GPU will access all 2D (multisample) sparse resources using the standard sparse image block shapes (based on pixel format)\n residency_standard3_d_block_shape: vk::Bool32, // Sparse resources support: GPU will access all 3D sparse resources using the standard sparse image block shapes (based on pixel format)\n residency_aligned_mip_size: vk::Bool32, // Sparse resources support: Images with mip level dimensions that are NOT a multiple of the sparse image block dimensions will be placed in the mip tail\n residency_non_resident_strict: vk::Bool32, // Sparse resources support: GPU can consistently access non-resident regions of a resource, all reads return as if data is 0, writes are discarded\n}\n","Rust","rs",[128],{"type":13,"tag":21,"props":129,"children":130},{"__ignoreMap":39},[131,154,193,226,259,292,325],{"type":13,"tag":45,"props":132,"children":133},{"class":47,"line":48},[134,139,143,149],{"type":13,"tag":45,"props":135,"children":136},{"style":52},[137],{"type":18,"value":138},"pub",{"type":13,"tag":45,"props":140,"children":141},{"style":52},[142],{"type":18,"value":60},{"type":13,"tag":45,"props":144,"children":146},{"style":145},"--shiki-default:#953800;--shiki-dark:#FFA657",[147],{"type":18,"value":148}," PhysicalDeviceSparseProperties",{"type":13,"tag":45,"props":150,"children":151},{"style":63},[152],{"type":18,"value":153}," {\n",{"type":13,"tag":45,"props":155,"children":156},{"class":47,"line":69},[157,162,167,172,177,182,187],{"type":13,"tag":45,"props":158,"children":159},{"style":63},[160],{"type":18,"value":161}," residency_standard2_d_block_shape",{"type":13,"tag":45,"props":163,"children":164},{"style":52},[165],{"type":18,"value":166},":",{"type":13,"tag":45,"props":168,"children":169},{"style":145},[170],{"type":18,"value":171}," vk",{"type":13,"tag":45,"props":173,"children":174},{"style":52},[175],{"type":18,"value":176},"::",{"type":13,"tag":45,"props":178,"children":179},{"style":145},[180],{"type":18,"value":181},"Bool32",{"type":13,"tag":45,"props":183,"children":184},{"style":63},[185],{"type":18,"value":186},", ",{"type":13,"tag":45,"props":188,"children":190},{"style":189},"--shiki-default:#6E7781;--shiki-dark:#8B949E",[191],{"type":18,"value":192},"// Sparse resources support: GPU will access all 2D (single sample) sparse resources using the standard sparse image block shapes (based on pixel format)\n",{"type":13,"tag":45,"props":194,"children":195},{"class":47,"line":78},[196,201,205,209,213,217,221],{"type":13,"tag":45,"props":197,"children":198},{"style":63},[199],{"type":18,"value":200}," residency_standard2_d_multisample_block_shape",{"type":13,"tag":45,"props":202,"children":203},{"style":52},[204],{"type":18,"value":166},{"type":13,"tag":45,"props":206,"children":207},{"style":145},[208],{"type":18,"value":171},{"type":13,"tag":45,"props":210,"children":211},{"style":52},[212],{"type":18,"value":176},{"type":13,"tag":45,"props":214,"children":215},{"style":145},[216],{"type":18,"value":181},{"type":13,"tag":45,"props":218,"children":219},{"style":63},[220],{"type":18,"value":186},{"type":13,"tag":45,"props":222,"children":223},{"style":189},[224],{"type":18,"value":225},"// Sparse resources support: GPU will access all 2D (multisample) sparse resources using the standard sparse image block shapes (based on pixel format)\n",{"type":13,"tag":45,"props":227,"children":228},{"class":47,"line":87},[229,234,238,242,246,250,254],{"type":13,"tag":45,"props":230,"children":231},{"style":63},[232],{"type":18,"value":233}," residency_standard3_d_block_shape",{"type":13,"tag":45,"props":235,"children":236},{"style":52},[237],{"type":18,"value":166},{"type":13,"tag":45,"props":239,"children":240},{"style":145},[241],{"type":18,"value":171},{"type":13,"tag":45,"props":243,"children":244},{"style":52},[245],{"type":18,"value":176},{"type":13,"tag":45,"props":247,"children":248},{"style":145},[249],{"type":18,"value":181},{"type":13,"tag":45,"props":251,"children":252},{"style":63},[253],{"type":18,"value":186},{"type":13,"tag":45,"props":255,"children":256},{"style":189},[257],{"type":18,"value":258},"// Sparse resources support: GPU will access all 3D sparse resources using the standard sparse image block shapes (based on pixel format)\n",{"type":13,"tag":45,"props":260,"children":261},{"class":47,"line":96},[262,267,271,275,279,283,287],{"type":13,"tag":45,"props":263,"children":264},{"style":63},[265],{"type":18,"value":266}," residency_aligned_mip_size",{"type":13,"tag":45,"props":268,"children":269},{"style":52},[270],{"type":18,"value":166},{"type":13,"tag":45,"props":272,"children":273},{"style":145},[274],{"type":18,"value":171},{"type":13,"tag":45,"props":276,"children":277},{"style":52},[278],{"type":18,"value":176},{"type":13,"tag":45,"props":280,"children":281},{"style":145},[282],{"type":18,"value":181},{"type":13,"tag":45,"props":284,"children":285},{"style":63},[286],{"type":18,"value":186},{"type":13,"tag":45,"props":288,"children":289},{"style":189},[290],{"type":18,"value":291},"// Sparse resources support: Images with mip level dimensions that are NOT a multiple of the sparse image block dimensions will be placed in the mip tail\n",{"type":13,"tag":45,"props":293,"children":294},{"class":47,"line":105},[295,300,304,308,312,316,320],{"type":13,"tag":45,"props":296,"children":297},{"style":63},[298],{"type":18,"value":299}," residency_non_resident_strict",{"type":13,"tag":45,"props":301,"children":302},{"style":52},[303],{"type":18,"value":166},{"type":13,"tag":45,"props":305,"children":306},{"style":145},[307],{"type":18,"value":171},{"type":13,"tag":45,"props":309,"children":310},{"style":52},[311],{"type":18,"value":176},{"type":13,"tag":45,"props":313,"children":314},{"style":145},[315],{"type":18,"value":181},{"type":13,"tag":45,"props":317,"children":318},{"style":63},[319],{"type":18,"value":186},{"type":13,"tag":45,"props":321,"children":322},{"style":189},[323],{"type":18,"value":324},"// Sparse resources support: GPU can consistently access non-resident regions of a resource, all reads return as if data is 0, writes are discarded\n",{"type":13,"tag":45,"props":326,"children":327},{"class":47,"line":114},[328],{"type":13,"tag":45,"props":329,"children":330},{"style":63},[331],{"type":18,"value":332},"}\n",{"type":13,"tag":334,"props":335,"children":336},"ul",{},[337,389,431,471,531],{"type":13,"tag":338,"props":339,"children":340},"li",{},[341,347,349,355,357,364,366,372,374,380,382,387],{"type":13,"tag":21,"props":342,"children":344},{"className":343},[],[345],{"type":18,"value":346},"residencyStandard2DBlockShape",{"type":18,"value":348},"\nis ",{"type":13,"tag":21,"props":350,"children":352},{"className":351},[],[353],{"type":18,"value":354},"VK_TRUE",{"type":18,"value":356}," if the physical device will access all single-sample 2D\nsparse resources using the standard sparse image block shapes (based on\nimage format), as described in the\n",{"type":13,"tag":358,"props":359,"children":361},"a",{"href":360},"/chapters/sparsememory#sparsememory-sparseblockshapessingle",[362],{"type":18,"value":363},"Standard Sparse Image Block\nShapes (Single Sample)",{"type":18,"value":365}," table.\nIf this property is not supported the value returned in the\n",{"type":13,"tag":21,"props":367,"children":369},{"className":368},[],[370],{"type":18,"value":371},"imageGranularity",{"type":18,"value":373}," member of the ",{"type":13,"tag":21,"props":375,"children":377},{"className":376},[],[378],{"type":18,"value":379},"VkSparseImageFormatProperties",{"type":18,"value":381},"\nstructure for single-sample 2D images is not ",{"type":13,"tag":383,"props":384,"children":386},"normative",{"type":385},"required",[],{"type":18,"value":388}," to match the\nstandard sparse image block dimensions listed in the table.",{"type":13,"tag":338,"props":390,"children":391},{},[392,398,399,404,406,412,414,419,420,425,427,430],{"type":13,"tag":21,"props":393,"children":395},{"className":394},[],[396],{"type":18,"value":397},"residencyStandard2DMultisampleBlockShape",{"type":18,"value":348},{"type":13,"tag":21,"props":400,"children":402},{"className":401},[],[403],{"type":18,"value":354},{"type":18,"value":405}," if the physical device will access all multisample 2D\nsparse resources using the standard sparse image block shapes (based on\nimage format), as described in the\n",{"type":13,"tag":358,"props":407,"children":409},{"href":408},"/chapters/sparsememory#sparsememory-sparseblockshapesmsaa",[410],{"type":18,"value":411},"Standard Sparse Image Block Shapes\n(MSAA)",{"type":18,"value":413}," table.\nIf this property is not supported, the value returned in the\n",{"type":13,"tag":21,"props":415,"children":417},{"className":416},[],[418],{"type":18,"value":371},{"type":18,"value":373},{"type":13,"tag":21,"props":421,"children":423},{"className":422},[],[424],{"type":18,"value":379},{"type":18,"value":426},"\nstructure for multisample 2D images is not ",{"type":13,"tag":383,"props":428,"children":429},{"type":385},[],{"type":18,"value":388},{"type":13,"tag":338,"props":432,"children":433},{},[434,440,441,446,448,452,453,458,459,464,466,469],{"type":13,"tag":21,"props":435,"children":437},{"className":436},[],[438],{"type":18,"value":439},"residencyStandard3DBlockShape",{"type":18,"value":348},{"type":13,"tag":21,"props":442,"children":444},{"className":443},[],[445],{"type":18,"value":354},{"type":18,"value":447}," if the physical device will access all 3D sparse\nresources using the standard sparse image block shapes (based on image\nformat), as described in the\n",{"type":13,"tag":358,"props":449,"children":450},{"href":360},[451],{"type":18,"value":363},{"type":18,"value":413},{"type":13,"tag":21,"props":454,"children":456},{"className":455},[],[457],{"type":18,"value":371},{"type":18,"value":373},{"type":13,"tag":21,"props":460,"children":462},{"className":461},[],[463],{"type":18,"value":379},{"type":18,"value":465},"\nstructure for 3D images is not ",{"type":13,"tag":383,"props":467,"children":468},{"type":385},[],{"type":18,"value":470}," to match the standard sparse\nimage block dimensions listed in the table.",{"type":13,"tag":338,"props":472,"children":473},{},[474,480,481,486,488,492,494,499,501,506,508,514,516,522,524,529],{"type":13,"tag":21,"props":475,"children":477},{"className":476},[],[478],{"type":18,"value":479},"residencyAlignedMipSize",{"type":18,"value":348},{"type":13,"tag":21,"props":482,"children":484},{"className":483},[],[485],{"type":18,"value":354},{"type":18,"value":487}," if images with mip level dimensions that are not\ninteger multiples of the corresponding dimensions of the sparse image\nblock ",{"type":13,"tag":383,"props":489,"children":491},{"type":490},"may",[],{"type":18,"value":493}," be placed in the mip tail.\nIf this property is not reported, only mip levels with dimensions\nsmaller than the ",{"type":13,"tag":21,"props":495,"children":497},{"className":496},[],[498],{"type":18,"value":371},{"type":18,"value":500}," member of the\n",{"type":13,"tag":21,"props":502,"children":504},{"className":503},[],[505],{"type":18,"value":379},{"type":18,"value":507}," structure will be placed in the mip\ntail.\nIf this property is reported the implementation is allowed to return\n",{"type":13,"tag":21,"props":509,"children":511},{"className":510},[],[512],{"type":18,"value":513},"VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT",{"type":18,"value":515}," in the ",{"type":13,"tag":21,"props":517,"children":519},{"className":518},[],[520],{"type":18,"value":521},"flags",{"type":18,"value":523},"\nmember of ",{"type":13,"tag":21,"props":525,"children":527},{"className":526},[],[528],{"type":18,"value":379},{"type":18,"value":530},", indicating that mip level\ndimensions that are not integer multiples of the corresponding\ndimensions of the sparse image block will be placed in the mip tail.",{"type":13,"tag":338,"props":532,"children":533},{},[534,540,542,546,548,553],{"type":13,"tag":21,"props":535,"children":537},{"className":536},[],[538],{"type":18,"value":539},"residencyNonResidentStrict",{"type":18,"value":541},"\nspecifies whether the physical device ",{"type":13,"tag":383,"props":543,"children":545},{"type":544},"can",[],{"type":18,"value":547}," consistently access\nnon-resident regions of a resource.\nIf this property is ",{"type":13,"tag":21,"props":549,"children":551},{"className":550},[],[552],{"type":18,"value":354},{"type":18,"value":554},", access to non-resident regions of\nresources will be guaranteed to return values as if the resource was\npopulated with 0; writes to non-resident regions will be discarded.",{"type":13,"tag":556,"props":557,"children":558},"style",{},[559],{"type":18,"value":560},"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":562},[],"markdown",1725732575084]