[{"data":1,"prerenderedAt":630},["ShallowReactive",2],{"DIP3C0C4FF":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":629,"_id":4},"VkSparseImageOpaqueMemoryBindInfo","Structure specifying sparse image opaque memory bind information","VK_VERSION_1_0","structs",[],{"type":10,"children":11,"toc":627},"root",[12,37,261,328,492,537,621],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,27,29,35],{"type":18,"value":19},"text","Memory is bound to opaque regions of ",{"type":13,"tag":21,"props":22,"children":24},"code",{"className":23},[],[25],{"type":18,"value":26},"VkImage",{"type":18,"value":28}," objects created with the\n",{"type":13,"tag":21,"props":30,"children":32},{"className":31},[],[33],{"type":18,"value":34},"VK_IMAGE_CREATE_SPARSE_BINDING_BIT",{"type":18,"value":36}," flag using the following structure:",{"type":13,"tag":38,"props":39,"children":40},"code-group",{},[41,132],{"type":13,"tag":42,"props":43,"children":49},"pre",{"className":44,"code":45,"filename":46,"language":47,"meta":48,"style":48},"language-c shiki shiki-themes github-light-default github-dark-default","typedef struct VkSparseImageOpaqueMemoryBindInfo {\n VkImage image;\n uint32_t bindCount;\n const VkSparseMemoryBind* pBinds;\n} VkSparseImageOpaqueMemoryBindInfo;\n","C","c","",[50],{"type":13,"tag":21,"props":51,"children":52},{"__ignoreMap":48},[53,76,85,99,123],{"type":13,"tag":54,"props":55,"children":58},"span",{"class":56,"line":57},"line",1,[59,65,70],{"type":13,"tag":54,"props":60,"children":62},{"style":61},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[63],{"type":18,"value":64},"typedef",{"type":13,"tag":54,"props":66,"children":67},{"style":61},[68],{"type":18,"value":69}," struct",{"type":13,"tag":54,"props":71,"children":73},{"style":72},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[74],{"type":18,"value":75}," VkSparseImageOpaqueMemoryBindInfo {\n",{"type":13,"tag":54,"props":77,"children":79},{"class":56,"line":78},2,[80],{"type":13,"tag":54,"props":81,"children":82},{"style":72},[83],{"type":18,"value":84}," VkImage image;\n",{"type":13,"tag":54,"props":86,"children":88},{"class":56,"line":87},3,[89,94],{"type":13,"tag":54,"props":90,"children":91},{"style":61},[92],{"type":18,"value":93}," uint32_t",{"type":13,"tag":54,"props":95,"children":96},{"style":72},[97],{"type":18,"value":98}," bindCount;\n",{"type":13,"tag":54,"props":100,"children":102},{"class":56,"line":101},4,[103,108,113,118],{"type":13,"tag":54,"props":104,"children":105},{"style":61},[106],{"type":18,"value":107}," const",{"type":13,"tag":54,"props":109,"children":110},{"style":72},[111],{"type":18,"value":112}," VkSparseMemoryBind",{"type":13,"tag":54,"props":114,"children":115},{"style":61},[116],{"type":18,"value":117},"*",{"type":13,"tag":54,"props":119,"children":120},{"style":72},[121],{"type":18,"value":122}," pBinds;\n",{"type":13,"tag":54,"props":124,"children":126},{"class":56,"line":125},5,[127],{"type":13,"tag":54,"props":128,"children":129},{"style":72},[130],{"type":18,"value":131},"} VkSparseImageOpaqueMemoryBindInfo;\n",{"type":13,"tag":42,"props":133,"children":138},{"className":134,"code":135,"filename":136,"language":137,"meta":48,"style":48},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct SparseImageOpaqueMemoryBindInfo {\n image: vk::Image,\n bind_count: u32,\n p_binds: *const vk::SparseMemoryBind,\n}\n","Rust","rs",[139],{"type":13,"tag":21,"props":140,"children":141},{"__ignoreMap":48},[142,165,198,219,253],{"type":13,"tag":54,"props":143,"children":144},{"class":56,"line":57},[145,150,154,160],{"type":13,"tag":54,"props":146,"children":147},{"style":61},[148],{"type":18,"value":149},"pub",{"type":13,"tag":54,"props":151,"children":152},{"style":61},[153],{"type":18,"value":69},{"type":13,"tag":54,"props":155,"children":157},{"style":156},"--shiki-default:#953800;--shiki-dark:#FFA657",[158],{"type":18,"value":159}," SparseImageOpaqueMemoryBindInfo",{"type":13,"tag":54,"props":161,"children":162},{"style":72},[163],{"type":18,"value":164}," {\n",{"type":13,"tag":54,"props":166,"children":167},{"class":56,"line":78},[168,173,178,183,188,193],{"type":13,"tag":54,"props":169,"children":170},{"style":72},[171],{"type":18,"value":172}," image",{"type":13,"tag":54,"props":174,"children":175},{"style":61},[176],{"type":18,"value":177},":",{"type":13,"tag":54,"props":179,"children":180},{"style":156},[181],{"type":18,"value":182}," vk",{"type":13,"tag":54,"props":184,"children":185},{"style":61},[186],{"type":18,"value":187},"::",{"type":13,"tag":54,"props":189,"children":190},{"style":156},[191],{"type":18,"value":192},"Image",{"type":13,"tag":54,"props":194,"children":195},{"style":72},[196],{"type":18,"value":197},",\n",{"type":13,"tag":54,"props":199,"children":200},{"class":56,"line":87},[201,206,210,215],{"type":13,"tag":54,"props":202,"children":203},{"style":72},[204],{"type":18,"value":205}," bind_count",{"type":13,"tag":54,"props":207,"children":208},{"style":61},[209],{"type":18,"value":177},{"type":13,"tag":54,"props":211,"children":212},{"style":156},[213],{"type":18,"value":214}," u32",{"type":13,"tag":54,"props":216,"children":217},{"style":72},[218],{"type":18,"value":197},{"type":13,"tag":54,"props":220,"children":221},{"class":56,"line":101},[222,227,231,236,240,244,249],{"type":13,"tag":54,"props":223,"children":224},{"style":72},[225],{"type":18,"value":226}," p_binds",{"type":13,"tag":54,"props":228,"children":229},{"style":61},[230],{"type":18,"value":177},{"type":13,"tag":54,"props":232,"children":233},{"style":61},[234],{"type":18,"value":235}," *const",{"type":13,"tag":54,"props":237,"children":238},{"style":156},[239],{"type":18,"value":182},{"type":13,"tag":54,"props":241,"children":242},{"style":61},[243],{"type":18,"value":187},{"type":13,"tag":54,"props":245,"children":246},{"style":156},[247],{"type":18,"value":248},"SparseMemoryBind",{"type":13,"tag":54,"props":250,"children":251},{"style":72},[252],{"type":18,"value":197},{"type":13,"tag":54,"props":254,"children":255},{"class":56,"line":125},[256],{"type":13,"tag":54,"props":257,"children":258},{"style":72},[259],{"type":18,"value":260},"}\n",{"type":13,"tag":262,"props":263,"children":264},"ul",{},[265,285,312],{"type":13,"tag":266,"props":267,"children":268},"li",{},[269,275,277,283],{"type":13,"tag":21,"props":270,"children":272},{"className":271},[],[273],{"type":18,"value":274},"image",{"type":18,"value":276}," is the ",{"type":13,"tag":278,"props":279,"children":281},"a",{"href":280},"/man/VkImage",[282],{"type":18,"value":26},{"type":18,"value":284}," object to be bound.",{"type":13,"tag":266,"props":286,"children":287},{},[288,294,296,302,304,310],{"type":13,"tag":21,"props":289,"children":291},{"className":290},[],[292],{"type":18,"value":293},"bindCount",{"type":18,"value":295}," is the number of ",{"type":13,"tag":278,"props":297,"children":299},{"href":298},"/man/VkSparseMemoryBind",[300],{"type":18,"value":301},"VkSparseMemoryBind",{"type":18,"value":303}," structures in\nthe ",{"type":13,"tag":21,"props":305,"children":307},{"className":306},[],[308],{"type":18,"value":309},"pBinds",{"type":18,"value":311}," array.",{"type":13,"tag":266,"props":313,"children":314},{},[315,320,322,326],{"type":13,"tag":21,"props":316,"children":318},{"className":317},[],[319],{"type":18,"value":309},{"type":18,"value":321}," is a pointer to an array of ",{"type":13,"tag":278,"props":323,"children":324},{"href":298},[325],{"type":18,"value":301},{"type":18,"value":327},"\nstructures.",{"type":13,"tag":329,"props":330,"children":331},"note",{},[332,344,409],{"type":13,"tag":14,"props":333,"children":334},{},[335,337,342],{"type":18,"value":336},"This structure is normally used to bind memory to fully-resident sparse\nimages or for mip tail regions of partially resident images.\nHowever, it ",{"type":13,"tag":338,"props":339,"children":341},"normative",{"type":340},"can",[],{"type":18,"value":343}," also be used to bind memory for the entire binding range of\npartially resident images.",{"type":13,"tag":14,"props":345,"children":346},{},[347,349,354,356,362,364,369,371,377,379,385,387,393,394,400,402,407],{"type":18,"value":348},"If the ",{"type":13,"tag":21,"props":350,"children":352},{"className":351},[],[353],{"type":18,"value":309},{"type":18,"value":355},"[i].flags of an element ",{"type":13,"tag":357,"props":358,"children":359},"em",{},[360],{"type":18,"value":361},"i",{"type":18,"value":363}," of ",{"type":13,"tag":21,"props":365,"children":367},{"className":366},[],[368],{"type":18,"value":309},{"type":18,"value":370}," does not\ncontain ",{"type":13,"tag":21,"props":372,"children":374},{"className":373},[],[375],{"type":18,"value":376},"VK_SPARSE_MEMORY_BIND_METADATA_BIT",{"type":18,"value":378},", the ",{"type":13,"tag":21,"props":380,"children":382},{"className":381},[],[383],{"type":18,"value":384},"resourceOffset",{"type":18,"value":386},"\nis in the range [0, ",{"type":13,"tag":278,"props":388,"children":390},{"href":389},"/man/VkMemoryRequirements",[391],{"type":18,"value":392},"VkMemoryRequirements",{"type":18,"value":187},{"type":13,"tag":21,"props":395,"children":397},{"className":396},[],[398],{"type":18,"value":399},"size",{"type":18,"value":401},"), This\nrange includes data from all aspects of the image, including metadata.\nFor most implementations this will probably mean that the\n",{"type":13,"tag":21,"props":403,"children":405},{"className":404},[],[406],{"type":18,"value":384},{"type":18,"value":408}," is a simple device address offset within the resource.\nIt is possible for an application to bind a range of memory that includes\nboth resource data and metadata.\nHowever, the application would not know what part of the image the memory is\nused for, or if any range is being used for metadata.",{"type":13,"tag":14,"props":410,"children":411},{},[412,413,418,419,423,424,429,431,436,438,442,444,449,451,455,457,462,464,470,471,476,478,484,486,490],{"type":18,"value":348},{"type":13,"tag":21,"props":414,"children":416},{"className":415},[],[417],{"type":18,"value":309},{"type":18,"value":355},{"type":13,"tag":357,"props":420,"children":421},{},[422],{"type":18,"value":361},{"type":18,"value":363},{"type":13,"tag":21,"props":425,"children":427},{"className":426},[],[428],{"type":18,"value":309},{"type":18,"value":430}," contains\n",{"type":13,"tag":21,"props":432,"children":434},{"className":433},[],[435],{"type":18,"value":376},{"type":18,"value":437},", the binding range specified ",{"type":13,"tag":338,"props":439,"children":441},{"type":440},"must",[],{"type":18,"value":443},"\nbe within the mip tail region of the metadata aspect.\nIn this case the ",{"type":13,"tag":21,"props":445,"children":447},{"className":446},[],[448],{"type":18,"value":384},{"type":18,"value":450}," is not ",{"type":13,"tag":338,"props":452,"children":454},{"type":453},"required",[],{"type":18,"value":456}," to be a simple device\naddress offset within the resource.\nHowever, it ",{"type":13,"tag":357,"props":458,"children":459},{},[460],{"type":18,"value":461},"is",{"type":18,"value":463}," defined to be within [",{"type":13,"tag":21,"props":465,"children":467},{"className":466},[],[468],{"type":18,"value":469},"imageMipTailOffset",{"type":18,"value":197},{"type":13,"tag":21,"props":472,"children":474},{"className":473},[],[475],{"type":18,"value":469},{"type":18,"value":477}," + ",{"type":13,"tag":21,"props":479,"children":481},{"className":480},[],[482],{"type":18,"value":483},"imageMipTailSize",{"type":18,"value":485},") for the metadata\naspect.\nSee ",{"type":13,"tag":278,"props":487,"children":488},{"href":298},[489],{"type":18,"value":301},{"type":18,"value":491}," for the full constraints on binding region with\nthis flag present.",{"type":13,"tag":493,"props":494,"children":496},"validity-group",{"name":495},"Valid Usage",[497],{"type":13,"tag":498,"props":499,"children":501},"validity-field",{"name":500},"VUID-VkSparseImageOpaqueMemoryBindInfo-pBinds-01103",[502],{"type":13,"tag":14,"props":503,"children":504},{},[505,506,512,514,519,520,525,527,530,532],{"type":18,"value":348},{"type":13,"tag":21,"props":507,"children":509},{"className":508},[],[510],{"type":18,"value":511},"flags",{"type":18,"value":513}," member of any element of ",{"type":13,"tag":21,"props":515,"children":517},{"className":516},[],[518],{"type":18,"value":309},{"type":18,"value":430},{"type":13,"tag":21,"props":521,"children":523},{"className":522},[],[524],{"type":18,"value":376},{"type":18,"value":526},", the binding range defined\n",{"type":13,"tag":338,"props":528,"children":529},{"type":440},[],{"type":18,"value":531}," be within the mip tail region of the metadata aspect of\n",{"type":13,"tag":21,"props":533,"children":535},{"className":534},[],[536],{"type":18,"value":274},{"type":13,"tag":493,"props":538,"children":540},{"name":539},"Valid Usage (Implicit)",[541,566,597],{"type":13,"tag":498,"props":542,"children":544},{"name":543},"VUID-VkSparseImageOpaqueMemoryBindInfo-image-parameter",[545],{"type":13,"tag":14,"props":546,"children":547},{},[548,553,555,558,560,564],{"type":13,"tag":21,"props":549,"children":551},{"className":550},[],[552],{"type":18,"value":274},{"type":18,"value":554}," ",{"type":13,"tag":338,"props":556,"children":557},{"type":440},[],{"type":18,"value":559}," be a valid ",{"type":13,"tag":278,"props":561,"children":562},{"href":280},[563],{"type":18,"value":26},{"type":18,"value":565}," handle",{"type":13,"tag":498,"props":567,"children":569},{"name":568},"VUID-VkSparseImageOpaqueMemoryBindInfo-pBinds-parameter",[570],{"type":13,"tag":14,"props":571,"children":572},{},[573,578,579,582,584,589,591,595],{"type":13,"tag":21,"props":574,"children":576},{"className":575},[],[577],{"type":18,"value":309},{"type":18,"value":554},{"type":13,"tag":338,"props":580,"children":581},{"type":440},[],{"type":18,"value":583}," be a valid pointer to an array of ",{"type":13,"tag":21,"props":585,"children":587},{"className":586},[],[588],{"type":18,"value":293},{"type":18,"value":590}," valid ",{"type":13,"tag":278,"props":592,"children":593},{"href":298},[594],{"type":18,"value":301},{"type":18,"value":596}," structures",{"type":13,"tag":498,"props":598,"children":600},{"name":599},"VUID-VkSparseImageOpaqueMemoryBindInfo-bindCount-arraylength",[601],{"type":13,"tag":14,"props":602,"children":603},{},[604,609,610,613,615],{"type":13,"tag":21,"props":605,"children":607},{"className":606},[],[608],{"type":18,"value":293},{"type":18,"value":554},{"type":13,"tag":338,"props":611,"children":612},{"type":440},[],{"type":18,"value":614}," be greater than ",{"type":13,"tag":21,"props":616,"children":618},{"className":617},[],[619],{"type":18,"value":620},"0",{"type":13,"tag":622,"props":623,"children":624},"style",{},[625],{"type":18,"value":626},"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":48,"searchDepth":78,"depth":78,"links":628},[],"markdown",1729612481594]