[{"data":1,"prerenderedAt":505},["ShallowReactive",2],{"uKFx49vsmR":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":504,"_id":4},"vkCopyImageToImageEXT","Copy image data using the host","VK_EXT_host_image_copy","protos",[],{"type":10,"children":11,"toc":502},"root",[12,20,258,309,342,409,441,496],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17],{"type":18,"value":19},"text","To copy data from an image object to another image object using the host,\ncall:",{"type":13,"tag":21,"props":22,"children":23},"code-group",{},[24,109],{"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","VkResult vkCopyImageToImageEXT(\n VkDevice device,\n const VkCopyImageToImageInfoEXT* pCopyImageToImageInfo);\n","C","c","",[33],{"type":13,"tag":34,"props":35,"children":36},"code",{"__ignoreMap":31},[37,59,79],{"type":13,"tag":38,"props":39,"children":42},"span",{"class":40,"line":41},"line",1,[43,49,54],{"type":13,"tag":38,"props":44,"children":46},{"style":45},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[47],{"type":18,"value":48},"VkResult ",{"type":13,"tag":38,"props":50,"children":52},{"style":51},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[53],{"type":18,"value":4},{"type":13,"tag":38,"props":55,"children":56},{"style":45},[57],{"type":18,"value":58},"(\n",{"type":13,"tag":38,"props":60,"children":62},{"class":40,"line":61},2,[63,68,74],{"type":13,"tag":38,"props":64,"children":65},{"style":45},[66],{"type":18,"value":67}," VkDevice ",{"type":13,"tag":38,"props":69,"children":71},{"style":70},"--shiki-default:#953800;--shiki-dark:#FFA657",[72],{"type":18,"value":73},"device",{"type":13,"tag":38,"props":75,"children":76},{"style":45},[77],{"type":18,"value":78},",\n",{"type":13,"tag":38,"props":80,"children":82},{"class":40,"line":81},3,[83,89,94,99,104],{"type":13,"tag":38,"props":84,"children":86},{"style":85},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[87],{"type":18,"value":88}," const",{"type":13,"tag":38,"props":90,"children":91},{"style":45},[92],{"type":18,"value":93}," VkCopyImageToImageInfoEXT",{"type":13,"tag":38,"props":95,"children":96},{"style":85},[97],{"type":18,"value":98},"*",{"type":13,"tag":38,"props":100,"children":101},{"style":70},[102],{"type":18,"value":103}," pCopyImageToImageInfo",{"type":13,"tag":38,"props":105,"children":106},{"style":45},[107],{"type":18,"value":108},");\n",{"type":13,"tag":25,"props":110,"children":115},{"className":111,"code":112,"filename":113,"language":114,"meta":31,"style":31},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn copy_image_to_image_ext(\n device: crate :: vk :: vk::Device,\n p_copy_image_to_image_info: *const vk::CopyImageToImageInfoEXT,\n) -> vk::Result;\n","Rust","rs",[116],{"type":13,"tag":34,"props":117,"children":118},{"__ignoreMap":31},[119,141,192,226],{"type":13,"tag":38,"props":120,"children":121},{"class":40,"line":41},[122,127,132,137],{"type":13,"tag":38,"props":123,"children":124},{"style":85},[125],{"type":18,"value":126},"pub",{"type":13,"tag":38,"props":128,"children":129},{"style":85},[130],{"type":18,"value":131}," fn",{"type":13,"tag":38,"props":133,"children":134},{"style":51},[135],{"type":18,"value":136}," copy_image_to_image_ext",{"type":13,"tag":38,"props":138,"children":139},{"style":45},[140],{"type":18,"value":58},{"type":13,"tag":38,"props":142,"children":143},{"class":40,"line":61},[144,149,154,159,164,169,174,179,183,188],{"type":13,"tag":38,"props":145,"children":146},{"style":45},[147],{"type":18,"value":148}," device",{"type":13,"tag":38,"props":150,"children":151},{"style":85},[152],{"type":18,"value":153},":",{"type":13,"tag":38,"props":155,"children":156},{"style":85},[157],{"type":18,"value":158}," crate",{"type":13,"tag":38,"props":160,"children":161},{"style":85},[162],{"type":18,"value":163}," ::",{"type":13,"tag":38,"props":165,"children":166},{"style":45},[167],{"type":18,"value":168}," vk ",{"type":13,"tag":38,"props":170,"children":171},{"style":85},[172],{"type":18,"value":173},"::",{"type":13,"tag":38,"props":175,"children":176},{"style":70},[177],{"type":18,"value":178}," vk",{"type":13,"tag":38,"props":180,"children":181},{"style":85},[182],{"type":18,"value":173},{"type":13,"tag":38,"props":184,"children":185},{"style":70},[186],{"type":18,"value":187},"Device",{"type":13,"tag":38,"props":189,"children":190},{"style":45},[191],{"type":18,"value":78},{"type":13,"tag":38,"props":193,"children":194},{"class":40,"line":81},[195,200,204,209,213,217,222],{"type":13,"tag":38,"props":196,"children":197},{"style":45},[198],{"type":18,"value":199}," p_copy_image_to_image_info",{"type":13,"tag":38,"props":201,"children":202},{"style":85},[203],{"type":18,"value":153},{"type":13,"tag":38,"props":205,"children":206},{"style":85},[207],{"type":18,"value":208}," *const",{"type":13,"tag":38,"props":210,"children":211},{"style":70},[212],{"type":18,"value":178},{"type":13,"tag":38,"props":214,"children":215},{"style":85},[216],{"type":18,"value":173},{"type":13,"tag":38,"props":218,"children":219},{"style":70},[220],{"type":18,"value":221},"CopyImageToImageInfoEXT",{"type":13,"tag":38,"props":223,"children":224},{"style":45},[225],{"type":18,"value":78},{"type":13,"tag":38,"props":227,"children":229},{"class":40,"line":228},4,[230,235,240,244,248,253],{"type":13,"tag":38,"props":231,"children":232},{"style":45},[233],{"type":18,"value":234},") ",{"type":13,"tag":38,"props":236,"children":237},{"style":85},[238],{"type":18,"value":239},"->",{"type":13,"tag":38,"props":241,"children":242},{"style":70},[243],{"type":18,"value":178},{"type":13,"tag":38,"props":245,"children":246},{"style":85},[247],{"type":18,"value":173},{"type":13,"tag":38,"props":249,"children":250},{"style":70},[251],{"type":18,"value":252},"Result",{"type":13,"tag":38,"props":254,"children":255},{"style":45},[256],{"type":18,"value":257},";\n",{"type":13,"tag":259,"props":260,"children":261},"ul",{},[262,289],{"type":13,"tag":263,"props":264,"children":265},"li",{},[266,271,273,279,281,287],{"type":13,"tag":34,"props":267,"children":269},{"className":268},[],[270],{"type":18,"value":73},{"type":18,"value":272}," is the device which owns\n",{"type":13,"tag":34,"props":274,"children":276},{"className":275},[],[277],{"type":18,"value":278},"pCopyImageToImageInfo→srcImage",{"type":18,"value":280}," and\n",{"type":13,"tag":34,"props":282,"children":284},{"className":283},[],[285],{"type":18,"value":286},"pCopyImageToImageInfo→dstImage",{"type":18,"value":288},".",{"type":13,"tag":263,"props":290,"children":291},{},[292,298,300,307],{"type":13,"tag":34,"props":293,"children":295},{"className":294},[],[296],{"type":18,"value":297},"pCopyImageToImageInfo",{"type":18,"value":299}," is a pointer to a\n",{"type":13,"tag":301,"props":302,"children":304},"a",{"href":303},"/man/VkCopyImageToImageInfoEXT",[305],{"type":18,"value":306},"VkCopyImageToImageInfoEXT",{"type":18,"value":308}," structure describing the copy\nparameters.",{"type":13,"tag":14,"props":310,"children":311},{},[312,314,320,322,327,328,333,335,341],{"type":18,"value":313},"This command is functionally similar to ",{"type":13,"tag":301,"props":315,"children":317},{"href":316},"/man/vkCmdCopyImage2",[318],{"type":18,"value":319},"vkCmdCopyImage2",{"type":18,"value":321},", except it is\nexecuted on the host.\nThe memory of ",{"type":13,"tag":34,"props":323,"children":325},{"className":324},[],[326],{"type":18,"value":278},{"type":18,"value":280},{"type":13,"tag":34,"props":329,"children":331},{"className":330},[],[332],{"type":18,"value":286},{"type":18,"value":334}," is accessed by the host as if\n",{"type":13,"tag":301,"props":336,"children":338},{"href":337},"/man/VkMemoryPropertyFlagBits#memory-coherent",[339],{"type":18,"value":340},"coherent",{"type":18,"value":288},{"type":13,"tag":343,"props":344,"children":345},"note",{},[346,388],{"type":13,"tag":14,"props":347,"children":348},{},[349,351,356,358,363,365,371,373,379,381,387],{"type":18,"value":350},"If the device has written to the memory of\n",{"type":13,"tag":34,"props":352,"children":354},{"className":353},[],[355],{"type":18,"value":278},{"type":18,"value":357},", it is not automatically made\navailable to the host.\nBefore this copy command can be called, a memory barrier for this image\n",{"type":13,"tag":359,"props":360,"children":362},"normative",{"type":361},"must",[],{"type":18,"value":364}," have been issued on the device with the second\n",{"type":13,"tag":301,"props":366,"children":368},{"href":367},"/chapters/synchronization#synchronization-dependencies-scopes",[369],{"type":18,"value":370},"synchronization scope",{"type":18,"value":372}," including\n",{"type":13,"tag":34,"props":374,"children":376},{"className":375},[],[377],{"type":18,"value":378},"VK_PIPELINE_STAGE_HOST_BIT",{"type":18,"value":380}," and ",{"type":13,"tag":34,"props":382,"children":384},{"className":383},[],[385],{"type":18,"value":386},"VK_ACCESS_HOST_READ_BIT",{"type":18,"value":288},{"type":13,"tag":14,"props":389,"children":390},{},[391,393,399,401,407],{"type":18,"value":392},"Because queue submissions ",{"type":13,"tag":301,"props":394,"children":396},{"href":395},"/chapters/synchronization#synchronization-submission-host-writes",[397],{"type":18,"value":398},"automatically make host memory visible to the device",{"type":18,"value":400},", there would not be a\nneed for a memory barrier before using the results of this copy operation in\n",{"type":13,"tag":34,"props":402,"children":404},{"className":403},[],[405],{"type":18,"value":406},"pCopyMemoryToImageInfo→dstImage",{"type":18,"value":408}," on the device.",{"type":13,"tag":410,"props":411,"children":413},"validity-group",{"name":412},"Valid Usage",[414],{"type":13,"tag":415,"props":416,"children":418},"validity-field",{"name":417},"VUID-vkCopyImageToImageEXT-hostImageCopy-09068",[419],{"type":13,"tag":14,"props":420,"children":421},{},[422,424,434,436,439],{"type":18,"value":423},"The ",{"type":13,"tag":301,"props":425,"children":427},{"href":426},"/man/VkPhysicalDeviceHostImageCopyFeaturesEXT#features-hostImageCopy",[428],{"type":13,"tag":34,"props":429,"children":431},{"className":430},[],[432],{"type":18,"value":433},"hostImageCopy",{"type":18,"value":435}," feature ",{"type":13,"tag":359,"props":437,"children":438},{"type":361},[],{"type":18,"value":440}," be\nenabled",{"type":13,"tag":410,"props":442,"children":444},{"name":443},"Valid Usage (Implicit)",[445,472],{"type":13,"tag":415,"props":446,"children":448},{"name":447},"VUID-vkCopyImageToImageEXT-device-parameter",[449],{"type":13,"tag":14,"props":450,"children":451},{},[452,457,459,462,464,470],{"type":13,"tag":34,"props":453,"children":455},{"className":454},[],[456],{"type":18,"value":73},{"type":18,"value":458}," ",{"type":13,"tag":359,"props":460,"children":461},{"type":361},[],{"type":18,"value":463}," be a valid ",{"type":13,"tag":301,"props":465,"children":467},{"href":466},"/man/VkDevice",[468],{"type":18,"value":469},"VkDevice",{"type":18,"value":471}," handle",{"type":13,"tag":415,"props":473,"children":475},{"name":474},"VUID-vkCopyImageToImageEXT-pCopyImageToImageInfo-parameter",[476],{"type":13,"tag":14,"props":477,"children":478},{},[479,484,485,488,490,494],{"type":13,"tag":34,"props":480,"children":482},{"className":481},[],[483],{"type":18,"value":297},{"type":18,"value":458},{"type":13,"tag":359,"props":486,"children":487},{"type":361},[],{"type":18,"value":489}," be a valid pointer to a valid ",{"type":13,"tag":301,"props":491,"children":492},{"href":303},[493],{"type":18,"value":306},{"type":18,"value":495}," structure",{"type":13,"tag":497,"props":498,"children":499},"style",{},[500],{"type":18,"value":501},"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":61,"depth":61,"links":503},[],"markdown",1725732611654]