[{"data":1,"prerenderedAt":685},["ShallowReactive",2],{"s2NjzpbQSq":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":684,"_id":4},"vkCopyMemoryToAccelerationStructureKHR","Deserialize an acceleration structure on the host","VK_KHR_acceleration_structure","protos",[],{"type":10,"children":11,"toc":682},"root",[12,20,305,374,387,407,558,676],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17],{"type":18,"value":19},"text","To copy host accessible memory to an acceleration structure, call:",{"type":13,"tag":21,"props":22,"children":23},"code-group",{},[24,127],{"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 vkCopyMemoryToAccelerationStructureKHR(\n VkDevice device,\n VkDeferredOperationKHR deferredOperation,\n const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);\n","C","c","",[33],{"type":13,"tag":34,"props":35,"children":36},"code",{"__ignoreMap":31},[37,59,79,97],{"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,88,93],{"type":13,"tag":38,"props":84,"children":85},{"style":45},[86],{"type":18,"value":87}," VkDeferredOperationKHR ",{"type":13,"tag":38,"props":89,"children":90},{"style":70},[91],{"type":18,"value":92},"deferredOperation",{"type":13,"tag":38,"props":94,"children":95},{"style":45},[96],{"type":18,"value":78},{"type":13,"tag":38,"props":98,"children":100},{"class":40,"line":99},4,[101,107,112,117,122],{"type":13,"tag":38,"props":102,"children":104},{"style":103},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[105],{"type":18,"value":106}," const",{"type":13,"tag":38,"props":108,"children":109},{"style":45},[110],{"type":18,"value":111}," VkCopyMemoryToAccelerationStructureInfoKHR",{"type":13,"tag":38,"props":113,"children":114},{"style":103},[115],{"type":18,"value":116},"*",{"type":13,"tag":38,"props":118,"children":119},{"style":70},[120],{"type":18,"value":121}," pInfo",{"type":13,"tag":38,"props":123,"children":124},{"style":45},[125],{"type":18,"value":126},");\n",{"type":13,"tag":25,"props":128,"children":133},{"className":129,"code":130,"filename":131,"language":132,"meta":31,"style":31},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn copy_memory_to_acceleration_structure_khr(\n device: crate :: vk :: vk::Device,\n deferred_operation: vk::DeferredOperationKHR,\n p_info: *const vk::CopyMemoryToAccelerationStructureInfoKHR,\n) -> vk::Result;\n","Rust","rs",[134],{"type":13,"tag":34,"props":135,"children":136},{"__ignoreMap":31},[137,159,210,239,273],{"type":13,"tag":38,"props":138,"children":139},{"class":40,"line":41},[140,145,150,155],{"type":13,"tag":38,"props":141,"children":142},{"style":103},[143],{"type":18,"value":144},"pub",{"type":13,"tag":38,"props":146,"children":147},{"style":103},[148],{"type":18,"value":149}," fn",{"type":13,"tag":38,"props":151,"children":152},{"style":51},[153],{"type":18,"value":154}," copy_memory_to_acceleration_structure_khr",{"type":13,"tag":38,"props":156,"children":157},{"style":45},[158],{"type":18,"value":58},{"type":13,"tag":38,"props":160,"children":161},{"class":40,"line":61},[162,167,172,177,182,187,192,197,201,206],{"type":13,"tag":38,"props":163,"children":164},{"style":45},[165],{"type":18,"value":166}," device",{"type":13,"tag":38,"props":168,"children":169},{"style":103},[170],{"type":18,"value":171},":",{"type":13,"tag":38,"props":173,"children":174},{"style":103},[175],{"type":18,"value":176}," crate",{"type":13,"tag":38,"props":178,"children":179},{"style":103},[180],{"type":18,"value":181}," ::",{"type":13,"tag":38,"props":183,"children":184},{"style":45},[185],{"type":18,"value":186}," vk ",{"type":13,"tag":38,"props":188,"children":189},{"style":103},[190],{"type":18,"value":191},"::",{"type":13,"tag":38,"props":193,"children":194},{"style":70},[195],{"type":18,"value":196}," vk",{"type":13,"tag":38,"props":198,"children":199},{"style":103},[200],{"type":18,"value":191},{"type":13,"tag":38,"props":202,"children":203},{"style":70},[204],{"type":18,"value":205},"Device",{"type":13,"tag":38,"props":207,"children":208},{"style":45},[209],{"type":18,"value":78},{"type":13,"tag":38,"props":211,"children":212},{"class":40,"line":81},[213,218,222,226,230,235],{"type":13,"tag":38,"props":214,"children":215},{"style":45},[216],{"type":18,"value":217}," deferred_operation",{"type":13,"tag":38,"props":219,"children":220},{"style":103},[221],{"type":18,"value":171},{"type":13,"tag":38,"props":223,"children":224},{"style":70},[225],{"type":18,"value":196},{"type":13,"tag":38,"props":227,"children":228},{"style":103},[229],{"type":18,"value":191},{"type":13,"tag":38,"props":231,"children":232},{"style":70},[233],{"type":18,"value":234},"DeferredOperationKHR",{"type":13,"tag":38,"props":236,"children":237},{"style":45},[238],{"type":18,"value":78},{"type":13,"tag":38,"props":240,"children":241},{"class":40,"line":99},[242,247,251,256,260,264,269],{"type":13,"tag":38,"props":243,"children":244},{"style":45},[245],{"type":18,"value":246}," p_info",{"type":13,"tag":38,"props":248,"children":249},{"style":103},[250],{"type":18,"value":171},{"type":13,"tag":38,"props":252,"children":253},{"style":103},[254],{"type":18,"value":255}," *const",{"type":13,"tag":38,"props":257,"children":258},{"style":70},[259],{"type":18,"value":196},{"type":13,"tag":38,"props":261,"children":262},{"style":103},[263],{"type":18,"value":191},{"type":13,"tag":38,"props":265,"children":266},{"style":70},[267],{"type":18,"value":268},"CopyMemoryToAccelerationStructureInfoKHR",{"type":13,"tag":38,"props":270,"children":271},{"style":45},[272],{"type":18,"value":78},{"type":13,"tag":38,"props":274,"children":276},{"class":40,"line":275},5,[277,282,287,291,295,300],{"type":13,"tag":38,"props":278,"children":279},{"style":45},[280],{"type":18,"value":281},") ",{"type":13,"tag":38,"props":283,"children":284},{"style":103},[285],{"type":18,"value":286},"->",{"type":13,"tag":38,"props":288,"children":289},{"style":70},[290],{"type":18,"value":196},{"type":13,"tag":38,"props":292,"children":293},{"style":103},[294],{"type":18,"value":191},{"type":13,"tag":38,"props":296,"children":297},{"style":70},[298],{"type":18,"value":299},"Result",{"type":13,"tag":38,"props":301,"children":302},{"style":45},[303],{"type":18,"value":304},";\n",{"type":13,"tag":306,"props":307,"children":308},"ul",{},[309,328,355],{"type":13,"tag":310,"props":311,"children":312},"li",{},[313,318,320,326],{"type":13,"tag":34,"props":314,"children":316},{"className":315},[],[317],{"type":18,"value":73},{"type":18,"value":319}," is the device which owns ",{"type":13,"tag":34,"props":321,"children":323},{"className":322},[],[324],{"type":18,"value":325},"pInfo→dst",{"type":18,"value":327},".",{"type":13,"tag":310,"props":329,"children":330},{},[331,336,338,345,347,353],{"type":13,"tag":34,"props":332,"children":334},{"className":333},[],[335],{"type":18,"value":92},{"type":18,"value":337}," is an optional ",{"type":13,"tag":339,"props":340,"children":342},"a",{"href":341},"/man/VkDeferredOperationKHR",[343],{"type":18,"value":344},"VkDeferredOperationKHR",{"type":18,"value":346}," to\n",{"type":13,"tag":339,"props":348,"children":350},{"href":349},"/chapters/deferred-host-operations#deferred-host-operations-requesting",[351],{"type":18,"value":352},"request deferral",{"type":18,"value":354}," for this\ncommand.",{"type":13,"tag":310,"props":356,"children":357},{},[358,364,366,372],{"type":13,"tag":34,"props":359,"children":361},{"className":360},[],[362],{"type":18,"value":363},"pInfo",{"type":18,"value":365}," is a pointer to a\n",{"type":13,"tag":339,"props":367,"children":369},{"href":368},"/man/VkCopyMemoryToAccelerationStructureInfoKHR",[370],{"type":18,"value":371},"VkCopyMemoryToAccelerationStructureInfoKHR",{"type":18,"value":373}," structure defining the\ncopy operation.",{"type":13,"tag":14,"props":375,"children":376},{},[377,379,385],{"type":18,"value":378},"This command fulfills the same task as\n",{"type":13,"tag":339,"props":380,"children":382},{"href":381},"/man/vkCmdCopyMemoryToAccelerationStructureKHR",[383],{"type":18,"value":384},"vkCmdCopyMemoryToAccelerationStructureKHR",{"type":18,"value":386}," but is executed by the host.",{"type":13,"tag":14,"props":388,"children":389},{},[390,392,398,400,406],{"type":18,"value":391},"This command can accept acceleration structures produced by either\n",{"type":13,"tag":339,"props":393,"children":395},{"href":394},"/man/vkCmdCopyAccelerationStructureToMemoryKHR",[396],{"type":18,"value":397},"vkCmdCopyAccelerationStructureToMemoryKHR",{"type":18,"value":399}," or\n",{"type":13,"tag":339,"props":401,"children":403},{"href":402},"/man/vkCopyAccelerationStructureToMemoryKHR",[404],{"type":18,"value":405},"vkCopyAccelerationStructureToMemoryKHR",{"type":18,"value":327},{"type":13,"tag":408,"props":409,"children":411},"validity-group",{"name":410},"Valid Usage",[412,448,469,488,506,533],{"type":13,"tag":413,"props":414,"children":416},"validity-field",{"name":415},"VUID-vkCopyMemoryToAccelerationStructureKHR-accelerationStructureHostCommands-03583",[417],{"type":13,"tag":14,"props":418,"children":419},{},[420,422,439,441,446],{"type":18,"value":421},"The ",{"type":13,"tag":339,"props":423,"children":425},{"href":424},"/man/VkPhysicalDeviceAccelerationStructureFeaturesKHR#features-accelerationStructureHostCommands",[426,432,433],{"type":13,"tag":34,"props":427,"children":429},{"className":428},[],[430],{"type":18,"value":431},"VkPhysicalDeviceAccelerationStructureFeaturesKHR",{"type":18,"value":191},{"type":13,"tag":34,"props":434,"children":436},{"className":435},[],[437],{"type":18,"value":438},"accelerationStructureHostCommands",{"type":18,"value":440},"\nfeature ",{"type":13,"tag":442,"props":443,"children":445},"normative",{"type":444},"must",[],{"type":18,"value":447}," be enabled",{"type":13,"tag":413,"props":449,"children":451},{"name":450},"VUID-vkCopyMemoryToAccelerationStructureKHR-deferredOperation-03678",[452],{"type":13,"tag":14,"props":453,"children":454},{},[455,457,462,464,467],{"type":18,"value":456},"Any previous deferred operation that was associated with\n",{"type":13,"tag":34,"props":458,"children":460},{"className":459},[],[461],{"type":18,"value":92},{"type":18,"value":463}," ",{"type":13,"tag":442,"props":465,"children":466},{"type":444},[],{"type":18,"value":468}," be complete",{"type":13,"tag":413,"props":470,"children":472},{"name":471},"VUID-vkCopyMemoryToAccelerationStructureKHR-pInfo-03729",[473],{"type":13,"tag":14,"props":474,"children":475},{},[476,482,483,486],{"type":13,"tag":34,"props":477,"children":479},{"className":478},[],[480],{"type":18,"value":481},"pInfo→src.hostAddress",{"type":18,"value":463},{"type":13,"tag":442,"props":484,"children":485},{"type":444},[],{"type":18,"value":487}," be a valid host pointer",{"type":13,"tag":413,"props":489,"children":491},{"name":490},"VUID-vkCopyMemoryToAccelerationStructureKHR-pInfo-03750",[492],{"type":13,"tag":14,"props":493,"children":494},{},[495,500,501,504],{"type":13,"tag":34,"props":496,"children":498},{"className":497},[],[499],{"type":18,"value":481},{"type":18,"value":463},{"type":13,"tag":442,"props":502,"children":503},{"type":444},[],{"type":18,"value":505}," be aligned to 16 bytes",{"type":13,"tag":413,"props":507,"children":509},{"name":508},"VUID-vkCopyMemoryToAccelerationStructureKHR-buffer-03730",[510],{"type":13,"tag":14,"props":511,"children":512},{},[513,514,520,522,527,528,531],{"type":18,"value":421},{"type":13,"tag":34,"props":515,"children":517},{"className":516},[],[518],{"type":18,"value":519},"buffer",{"type":18,"value":521}," used to create ",{"type":13,"tag":34,"props":523,"children":525},{"className":524},[],[526],{"type":18,"value":325},{"type":18,"value":463},{"type":13,"tag":442,"props":529,"children":530},{"type":444},[],{"type":18,"value":532}," be bound to\nhost-visible device memory",{"type":13,"tag":413,"props":534,"children":536},{"name":535},"VUID-vkCopyMemoryToAccelerationStructureKHR-buffer-03782",[537],{"type":13,"tag":14,"props":538,"children":539},{},[540,541,546,547,552,553,556],{"type":18,"value":421},{"type":13,"tag":34,"props":542,"children":544},{"className":543},[],[545],{"type":18,"value":519},{"type":18,"value":521},{"type":13,"tag":34,"props":548,"children":550},{"className":549},[],[551],{"type":18,"value":325},{"type":18,"value":463},{"type":13,"tag":442,"props":554,"children":555},{"type":444},[],{"type":18,"value":557}," be bound to\nmemory that was not allocated with multiple instances",{"type":13,"tag":408,"props":559,"children":561},{"name":560},"Valid Usage (Implicit)",[562,588,627,651],{"type":13,"tag":413,"props":563,"children":565},{"name":564},"VUID-vkCopyMemoryToAccelerationStructureKHR-device-parameter",[566],{"type":13,"tag":14,"props":567,"children":568},{},[569,574,575,578,580,586],{"type":13,"tag":34,"props":570,"children":572},{"className":571},[],[573],{"type":18,"value":73},{"type":18,"value":463},{"type":13,"tag":442,"props":576,"children":577},{"type":444},[],{"type":18,"value":579}," be a valid ",{"type":13,"tag":339,"props":581,"children":583},{"href":582},"/man/VkDevice",[584],{"type":18,"value":585},"VkDevice",{"type":18,"value":587}," handle",{"type":13,"tag":413,"props":589,"children":591},{"name":590},"VUID-vkCopyMemoryToAccelerationStructureKHR-deferredOperation-parameter",[592],{"type":13,"tag":14,"props":593,"children":594},{},[595,597,602,604,610,612,617,618,621,622,626],{"type":18,"value":596},"If ",{"type":13,"tag":34,"props":598,"children":600},{"className":599},[],[601],{"type":18,"value":92},{"type":18,"value":603}," is not ",{"type":13,"tag":339,"props":605,"children":607},{"href":606},"/man/VK_NULL_HANDLE",[608],{"type":18,"value":609},"VK_NULL_HANDLE",{"type":18,"value":611},", ",{"type":13,"tag":34,"props":613,"children":615},{"className":614},[],[616],{"type":18,"value":92},{"type":18,"value":463},{"type":13,"tag":442,"props":619,"children":620},{"type":444},[],{"type":18,"value":579},{"type":13,"tag":339,"props":623,"children":624},{"href":341},[625],{"type":18,"value":344},{"type":18,"value":587},{"type":13,"tag":413,"props":628,"children":630},{"name":629},"VUID-vkCopyMemoryToAccelerationStructureKHR-pInfo-parameter",[631],{"type":13,"tag":14,"props":632,"children":633},{},[634,639,640,643,645,649],{"type":13,"tag":34,"props":635,"children":637},{"className":636},[],[638],{"type":18,"value":363},{"type":18,"value":463},{"type":13,"tag":442,"props":641,"children":642},{"type":444},[],{"type":18,"value":644}," be a valid pointer to a valid ",{"type":13,"tag":339,"props":646,"children":647},{"href":368},[648],{"type":18,"value":371},{"type":18,"value":650}," structure",{"type":13,"tag":413,"props":652,"children":654},{"name":653},"VUID-vkCopyMemoryToAccelerationStructureKHR-deferredOperation-parent",[655],{"type":13,"tag":14,"props":656,"children":657},{},[658,659,664,666,669,671],{"type":18,"value":596},{"type":13,"tag":34,"props":660,"children":662},{"className":661},[],[663],{"type":18,"value":92},{"type":18,"value":665}," is a valid handle, it ",{"type":13,"tag":442,"props":667,"children":668},{"type":444},[],{"type":18,"value":670}," have been created, allocated, or retrieved from ",{"type":13,"tag":34,"props":672,"children":674},{"className":673},[],[675],{"type":18,"value":73},{"type":13,"tag":677,"props":678,"children":679},"style",{},[680],{"type":18,"value":681},"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":683},[],"markdown",1725732611843]