[{"data":1,"prerenderedAt":622},["ShallowReactive",2],{"G7A00LhjAx":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":621,"_id":4},"VkPhysicalDeviceBufferDeviceAddressFeaturesEXT","Structure describing buffer address features that can be supported by an implementation","VK_EXT_buffer_device_address","structs",[],{"type":10,"children":11,"toc":619},"root",[12,28,307,372,377,491,553,583,613],{"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\ndefined as:",{"type":13,"tag":29,"props":30,"children":31},"code-group",{},[32,126],{"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 VkPhysicalDeviceBufferDeviceAddressFeaturesEXT {\n VkStructureType sType;\n void* pNext;\n VkBool32 bufferDeviceAddress;\n VkBool32 bufferDeviceAddressCaptureReplay;\n VkBool32 bufferDeviceAddressMultiDevice;\n} VkPhysicalDeviceBufferDeviceAddressFeaturesEXT;\n","C","c","",[41],{"type":13,"tag":21,"props":42,"children":43},{"__ignoreMap":39},[44,67,76,90,99,108,117],{"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}," VkPhysicalDeviceBufferDeviceAddressFeaturesEXT {\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}," VkStructureType sType;\n",{"type":13,"tag":45,"props":77,"children":79},{"class":47,"line":78},3,[80,85],{"type":13,"tag":45,"props":81,"children":82},{"style":52},[83],{"type":18,"value":84}," void*",{"type":13,"tag":45,"props":86,"children":87},{"style":63},[88],{"type":18,"value":89}," pNext;\n",{"type":13,"tag":45,"props":91,"children":93},{"class":47,"line":92},4,[94],{"type":13,"tag":45,"props":95,"children":96},{"style":63},[97],{"type":18,"value":98}," VkBool32 bufferDeviceAddress;\n",{"type":13,"tag":45,"props":100,"children":102},{"class":47,"line":101},5,[103],{"type":13,"tag":45,"props":104,"children":105},{"style":63},[106],{"type":18,"value":107}," VkBool32 bufferDeviceAddressCaptureReplay;\n",{"type":13,"tag":45,"props":109,"children":111},{"class":47,"line":110},6,[112],{"type":13,"tag":45,"props":113,"children":114},{"style":63},[115],{"type":18,"value":116}," VkBool32 bufferDeviceAddressMultiDevice;\n",{"type":13,"tag":45,"props":118,"children":120},{"class":47,"line":119},7,[121],{"type":13,"tag":45,"props":122,"children":123},{"style":63},[124],{"type":18,"value":125},"} VkPhysicalDeviceBufferDeviceAddressFeaturesEXT;\n",{"type":13,"tag":33,"props":127,"children":132},{"className":128,"code":129,"filename":130,"language":131,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct PhysicalDeviceBufferDeviceAddressFeaturesEXT {\n s_type: vk::StructureType,\n p_next: *mut c_void,\n buffer_device_address: vk::Bool32,\n buffer_device_address_capture_replay: vk::Bool32,\n buffer_device_address_multi_device: vk::Bool32,\n}\n","Rust","rs",[133],{"type":13,"tag":21,"props":134,"children":135},{"__ignoreMap":39},[136,159,192,214,243,271,299],{"type":13,"tag":45,"props":137,"children":138},{"class":47,"line":48},[139,144,148,154],{"type":13,"tag":45,"props":140,"children":141},{"style":52},[142],{"type":18,"value":143},"pub",{"type":13,"tag":45,"props":145,"children":146},{"style":52},[147],{"type":18,"value":60},{"type":13,"tag":45,"props":149,"children":151},{"style":150},"--shiki-default:#953800;--shiki-dark:#FFA657",[152],{"type":18,"value":153}," PhysicalDeviceBufferDeviceAddressFeaturesEXT",{"type":13,"tag":45,"props":155,"children":156},{"style":63},[157],{"type":18,"value":158}," {\n",{"type":13,"tag":45,"props":160,"children":161},{"class":47,"line":69},[162,167,172,177,182,187],{"type":13,"tag":45,"props":163,"children":164},{"style":63},[165],{"type":18,"value":166}," s_type",{"type":13,"tag":45,"props":168,"children":169},{"style":52},[170],{"type":18,"value":171},":",{"type":13,"tag":45,"props":173,"children":174},{"style":150},[175],{"type":18,"value":176}," vk",{"type":13,"tag":45,"props":178,"children":179},{"style":52},[180],{"type":18,"value":181},"::",{"type":13,"tag":45,"props":183,"children":184},{"style":150},[185],{"type":18,"value":186},"StructureType",{"type":13,"tag":45,"props":188,"children":189},{"style":63},[190],{"type":18,"value":191},",\n",{"type":13,"tag":45,"props":193,"children":194},{"class":47,"line":78},[195,200,204,209],{"type":13,"tag":45,"props":196,"children":197},{"style":63},[198],{"type":18,"value":199}," p_next",{"type":13,"tag":45,"props":201,"children":202},{"style":52},[203],{"type":18,"value":171},{"type":13,"tag":45,"props":205,"children":206},{"style":52},[207],{"type":18,"value":208}," *mut",{"type":13,"tag":45,"props":210,"children":211},{"style":63},[212],{"type":18,"value":213}," c_void,\n",{"type":13,"tag":45,"props":215,"children":216},{"class":47,"line":92},[217,222,226,230,234,239],{"type":13,"tag":45,"props":218,"children":219},{"style":63},[220],{"type":18,"value":221}," buffer_device_address",{"type":13,"tag":45,"props":223,"children":224},{"style":52},[225],{"type":18,"value":171},{"type":13,"tag":45,"props":227,"children":228},{"style":150},[229],{"type":18,"value":176},{"type":13,"tag":45,"props":231,"children":232},{"style":52},[233],{"type":18,"value":181},{"type":13,"tag":45,"props":235,"children":236},{"style":150},[237],{"type":18,"value":238},"Bool32",{"type":13,"tag":45,"props":240,"children":241},{"style":63},[242],{"type":18,"value":191},{"type":13,"tag":45,"props":244,"children":245},{"class":47,"line":101},[246,251,255,259,263,267],{"type":13,"tag":45,"props":247,"children":248},{"style":63},[249],{"type":18,"value":250}," buffer_device_address_capture_replay",{"type":13,"tag":45,"props":252,"children":253},{"style":52},[254],{"type":18,"value":171},{"type":13,"tag":45,"props":256,"children":257},{"style":150},[258],{"type":18,"value":176},{"type":13,"tag":45,"props":260,"children":261},{"style":52},[262],{"type":18,"value":181},{"type":13,"tag":45,"props":264,"children":265},{"style":150},[266],{"type":18,"value":238},{"type":13,"tag":45,"props":268,"children":269},{"style":63},[270],{"type":18,"value":191},{"type":13,"tag":45,"props":272,"children":273},{"class":47,"line":110},[274,279,283,287,291,295],{"type":13,"tag":45,"props":275,"children":276},{"style":63},[277],{"type":18,"value":278}," buffer_device_address_multi_device",{"type":13,"tag":45,"props":280,"children":281},{"style":52},[282],{"type":18,"value":171},{"type":13,"tag":45,"props":284,"children":285},{"style":150},[286],{"type":18,"value":176},{"type":13,"tag":45,"props":288,"children":289},{"style":52},[290],{"type":18,"value":181},{"type":13,"tag":45,"props":292,"children":293},{"style":150},[294],{"type":18,"value":238},{"type":13,"tag":45,"props":296,"children":297},{"style":63},[298],{"type":18,"value":191},{"type":13,"tag":45,"props":300,"children":301},{"class":47,"line":119},[302],{"type":13,"tag":45,"props":303,"children":304},{"style":63},[305],{"type":18,"value":306},"}\n",{"type":13,"tag":29,"props":308,"children":309},{},[310,329],{"type":13,"tag":33,"props":311,"children":313},{"className":35,"code":312,"filename":37,"language":38,"meta":39,"style":39},"typedef VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkPhysicalDeviceBufferAddressFeaturesEXT;\n",[314],{"type":13,"tag":21,"props":315,"children":316},{"__ignoreMap":39},[317],{"type":13,"tag":45,"props":318,"children":319},{"class":47,"line":48},[320,324],{"type":13,"tag":45,"props":321,"children":322},{"style":52},[323],{"type":18,"value":55},{"type":13,"tag":45,"props":325,"children":326},{"style":63},[327],{"type":18,"value":328}," VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkPhysicalDeviceBufferAddressFeaturesEXT;\n",{"type":13,"tag":33,"props":330,"children":332},{"className":128,"code":331,"filename":130,"language":131,"meta":39,"style":39},"type PhysicalDeviceBufferAddressFeaturesEXT = vk::PhysicalDeviceBufferDeviceAddressFeaturesEXT;\n",[333],{"type":13,"tag":21,"props":334,"children":335},{"__ignoreMap":39},[336],{"type":13,"tag":45,"props":337,"children":338},{"class":47,"line":48},[339,344,349,354,358,362,367],{"type":13,"tag":45,"props":340,"children":341},{"style":52},[342],{"type":18,"value":343},"type",{"type":13,"tag":45,"props":345,"children":346},{"style":150},[347],{"type":18,"value":348}," PhysicalDeviceBufferAddressFeaturesEXT",{"type":13,"tag":45,"props":350,"children":351},{"style":52},[352],{"type":18,"value":353}," =",{"type":13,"tag":45,"props":355,"children":356},{"style":150},[357],{"type":18,"value":176},{"type":13,"tag":45,"props":359,"children":360},{"style":52},[361],{"type":18,"value":181},{"type":13,"tag":45,"props":363,"children":364},{"style":150},[365],{"type":18,"value":366},"PhysicalDeviceBufferDeviceAddressFeaturesEXT",{"type":13,"tag":45,"props":368,"children":369},{"style":63},[370],{"type":18,"value":371},";\n",{"type":13,"tag":14,"props":373,"children":374},{},[375],{"type":18,"value":376},"This structure describes the following features:",{"type":13,"tag":378,"props":379,"children":380},"ul",{},[381,402,421,447,462],{"type":13,"tag":382,"props":383,"children":384},"li",{},[385,391,393,400],{"type":13,"tag":21,"props":386,"children":388},{"className":387},[],[389],{"type":18,"value":390},"sType",{"type":18,"value":392}," is a ",{"type":13,"tag":394,"props":395,"children":397},"a",{"href":396},"/man/VkStructureType",[398],{"type":18,"value":399},"VkStructureType",{"type":18,"value":401}," value identifying this structure.",{"type":13,"tag":382,"props":403,"children":404},{},[405,411,413,419],{"type":13,"tag":21,"props":406,"children":408},{"className":407},[],[409],{"type":18,"value":410},"pNext",{"type":18,"value":412}," is ",{"type":13,"tag":21,"props":414,"children":416},{"className":415},[],[417],{"type":18,"value":418},"NULL",{"type":18,"value":420}," or a pointer to a structure extending this\nstructure.",{"type":13,"tag":382,"props":422,"children":423},{},[424,429,431,437,439,445],{"type":13,"tag":425,"props":426,"children":428},"anchor",{"id":427},"features-bufferDeviceAddressEXT",[],{"type":18,"value":430}," ",{"type":13,"tag":21,"props":432,"children":434},{"className":433},[],[435],{"type":18,"value":436},"bufferDeviceAddress",{"type":18,"value":438}," indicates\nthat the implementation supports accessing buffer memory in shaders as\nstorage buffers via an address queried from\n",{"type":13,"tag":394,"props":440,"children":442},{"href":441},"/man/vkGetBufferDeviceAddressEXT",[443],{"type":18,"value":444},"vkGetBufferDeviceAddressEXT",{"type":18,"value":446},".",{"type":13,"tag":382,"props":448,"children":449},{},[450,454,460],{"type":13,"tag":425,"props":451,"children":453},{"id":452},"features-bufferDeviceAddressCaptureReplayEXT",[],{"type":13,"tag":21,"props":455,"children":457},{"className":456},[],[458],{"type":18,"value":459},"bufferDeviceAddressCaptureReplay",{"type":18,"value":461}," indicates that the implementation\nsupports saving and reusing buffer addresses, e.g. for trace capture and\nreplay.",{"type":13,"tag":382,"props":463,"children":464},{},[465,469,475,477,482,484,489],{"type":13,"tag":425,"props":466,"children":468},{"id":467},"features-bufferDeviceAddressMultiDeviceEXT",[],{"type":13,"tag":21,"props":470,"children":472},{"className":471},[],[473],{"type":18,"value":474},"bufferDeviceAddressMultiDevice",{"type":18,"value":476}," indicates that the implementation\nsupports the ",{"type":13,"tag":21,"props":478,"children":480},{"className":479},[],[481],{"type":18,"value":436},{"type":18,"value":483}," feature for logical devices\ncreated with multiple physical devices.\nIf this feature is not supported, buffer addresses ",{"type":13,"tag":485,"props":486,"children":488},"normative",{"type":487},"must",[],{"type":18,"value":490}," not be queried\non a logical device created with more than one physical device.",{"type":13,"tag":14,"props":492,"children":493},{},[494,496,501,503,508,510,516,518,524,526,531,532,536,538,543,545,551],{"type":18,"value":495},"If the ",{"type":13,"tag":21,"props":497,"children":499},{"className":498},[],[500],{"type":18,"value":4},{"type":18,"value":502}," structure is included in the ",{"type":13,"tag":21,"props":504,"children":506},{"className":505},[],[507],{"type":18,"value":410},{"type":18,"value":509}," chain of the\n",{"type":13,"tag":394,"props":511,"children":513},{"href":512},"/man/VkPhysicalDeviceFeatures2",[514],{"type":18,"value":515},"VkPhysicalDeviceFeatures2",{"type":18,"value":517}," structure passed to\n",{"type":13,"tag":394,"props":519,"children":521},{"href":520},"/man/vkGetPhysicalDeviceFeatures2",[522],{"type":18,"value":523},"vkGetPhysicalDeviceFeatures2",{"type":18,"value":525},", it is filled in to indicate whether each\ncorresponding feature is supported.\n",{"type":13,"tag":21,"props":527,"children":529},{"className":528},[],[530],{"type":18,"value":4},{"type":18,"value":430},{"type":13,"tag":485,"props":533,"children":535},{"type":534},"can",[],{"type":18,"value":537}," also be used in the ",{"type":13,"tag":21,"props":539,"children":541},{"className":540},[],[542],{"type":18,"value":410},{"type":18,"value":544}," chain of\n",{"type":13,"tag":394,"props":546,"children":548},{"href":547},"/man/VkDeviceCreateInfo",[549],{"type":18,"value":550},"VkDeviceCreateInfo",{"type":18,"value":552}," to selectively enable these features.",{"type":13,"tag":554,"props":555,"children":556},"note",{},[557],{"type":13,"tag":14,"props":558,"children":559},{},[560,561,566,568,574,576,581],{"type":18,"value":19},{"type":13,"tag":21,"props":562,"children":564},{"className":563},[],[565],{"type":18,"value":4},{"type":18,"value":567}," structure has the\nsame members as the ",{"type":13,"tag":21,"props":569,"children":571},{"className":570},[],[572],{"type":18,"value":573},"VkPhysicalDeviceBufferDeviceAddressFeatures",{"type":18,"value":575},"\nstructure, but the functionality indicated by the members is expressed\ndifferently.\nThe features indicated by the\n",{"type":13,"tag":21,"props":577,"children":579},{"className":578},[],[580],{"type":18,"value":573},{"type":18,"value":582}," structure requires\nadditional flags to be passed at memory allocation time, and the capture and\nreplay mechanism is built around opaque capture addresses for buffer and\nmemory objects.",{"type":13,"tag":584,"props":585,"children":587},"validity-group",{"name":586},"Valid Usage (Implicit)",[588],{"type":13,"tag":589,"props":590,"children":592},"validity-field",{"name":591},"VUID-VkPhysicalDeviceBufferDeviceAddressFeaturesEXT-sType-sType",[593],{"type":13,"tag":14,"props":594,"children":595},{},[596,601,602,605,607],{"type":13,"tag":21,"props":597,"children":599},{"className":598},[],[600],{"type":18,"value":390},{"type":18,"value":430},{"type":13,"tag":485,"props":603,"children":604},{"type":487},[],{"type":18,"value":606}," be ",{"type":13,"tag":21,"props":608,"children":610},{"className":609},[],[611],{"type":18,"value":612},"VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT",{"type":13,"tag":614,"props":615,"children":616},"style",{},[617],{"type":18,"value":618},"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":620},[],"markdown",1725732565861]