[{"data":1,"prerenderedAt":1345},["ShallowReactive",2],{"$fZjphDO2ZwmfZBsqU3qiQceV8pKyCHqpLp5uzstU9wrg":3},{"title":4,"description":5,"parent":6,"cmd_buf_level":7,"render_pass_scope":10,"supported_queue_types":11,"tasks":13,"type":15,"xrefs":16,"body":17,"_type":1344,"_id":4},"vkCmdUpdateMemoryKHR","Update the content of device memory from host memory","VK_KHR_device_address_commands",[8,9],"primary","secondary","outside",[12],"VK_QUEUE_TRANSFER_BIT",[14],"action","protos",[],{"type":18,"children":19,"toc":1342},"root",[20,28,361,454,474,491,1062,1291,1336],{"type":21,"tag":22,"props":23,"children":24},"element","p",{},[25],{"type":26,"value":27},"text","To update device memory inline in a command buffer, call:",{"type":21,"tag":29,"props":30,"children":31},"code-group",{},[32,176],{"type":21,"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","void vkCmdUpdateMemoryKHR(\n VkCommandBuffer commandBuffer,\n const VkDeviceAddressRangeKHR* pDstRange,\n VkAddressCommandFlagsKHR dstFlags,\n VkDeviceSize dataSize,\n const void* pData);\n","C","c","",[41],{"type":21,"tag":42,"props":43,"children":44},"code",{"__ignoreMap":39},[45,69,89,117,135,153],{"type":21,"tag":46,"props":47,"children":50},"span",{"class":48,"line":49},"line",1,[51,57,63],{"type":21,"tag":46,"props":52,"children":54},{"style":53},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[55],{"type":26,"value":56},"void",{"type":21,"tag":46,"props":58,"children":60},{"style":59},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[61],{"type":26,"value":62}," vkCmdUpdateMemoryKHR",{"type":21,"tag":46,"props":64,"children":66},{"style":65},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[67],{"type":26,"value":68},"(\n",{"type":21,"tag":46,"props":70,"children":72},{"class":48,"line":71},2,[73,78,84],{"type":21,"tag":46,"props":74,"children":75},{"style":65},[76],{"type":26,"value":77}," VkCommandBuffer ",{"type":21,"tag":46,"props":79,"children":81},{"style":80},"--shiki-default:#953800;--shiki-dark:#FFA657",[82],{"type":26,"value":83},"commandBuffer",{"type":21,"tag":46,"props":85,"children":86},{"style":65},[87],{"type":26,"value":88},",\n",{"type":21,"tag":46,"props":90,"children":92},{"class":48,"line":91},3,[93,98,103,108,113],{"type":21,"tag":46,"props":94,"children":95},{"style":53},[96],{"type":26,"value":97}," const",{"type":21,"tag":46,"props":99,"children":100},{"style":65},[101],{"type":26,"value":102}," VkDeviceAddressRangeKHR",{"type":21,"tag":46,"props":104,"children":105},{"style":53},[106],{"type":26,"value":107},"*",{"type":21,"tag":46,"props":109,"children":110},{"style":80},[111],{"type":26,"value":112}," pDstRange",{"type":21,"tag":46,"props":114,"children":115},{"style":65},[116],{"type":26,"value":88},{"type":21,"tag":46,"props":118,"children":120},{"class":48,"line":119},4,[121,126,131],{"type":21,"tag":46,"props":122,"children":123},{"style":65},[124],{"type":26,"value":125}," VkAddressCommandFlagsKHR ",{"type":21,"tag":46,"props":127,"children":128},{"style":80},[129],{"type":26,"value":130},"dstFlags",{"type":21,"tag":46,"props":132,"children":133},{"style":65},[134],{"type":26,"value":88},{"type":21,"tag":46,"props":136,"children":138},{"class":48,"line":137},5,[139,144,149],{"type":21,"tag":46,"props":140,"children":141},{"style":65},[142],{"type":26,"value":143}," VkDeviceSize ",{"type":21,"tag":46,"props":145,"children":146},{"style":80},[147],{"type":26,"value":148},"dataSize",{"type":21,"tag":46,"props":150,"children":151},{"style":65},[152],{"type":26,"value":88},{"type":21,"tag":46,"props":154,"children":156},{"class":48,"line":155},6,[157,161,166,171],{"type":21,"tag":46,"props":158,"children":159},{"style":53},[160],{"type":26,"value":97},{"type":21,"tag":46,"props":162,"children":163},{"style":53},[164],{"type":26,"value":165}," void*",{"type":21,"tag":46,"props":167,"children":168},{"style":80},[169],{"type":26,"value":170}," pData",{"type":21,"tag":46,"props":172,"children":173},{"style":65},[174],{"type":26,"value":175},");\n",{"type":21,"tag":33,"props":177,"children":182},{"className":178,"code":179,"filename":180,"language":181,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn cmd_update_memory_khr(\n command_buffer: vk::CommandBuffer,\n p_dst_range: *const vk::DeviceAddressRangeKHR,\n dst_flags: vk::AddressCommandFlagsKHR,\n data_size: vk::DeviceSize,\n p_data: *const c_void,\n);\n","Rust","rs",[183],{"type":21,"tag":42,"props":184,"children":185},{"__ignoreMap":39},[186,208,240,274,303,332,353],{"type":21,"tag":46,"props":187,"children":188},{"class":48,"line":49},[189,194,199,204],{"type":21,"tag":46,"props":190,"children":191},{"style":53},[192],{"type":26,"value":193},"pub",{"type":21,"tag":46,"props":195,"children":196},{"style":53},[197],{"type":26,"value":198}," fn",{"type":21,"tag":46,"props":200,"children":201},{"style":59},[202],{"type":26,"value":203}," cmd_update_memory_khr",{"type":21,"tag":46,"props":205,"children":206},{"style":65},[207],{"type":26,"value":68},{"type":21,"tag":46,"props":209,"children":210},{"class":48,"line":71},[211,216,221,226,231,236],{"type":21,"tag":46,"props":212,"children":213},{"style":65},[214],{"type":26,"value":215}," command_buffer",{"type":21,"tag":46,"props":217,"children":218},{"style":53},[219],{"type":26,"value":220},":",{"type":21,"tag":46,"props":222,"children":223},{"style":80},[224],{"type":26,"value":225}," vk",{"type":21,"tag":46,"props":227,"children":228},{"style":53},[229],{"type":26,"value":230},"::",{"type":21,"tag":46,"props":232,"children":233},{"style":80},[234],{"type":26,"value":235},"CommandBuffer",{"type":21,"tag":46,"props":237,"children":238},{"style":65},[239],{"type":26,"value":88},{"type":21,"tag":46,"props":241,"children":242},{"class":48,"line":91},[243,248,252,257,261,265,270],{"type":21,"tag":46,"props":244,"children":245},{"style":65},[246],{"type":26,"value":247}," p_dst_range",{"type":21,"tag":46,"props":249,"children":250},{"style":53},[251],{"type":26,"value":220},{"type":21,"tag":46,"props":253,"children":254},{"style":53},[255],{"type":26,"value":256}," *const",{"type":21,"tag":46,"props":258,"children":259},{"style":80},[260],{"type":26,"value":225},{"type":21,"tag":46,"props":262,"children":263},{"style":53},[264],{"type":26,"value":230},{"type":21,"tag":46,"props":266,"children":267},{"style":80},[268],{"type":26,"value":269},"DeviceAddressRangeKHR",{"type":21,"tag":46,"props":271,"children":272},{"style":65},[273],{"type":26,"value":88},{"type":21,"tag":46,"props":275,"children":276},{"class":48,"line":119},[277,282,286,290,294,299],{"type":21,"tag":46,"props":278,"children":279},{"style":65},[280],{"type":26,"value":281}," dst_flags",{"type":21,"tag":46,"props":283,"children":284},{"style":53},[285],{"type":26,"value":220},{"type":21,"tag":46,"props":287,"children":288},{"style":80},[289],{"type":26,"value":225},{"type":21,"tag":46,"props":291,"children":292},{"style":53},[293],{"type":26,"value":230},{"type":21,"tag":46,"props":295,"children":296},{"style":80},[297],{"type":26,"value":298},"AddressCommandFlagsKHR",{"type":21,"tag":46,"props":300,"children":301},{"style":65},[302],{"type":26,"value":88},{"type":21,"tag":46,"props":304,"children":305},{"class":48,"line":137},[306,311,315,319,323,328],{"type":21,"tag":46,"props":307,"children":308},{"style":65},[309],{"type":26,"value":310}," data_size",{"type":21,"tag":46,"props":312,"children":313},{"style":53},[314],{"type":26,"value":220},{"type":21,"tag":46,"props":316,"children":317},{"style":80},[318],{"type":26,"value":225},{"type":21,"tag":46,"props":320,"children":321},{"style":53},[322],{"type":26,"value":230},{"type":21,"tag":46,"props":324,"children":325},{"style":80},[326],{"type":26,"value":327},"DeviceSize",{"type":21,"tag":46,"props":329,"children":330},{"style":65},[331],{"type":26,"value":88},{"type":21,"tag":46,"props":333,"children":334},{"class":48,"line":155},[335,340,344,348],{"type":21,"tag":46,"props":336,"children":337},{"style":65},[338],{"type":26,"value":339}," p_data",{"type":21,"tag":46,"props":341,"children":342},{"style":53},[343],{"type":26,"value":220},{"type":21,"tag":46,"props":345,"children":346},{"style":53},[347],{"type":26,"value":256},{"type":21,"tag":46,"props":349,"children":350},{"style":65},[351],{"type":26,"value":352}," c_void,\n",{"type":21,"tag":46,"props":354,"children":356},{"class":48,"line":355},7,[357],{"type":21,"tag":46,"props":358,"children":359},{"style":65},[360],{"type":26,"value":175},{"type":21,"tag":362,"props":363,"children":364},"ul",{},[365,376,396,414,431],{"type":21,"tag":366,"props":367,"children":368},"li",{},[369,374],{"type":21,"tag":42,"props":370,"children":372},{"className":371},[],[373],{"type":26,"value":83},{"type":26,"value":375}," is the command buffer into which the command will be\nrecorded.",{"type":21,"tag":366,"props":377,"children":378},{},[379,385,387,394],{"type":21,"tag":42,"props":380,"children":382},{"className":381},[],[383],{"type":26,"value":384},"pDstRange",{"type":26,"value":386}," is a pointer to the ",{"type":21,"tag":388,"props":389,"children":391},"a",{"href":390},"/man/VkDeviceAddressRangeKHR",[392],{"type":26,"value":393},"VkDeviceAddressRangeKHR",{"type":26,"value":395},"\nselecting the memory range to be updated.",{"type":21,"tag":366,"props":397,"children":398},{},[399,404,406,412],{"type":21,"tag":42,"props":400,"children":402},{"className":401},[],[403],{"type":26,"value":130},{"type":26,"value":405}," is a ",{"type":21,"tag":388,"props":407,"children":409},{"href":408},"/man/VkAddressCommandFlagsKHR",[410],{"type":26,"value":411},"VkAddressCommandFlagsKHR",{"type":26,"value":413}," value defining the\ncopy flags for the destination address range.",{"type":21,"tag":366,"props":415,"children":416},{},[417,422,424,429],{"type":21,"tag":42,"props":418,"children":420},{"className":419},[],[421],{"type":26,"value":148},{"type":26,"value":423}," is the number of bytes to update, and ",{"type":21,"tag":425,"props":426,"children":428},"normative",{"type":427},"must",[],{"type":26,"value":430}," be a multiple\nof 4.",{"type":21,"tag":366,"props":432,"children":433},{},[434,440,442,445,447,452],{"type":21,"tag":42,"props":435,"children":437},{"className":436},[],[438],{"type":26,"value":439},"pData",{"type":26,"value":441}," is a pointer to the source data for the buffer update, and\n",{"type":21,"tag":425,"props":443,"children":444},{"type":427},[],{"type":26,"value":446}," be at least ",{"type":21,"tag":42,"props":448,"children":450},{"className":449},[],[451],{"type":26,"value":148},{"type":26,"value":453}," bytes in size.",{"type":21,"tag":22,"props":455,"children":456},{},[457,459,464,466,472],{"type":26,"value":458},"The source data is copied from ",{"type":21,"tag":42,"props":460,"children":462},{"className":461},[],[463],{"type":26,"value":439},{"type":26,"value":465}," to the command buffer when the\ncommand is called, and then copied to ",{"type":21,"tag":42,"props":467,"children":469},{"className":468},[],[470],{"type":26,"value":471},"dstRange",{"type":26,"value":473}," when the command is\nexecuted on a device.",{"type":21,"tag":475,"props":476,"children":477},"note",{},[478],{"type":21,"tag":22,"props":479,"children":480},{},[481,483,489],{"type":26,"value":482},"Due to the data being copied into command buffers, ",{"type":21,"tag":388,"props":484,"children":486},{"href":485},"/chapters/copies#copies-memory-ranges",[487],{"type":26,"value":488},"memory range copies",{"type":26,"value":490}," are recommended for larger data transfers, to avoid\nexcessive memory consumption.",{"type":21,"tag":492,"props":493,"children":495},"validity-group",{"name":494},"Valid Usage",[496,531,584,629,661,716,758,788,835,875,904,923,942,965,982,1022],{"type":21,"tag":497,"props":498,"children":500},"validity-field",{"name":499},"VUID-vkCmdUpdateMemoryKHR-pDstRange-13097",[501],{"type":21,"tag":22,"props":502,"children":503},{},[504,506,511,513,518,520,523,525],{"type":26,"value":505},"If the range specified by ",{"type":21,"tag":42,"props":507,"children":509},{"className":508},[],[510],{"type":26,"value":384},{"type":26,"value":512}," is not bound completely\nto memory when accessed, ",{"type":21,"tag":42,"props":514,"children":516},{"className":515},[],[517],{"type":26,"value":130},{"type":26,"value":519}," ",{"type":21,"tag":425,"props":521,"children":522},{"type":427},[],{"type":26,"value":524}," not include\n",{"type":21,"tag":42,"props":526,"children":528},{"className":527},[],[529],{"type":26,"value":530},"VK_ADDRESS_COMMAND_FULLY_BOUND_BIT_KHR",{"type":21,"tag":497,"props":532,"children":534},{"name":533},"VUID-vkCmdUpdateMemoryKHR-pDstRange-13098",[535],{"type":21,"tag":22,"props":536,"children":537},{},[538,540,545,547,553,555,565,567,572,573,576,578],{"type":26,"value":539},"If the buffer from which the range specified by ",{"type":21,"tag":42,"props":541,"children":543},{"className":542},[],[544],{"type":26,"value":384},{"type":26,"value":546}," was\ncreated with ",{"type":21,"tag":42,"props":548,"children":550},{"className":549},[],[551],{"type":26,"value":552},"VK_BUFFER_CREATE_PROTECTED_BIT",{"type":26,"value":554},", and\n",{"type":21,"tag":388,"props":556,"children":558},{"href":557},"/man/VkPhysicalDeviceVulkan11Properties#limits-protectedNoFault",[559],{"type":21,"tag":42,"props":560,"children":562},{"className":561},[],[563],{"type":26,"value":564},"protectedNoFault",{"type":26,"value":566}," is not supported,\n",{"type":21,"tag":42,"props":568,"children":570},{"className":569},[],[571],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":574,"children":575},{"type":427},[],{"type":26,"value":577}," include\n",{"type":21,"tag":42,"props":579,"children":581},{"className":580},[],[582],{"type":26,"value":583},"VK_ADDRESS_COMMAND_PROTECTED_BIT_KHR",{"type":21,"tag":497,"props":585,"children":587},{"name":586},"VUID-vkCmdUpdateMemoryKHR-pDstRange-13099",[588],{"type":21,"tag":22,"props":589,"children":590},{},[591,592,597,599,604,605,613,614,619,620,623,624],{"type":26,"value":539},{"type":21,"tag":42,"props":593,"children":595},{"className":594},[],[596],{"type":26,"value":384},{"type":26,"value":598}," was\ncreated without ",{"type":21,"tag":42,"props":600,"children":602},{"className":601},[],[603],{"type":26,"value":552},{"type":26,"value":554},{"type":21,"tag":388,"props":606,"children":607},{"href":557},[608],{"type":21,"tag":42,"props":609,"children":611},{"className":610},[],[612],{"type":26,"value":564},{"type":26,"value":566},{"type":21,"tag":42,"props":615,"children":617},{"className":616},[],[618],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":621,"children":622},{"type":427},[],{"type":26,"value":524},{"type":21,"tag":42,"props":625,"children":627},{"className":626},[],[628],{"type":26,"value":583},{"type":21,"tag":497,"props":630,"children":632},{"name":631},"VUID-vkCmdUpdateMemoryKHR-dstFlags-13100",[633],{"type":21,"tag":22,"props":634,"children":635},{},[636,641,642,645,647,653,655],{"type":21,"tag":42,"props":637,"children":639},{"className":638},[],[640],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":643,"children":644},{"type":427},[],{"type":26,"value":646}," not include both\n",{"type":21,"tag":42,"props":648,"children":650},{"className":649},[],[651],{"type":26,"value":652},"VK_ADDRESS_COMMAND_STORAGE_BUFFER_USAGE_BIT_KHR",{"type":26,"value":654}," and\n",{"type":21,"tag":42,"props":656,"children":658},{"className":657},[],[659],{"type":26,"value":660},"VK_ADDRESS_COMMAND_UNKNOWN_STORAGE_BUFFER_USAGE_BIT_KHR",{"type":21,"tag":497,"props":662,"children":664},{"name":663},"VUID-vkCmdUpdateMemoryKHR-pDstRange-13122",[665],{"type":21,"tag":22,"props":666,"children":667},{},[668,670,676,678,683,685,691,693,698,699,702,704,709,711],{"type":26,"value":669},"If any buffer, which is bound to a range of ",{"type":21,"tag":388,"props":671,"children":673},{"href":672},"/man/VkDeviceMemory",[674],{"type":26,"value":675},"VkDeviceMemory",{"type":26,"value":677}," that\noverlaps the range backing ",{"type":21,"tag":42,"props":679,"children":681},{"className":680},[],[682],{"type":26,"value":384},{"type":26,"value":684},", was created with\n",{"type":21,"tag":42,"props":686,"children":688},{"className":687},[],[689],{"type":26,"value":690},"VK_BUFFER_USAGE_STORAGE_BUFFER_BIT",{"type":26,"value":692},", ",{"type":21,"tag":42,"props":694,"children":696},{"className":695},[],[697],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":700,"children":701},{"type":427},[],{"type":26,"value":703},"\ninclude ",{"type":21,"tag":42,"props":705,"children":707},{"className":706},[],[708],{"type":26,"value":652},{"type":26,"value":710}," or\n",{"type":21,"tag":42,"props":712,"children":714},{"className":713},[],[715],{"type":26,"value":660},{"type":21,"tag":497,"props":717,"children":719},{"name":718},"VUID-vkCmdUpdateMemoryKHR-pDstRange-13123",[720],{"type":21,"tag":22,"props":721,"children":722},{},[723,724,728,729,734,736,741,742,747,748,751,753],{"type":26,"value":669},{"type":21,"tag":388,"props":725,"children":726},{"href":672},[727],{"type":26,"value":675},{"type":26,"value":677},{"type":21,"tag":42,"props":730,"children":732},{"className":731},[],[733],{"type":26,"value":384},{"type":26,"value":735},", was created without\n",{"type":21,"tag":42,"props":737,"children":739},{"className":738},[],[740],{"type":26,"value":690},{"type":26,"value":692},{"type":21,"tag":42,"props":743,"children":745},{"className":744},[],[746],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":749,"children":750},{"type":427},[],{"type":26,"value":752}," not\ninclude ",{"type":21,"tag":42,"props":754,"children":756},{"className":755},[],[757],{"type":26,"value":652},{"type":21,"tag":497,"props":759,"children":761},{"name":760},"VUID-vkCmdUpdateMemoryKHR-dstFlags-13101",[762],{"type":21,"tag":22,"props":763,"children":764},{},[765,770,771,774,775,781,782],{"type":21,"tag":42,"props":766,"children":768},{"className":767},[],[769],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":772,"children":773},{"type":427},[],{"type":26,"value":646},{"type":21,"tag":42,"props":776,"children":778},{"className":777},[],[779],{"type":26,"value":780},"VK_ADDRESS_COMMAND_TRANSFORM_FEEDBACK_BUFFER_USAGE_BIT_KHR",{"type":26,"value":654},{"type":21,"tag":42,"props":783,"children":785},{"className":784},[],[786],{"type":26,"value":787},"VK_ADDRESS_COMMAND_UNKNOWN_TRANSFORM_FEEDBACK_BUFFER_USAGE_BIT_KHR",{"type":21,"tag":497,"props":789,"children":791},{"name":790},"VUID-vkCmdUpdateMemoryKHR-pDstRange-13124",[792],{"type":21,"tag":22,"props":793,"children":794},{},[795,796,800,801,806,807,813,814,819,820,823,824,829,830],{"type":26,"value":669},{"type":21,"tag":388,"props":797,"children":798},{"href":672},[799],{"type":26,"value":675},{"type":26,"value":677},{"type":21,"tag":42,"props":802,"children":804},{"className":803},[],[805],{"type":26,"value":384},{"type":26,"value":684},{"type":21,"tag":42,"props":808,"children":810},{"className":809},[],[811],{"type":26,"value":812},"VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT",{"type":26,"value":88},{"type":21,"tag":42,"props":815,"children":817},{"className":816},[],[818],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":821,"children":822},{"type":427},[],{"type":26,"value":577},{"type":21,"tag":42,"props":825,"children":827},{"className":826},[],[828],{"type":26,"value":780},{"type":26,"value":710},{"type":21,"tag":42,"props":831,"children":833},{"className":832},[],[834],{"type":26,"value":787},{"type":21,"tag":497,"props":836,"children":838},{"name":837},"VUID-vkCmdUpdateMemoryKHR-pDstRange-13125",[839],{"type":21,"tag":22,"props":840,"children":841},{},[842,843,847,848,853,854,859,860,865,866,869,870],{"type":26,"value":669},{"type":21,"tag":388,"props":844,"children":845},{"href":672},[846],{"type":26,"value":675},{"type":26,"value":677},{"type":21,"tag":42,"props":849,"children":851},{"className":850},[],[852],{"type":26,"value":384},{"type":26,"value":735},{"type":21,"tag":42,"props":855,"children":857},{"className":856},[],[858],{"type":26,"value":812},{"type":26,"value":88},{"type":21,"tag":42,"props":861,"children":863},{"className":862},[],[864],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":867,"children":868},{"type":427},[],{"type":26,"value":524},{"type":21,"tag":42,"props":871,"children":873},{"className":872},[],[874],{"type":26,"value":780},{"type":21,"tag":497,"props":876,"children":878},{"name":877},"VUID-vkCmdUpdateMemoryKHR-dstRange-13005",[879],{"type":21,"tag":22,"props":880,"children":881},{},[882,884,889,891,894,896,902],{"type":26,"value":883},"The buffer from which ",{"type":21,"tag":42,"props":885,"children":887},{"className":886},[],[888],{"type":26,"value":471},{"type":26,"value":890}," was queried ",{"type":21,"tag":425,"props":892,"children":893},{"type":427},[],{"type":26,"value":895}," have been created\nwith ",{"type":21,"tag":42,"props":897,"children":899},{"className":898},[],[900],{"type":26,"value":901},"VK_BUFFER_USAGE_TRANSFER_DST_BIT",{"type":26,"value":903}," usage flag",{"type":21,"tag":497,"props":905,"children":907},{"name":906},"VUID-vkCmdUpdateMemoryKHR-pDstRange-13006",[908],{"type":21,"tag":22,"props":909,"children":910},{},[911,917,918,921],{"type":21,"tag":42,"props":912,"children":914},{"className":913},[],[915],{"type":26,"value":916},"pDstRange→address",{"type":26,"value":519},{"type":21,"tag":425,"props":919,"children":920},{"type":427},[],{"type":26,"value":922}," be a multiple of 4",{"type":21,"tag":497,"props":924,"children":926},{"name":925},"VUID-vkCmdUpdateMemoryKHR-pDstRange-13007",[927],{"type":21,"tag":22,"props":928,"children":929},{},[930,936,937,940],{"type":21,"tag":42,"props":931,"children":933},{"className":932},[],[934],{"type":26,"value":935},"pDstRange→size",{"type":26,"value":519},{"type":21,"tag":425,"props":938,"children":939},{"type":427},[],{"type":26,"value":941}," be less than or equal to 65536",{"type":21,"tag":497,"props":943,"children":945},{"name":944},"VUID-vkCmdUpdateMemoryKHR-dataSize-13008",[946],{"type":21,"tag":22,"props":947,"children":948},{},[949,954,955,958,960],{"type":21,"tag":42,"props":950,"children":952},{"className":951},[],[953],{"type":26,"value":148},{"type":26,"value":519},{"type":21,"tag":425,"props":956,"children":957},{"type":427},[],{"type":26,"value":959}," be less than or equal to ",{"type":21,"tag":42,"props":961,"children":963},{"className":962},[],[964],{"type":26,"value":935},{"type":21,"tag":497,"props":966,"children":968},{"name":967},"VUID-vkCmdUpdateMemoryKHR-dataSize-13009",[969],{"type":21,"tag":22,"props":970,"children":971},{},[972,977,978,981],{"type":21,"tag":42,"props":973,"children":975},{"className":974},[],[976],{"type":26,"value":148},{"type":26,"value":519},{"type":21,"tag":425,"props":979,"children":980},{"type":427},[],{"type":26,"value":922},{"type":21,"tag":497,"props":983,"children":985},{"name":984},"VUID-vkCmdUpdateMemoryKHR-commandBuffer-13010",[986],{"type":21,"tag":22,"props":987,"children":988},{},[989,991,996,998,1006,1007,1012,1013,1016,1017],{"type":26,"value":990},"If ",{"type":21,"tag":42,"props":992,"children":994},{"className":993},[],[995],{"type":26,"value":83},{"type":26,"value":997}," is an unprotected command buffer and\n",{"type":21,"tag":388,"props":999,"children":1000},{"href":557},[1001],{"type":21,"tag":42,"props":1002,"children":1004},{"className":1003},[],[1005],{"type":26,"value":564},{"type":26,"value":566},{"type":21,"tag":42,"props":1008,"children":1010},{"className":1009},[],[1011],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":1014,"children":1015},{"type":427},[],{"type":26,"value":524},{"type":21,"tag":42,"props":1018,"children":1020},{"className":1019},[],[1021],{"type":26,"value":583},{"type":21,"tag":497,"props":1023,"children":1025},{"name":1024},"VUID-vkCmdUpdateMemoryKHR-commandBuffer-13011",[1026],{"type":21,"tag":22,"props":1027,"children":1028},{},[1029,1030,1035,1037,1045,1046,1051,1052,1055,1057],{"type":26,"value":990},{"type":21,"tag":42,"props":1031,"children":1033},{"className":1032},[],[1034],{"type":26,"value":83},{"type":26,"value":1036}," is a protected command buffer and\n",{"type":21,"tag":388,"props":1038,"children":1039},{"href":557},[1040],{"type":21,"tag":42,"props":1041,"children":1043},{"className":1042},[],[1044],{"type":26,"value":564},{"type":26,"value":566},{"type":21,"tag":42,"props":1047,"children":1049},{"className":1048},[],[1050],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":1053,"children":1054},{"type":427},[],{"type":26,"value":1056}," include ",{"type":21,"tag":42,"props":1058,"children":1060},{"className":1059},[],[1061],{"type":26,"value":583},{"type":21,"tag":492,"props":1063,"children":1065},{"name":1064},"Valid Usage (Implicit)",[1066,1092,1116,1142,1167,1191,1227,1241,1254,1267],{"type":21,"tag":497,"props":1067,"children":1069},{"name":1068},"VUID-vkCmdUpdateMemoryKHR-commandBuffer-parameter",[1070],{"type":21,"tag":22,"props":1071,"children":1072},{},[1073,1078,1079,1082,1084,1090],{"type":21,"tag":42,"props":1074,"children":1076},{"className":1075},[],[1077],{"type":26,"value":83},{"type":26,"value":519},{"type":21,"tag":425,"props":1080,"children":1081},{"type":427},[],{"type":26,"value":1083}," be a valid ",{"type":21,"tag":388,"props":1085,"children":1087},{"href":1086},"/man/VkCommandBuffer",[1088],{"type":26,"value":1089},"VkCommandBuffer",{"type":26,"value":1091}," handle",{"type":21,"tag":497,"props":1093,"children":1095},{"name":1094},"VUID-vkCmdUpdateMemoryKHR-pDstRange-parameter",[1096],{"type":21,"tag":22,"props":1097,"children":1098},{},[1099,1104,1105,1108,1110,1114],{"type":21,"tag":42,"props":1100,"children":1102},{"className":1101},[],[1103],{"type":26,"value":384},{"type":26,"value":519},{"type":21,"tag":425,"props":1106,"children":1107},{"type":427},[],{"type":26,"value":1109}," be a valid pointer to a valid ",{"type":21,"tag":388,"props":1111,"children":1112},{"href":390},[1113],{"type":26,"value":393},{"type":26,"value":1115}," structure",{"type":21,"tag":497,"props":1117,"children":1119},{"name":1118},"VUID-vkCmdUpdateMemoryKHR-dstFlags-parameter",[1120],{"type":21,"tag":22,"props":1121,"children":1122},{},[1123,1128,1129,1132,1134,1140],{"type":21,"tag":42,"props":1124,"children":1126},{"className":1125},[],[1127],{"type":26,"value":130},{"type":26,"value":519},{"type":21,"tag":425,"props":1130,"children":1131},{"type":427},[],{"type":26,"value":1133}," be a valid combination of ",{"type":21,"tag":388,"props":1135,"children":1137},{"href":1136},"/man/VkAddressCommandFlagBitsKHR",[1138],{"type":26,"value":1139},"VkAddressCommandFlagBitsKHR",{"type":26,"value":1141}," values",{"type":21,"tag":497,"props":1143,"children":1145},{"name":1144},"VUID-vkCmdUpdateMemoryKHR-pData-parameter",[1146],{"type":21,"tag":22,"props":1147,"children":1148},{},[1149,1154,1155,1158,1160,1165],{"type":21,"tag":42,"props":1150,"children":1152},{"className":1151},[],[1153],{"type":26,"value":439},{"type":26,"value":519},{"type":21,"tag":425,"props":1156,"children":1157},{"type":427},[],{"type":26,"value":1159}," be a valid pointer to an array of ",{"type":21,"tag":42,"props":1161,"children":1163},{"className":1162},[],[1164],{"type":26,"value":148},{"type":26,"value":1166}," bytes",{"type":21,"tag":497,"props":1168,"children":1170},{"name":1169},"VUID-vkCmdUpdateMemoryKHR-commandBuffer-recording",[1171],{"type":21,"tag":22,"props":1172,"children":1173},{},[1174,1179,1180,1183,1185],{"type":21,"tag":42,"props":1175,"children":1177},{"className":1176},[],[1178],{"type":26,"value":83},{"type":26,"value":519},{"type":21,"tag":425,"props":1181,"children":1182},{"type":427},[],{"type":26,"value":1184}," be in the ",{"type":21,"tag":388,"props":1186,"children":1188},{"href":1187},"/chapters/commandbuffers#commandbuffers-lifecycle",[1189],{"type":26,"value":1190},"recording state",{"type":21,"tag":497,"props":1192,"children":1194},{"name":1193},"VUID-vkCmdUpdateMemoryKHR-commandBuffer-cmdpool",[1195],{"type":21,"tag":22,"props":1196,"children":1197},{},[1198,1200,1206,1208,1213,1215,1218,1220,1225],{"type":26,"value":1199},"The ",{"type":21,"tag":42,"props":1201,"children":1203},{"className":1202},[],[1204],{"type":26,"value":1205},"VkCommandPool",{"type":26,"value":1207}," that ",{"type":21,"tag":42,"props":1209,"children":1211},{"className":1210},[],[1212],{"type":26,"value":83},{"type":26,"value":1214}," was allocated from ",{"type":21,"tag":425,"props":1216,"children":1217},{"type":427},[],{"type":26,"value":1219}," support ",{"type":21,"tag":42,"props":1221,"children":1223},{"className":1222},[],[1224],{"type":26,"value":12},{"type":26,"value":1226}," operations",{"type":21,"tag":497,"props":1228,"children":1230},{"name":1229},"VUID-vkCmdUpdateMemoryKHR-renderpass",[1231],{"type":21,"tag":22,"props":1232,"children":1233},{},[1234,1236,1239],{"type":26,"value":1235},"This command ",{"type":21,"tag":425,"props":1237,"children":1238},{"type":427},[],{"type":26,"value":1240}," only be called outside of a render pass instance",{"type":21,"tag":497,"props":1242,"children":1244},{"name":1243},"VUID-vkCmdUpdateMemoryKHR-suspended",[1245],{"type":21,"tag":22,"props":1246,"children":1247},{},[1248,1249,1252],{"type":26,"value":1235},{"type":21,"tag":425,"props":1250,"children":1251},{"type":427},[],{"type":26,"value":1253}," not be called between suspended render pass instances",{"type":21,"tag":497,"props":1255,"children":1257},{"name":1256},"VUID-vkCmdUpdateMemoryKHR-videocoding",[1258],{"type":21,"tag":22,"props":1259,"children":1260},{},[1261,1262,1265],{"type":26,"value":1235},{"type":21,"tag":425,"props":1263,"children":1264},{"type":427},[],{"type":26,"value":1266}," only be called outside of a video coding scope",{"type":21,"tag":497,"props":1268,"children":1270},{"name":1269},"VUID-vkCmdUpdateMemoryKHR-dataSize-arraylength",[1271],{"type":21,"tag":22,"props":1272,"children":1273},{},[1274,1279,1280,1283,1285],{"type":21,"tag":42,"props":1275,"children":1277},{"className":1276},[],[1278],{"type":26,"value":148},{"type":26,"value":519},{"type":21,"tag":425,"props":1281,"children":1282},{"type":427},[],{"type":26,"value":1284}," be greater than ",{"type":21,"tag":42,"props":1286,"children":1288},{"className":1287},[],[1289],{"type":26,"value":1290},"0",{"type":21,"tag":1292,"props":1293,"children":1295},"validity-box",{"name":1294},"Host Synchronization",[1296],{"type":21,"tag":362,"props":1297,"children":1298},{},[1299,1315],{"type":21,"tag":366,"props":1300,"children":1301},{},[1302,1304,1309,1310,1313],{"type":26,"value":1303},"Host access to ",{"type":21,"tag":42,"props":1305,"children":1307},{"className":1306},[],[1308],{"type":26,"value":83},{"type":26,"value":519},{"type":21,"tag":425,"props":1311,"children":1312},{"type":427},[],{"type":26,"value":1314}," be externally synchronized",{"type":21,"tag":366,"props":1316,"children":1317},{},[1318,1320,1325,1326,1331,1332,1335],{"type":26,"value":1319},"Host access to the ",{"type":21,"tag":42,"props":1321,"children":1323},{"className":1322},[],[1324],{"type":26,"value":1205},{"type":26,"value":1207},{"type":21,"tag":42,"props":1327,"children":1329},{"className":1328},[],[1330],{"type":26,"value":83},{"type":26,"value":1214},{"type":21,"tag":425,"props":1333,"children":1334},{"type":427},[],{"type":26,"value":1314},{"type":21,"tag":1337,"props":1338,"children":1339},"style",{},[1340],{"type":26,"value":1341},"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":71,"depth":71,"links":1343},[],"markdown",1773471484771]