[{"data":1,"prerenderedAt":695},["ShallowReactive",2],{"hhZXSIxNKK":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":694,"_id":4},"VkPhysicalDeviceRayTracingPipelineFeaturesKHR","Structure describing the ray tracing features that can be supported by an implementation","VK_KHR_ray_tracing_pipeline","structs",[],{"type":10,"children":11,"toc":692},"root",[12,28,381,386,551,613,658,686],{"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 defined\nas:",{"type":13,"tag":29,"props":30,"children":31},"code-group",{},[32,144],{"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 VkPhysicalDeviceRayTracingPipelineFeaturesKHR {\n VkStructureType sType;\n void* pNext;\n VkBool32 rayTracingPipeline;\n VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplay;\n VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed;\n VkBool32 rayTracingPipelineTraceRaysIndirect;\n VkBool32 rayTraversalPrimitiveCulling;\n} VkPhysicalDeviceRayTracingPipelineFeaturesKHR;\n","C","c","",[41],{"type":13,"tag":21,"props":42,"children":43},{"__ignoreMap":39},[44,67,76,90,99,108,117,126,135],{"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}," VkPhysicalDeviceRayTracingPipelineFeaturesKHR {\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 rayTracingPipeline;\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 rayTracingPipelineShaderGroupHandleCaptureReplay;\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 rayTracingPipelineShaderGroupHandleCaptureReplayMixed;\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}," VkBool32 rayTracingPipelineTraceRaysIndirect;\n",{"type":13,"tag":45,"props":127,"children":129},{"class":47,"line":128},8,[130],{"type":13,"tag":45,"props":131,"children":132},{"style":63},[133],{"type":18,"value":134}," VkBool32 rayTraversalPrimitiveCulling;\n",{"type":13,"tag":45,"props":136,"children":138},{"class":47,"line":137},9,[139],{"type":13,"tag":45,"props":140,"children":141},{"style":63},[142],{"type":18,"value":143},"} VkPhysicalDeviceRayTracingPipelineFeaturesKHR;\n",{"type":13,"tag":33,"props":145,"children":150},{"className":146,"code":147,"filename":148,"language":149,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct PhysicalDeviceRayTracingPipelineFeaturesKHR {\n s_type: vk::StructureType,\n p_next: *mut c_void,\n ray_tracing_pipeline: vk::Bool32,\n ray_tracing_pipeline_shader_group_handle_capture_replay: vk::Bool32,\n ray_tracing_pipeline_shader_group_handle_capture_replay_mixed: vk::Bool32,\n ray_tracing_pipeline_trace_rays_indirect: vk::Bool32,\n ray_traversal_primitive_culling: vk::Bool32,\n}\n","Rust","rs",[151],{"type":13,"tag":21,"props":152,"children":153},{"__ignoreMap":39},[154,177,210,232,261,289,317,345,373],{"type":13,"tag":45,"props":155,"children":156},{"class":47,"line":48},[157,162,166,172],{"type":13,"tag":45,"props":158,"children":159},{"style":52},[160],{"type":18,"value":161},"pub",{"type":13,"tag":45,"props":163,"children":164},{"style":52},[165],{"type":18,"value":60},{"type":13,"tag":45,"props":167,"children":169},{"style":168},"--shiki-default:#953800;--shiki-dark:#FFA657",[170],{"type":18,"value":171}," PhysicalDeviceRayTracingPipelineFeaturesKHR",{"type":13,"tag":45,"props":173,"children":174},{"style":63},[175],{"type":18,"value":176}," {\n",{"type":13,"tag":45,"props":178,"children":179},{"class":47,"line":69},[180,185,190,195,200,205],{"type":13,"tag":45,"props":181,"children":182},{"style":63},[183],{"type":18,"value":184}," s_type",{"type":13,"tag":45,"props":186,"children":187},{"style":52},[188],{"type":18,"value":189},":",{"type":13,"tag":45,"props":191,"children":192},{"style":168},[193],{"type":18,"value":194}," vk",{"type":13,"tag":45,"props":196,"children":197},{"style":52},[198],{"type":18,"value":199},"::",{"type":13,"tag":45,"props":201,"children":202},{"style":168},[203],{"type":18,"value":204},"StructureType",{"type":13,"tag":45,"props":206,"children":207},{"style":63},[208],{"type":18,"value":209},",\n",{"type":13,"tag":45,"props":211,"children":212},{"class":47,"line":78},[213,218,222,227],{"type":13,"tag":45,"props":214,"children":215},{"style":63},[216],{"type":18,"value":217}," p_next",{"type":13,"tag":45,"props":219,"children":220},{"style":52},[221],{"type":18,"value":189},{"type":13,"tag":45,"props":223,"children":224},{"style":52},[225],{"type":18,"value":226}," *mut",{"type":13,"tag":45,"props":228,"children":229},{"style":63},[230],{"type":18,"value":231}," c_void,\n",{"type":13,"tag":45,"props":233,"children":234},{"class":47,"line":92},[235,240,244,248,252,257],{"type":13,"tag":45,"props":236,"children":237},{"style":63},[238],{"type":18,"value":239}," ray_tracing_pipeline",{"type":13,"tag":45,"props":241,"children":242},{"style":52},[243],{"type":18,"value":189},{"type":13,"tag":45,"props":245,"children":246},{"style":168},[247],{"type":18,"value":194},{"type":13,"tag":45,"props":249,"children":250},{"style":52},[251],{"type":18,"value":199},{"type":13,"tag":45,"props":253,"children":254},{"style":168},[255],{"type":18,"value":256},"Bool32",{"type":13,"tag":45,"props":258,"children":259},{"style":63},[260],{"type":18,"value":209},{"type":13,"tag":45,"props":262,"children":263},{"class":47,"line":101},[264,269,273,277,281,285],{"type":13,"tag":45,"props":265,"children":266},{"style":63},[267],{"type":18,"value":268}," ray_tracing_pipeline_shader_group_handle_capture_replay",{"type":13,"tag":45,"props":270,"children":271},{"style":52},[272],{"type":18,"value":189},{"type":13,"tag":45,"props":274,"children":275},{"style":168},[276],{"type":18,"value":194},{"type":13,"tag":45,"props":278,"children":279},{"style":52},[280],{"type":18,"value":199},{"type":13,"tag":45,"props":282,"children":283},{"style":168},[284],{"type":18,"value":256},{"type":13,"tag":45,"props":286,"children":287},{"style":63},[288],{"type":18,"value":209},{"type":13,"tag":45,"props":290,"children":291},{"class":47,"line":110},[292,297,301,305,309,313],{"type":13,"tag":45,"props":293,"children":294},{"style":63},[295],{"type":18,"value":296}," ray_tracing_pipeline_shader_group_handle_capture_replay_mixed",{"type":13,"tag":45,"props":298,"children":299},{"style":52},[300],{"type":18,"value":189},{"type":13,"tag":45,"props":302,"children":303},{"style":168},[304],{"type":18,"value":194},{"type":13,"tag":45,"props":306,"children":307},{"style":52},[308],{"type":18,"value":199},{"type":13,"tag":45,"props":310,"children":311},{"style":168},[312],{"type":18,"value":256},{"type":13,"tag":45,"props":314,"children":315},{"style":63},[316],{"type":18,"value":209},{"type":13,"tag":45,"props":318,"children":319},{"class":47,"line":119},[320,325,329,333,337,341],{"type":13,"tag":45,"props":321,"children":322},{"style":63},[323],{"type":18,"value":324}," ray_tracing_pipeline_trace_rays_indirect",{"type":13,"tag":45,"props":326,"children":327},{"style":52},[328],{"type":18,"value":189},{"type":13,"tag":45,"props":330,"children":331},{"style":168},[332],{"type":18,"value":194},{"type":13,"tag":45,"props":334,"children":335},{"style":52},[336],{"type":18,"value":199},{"type":13,"tag":45,"props":338,"children":339},{"style":168},[340],{"type":18,"value":256},{"type":13,"tag":45,"props":342,"children":343},{"style":63},[344],{"type":18,"value":209},{"type":13,"tag":45,"props":346,"children":347},{"class":47,"line":128},[348,353,357,361,365,369],{"type":13,"tag":45,"props":349,"children":350},{"style":63},[351],{"type":18,"value":352}," ray_traversal_primitive_culling",{"type":13,"tag":45,"props":354,"children":355},{"style":52},[356],{"type":18,"value":189},{"type":13,"tag":45,"props":358,"children":359},{"style":168},[360],{"type":18,"value":194},{"type":13,"tag":45,"props":362,"children":363},{"style":52},[364],{"type":18,"value":199},{"type":13,"tag":45,"props":366,"children":367},{"style":168},[368],{"type":18,"value":256},{"type":13,"tag":45,"props":370,"children":371},{"style":63},[372],{"type":18,"value":209},{"type":13,"tag":45,"props":374,"children":375},{"class":47,"line":137},[376],{"type":13,"tag":45,"props":377,"children":378},{"style":63},[379],{"type":18,"value":380},"}\n",{"type":13,"tag":14,"props":382,"children":383},{},[384],{"type":18,"value":385},"This structure describes the following features:",{"type":13,"tag":387,"props":388,"children":389},"ul",{},[390,411,430,456,471,507,529],{"type":13,"tag":391,"props":392,"children":393},"li",{},[394,400,402,409],{"type":13,"tag":21,"props":395,"children":397},{"className":396},[],[398],{"type":18,"value":399},"sType",{"type":18,"value":401}," is a ",{"type":13,"tag":403,"props":404,"children":406},"a",{"href":405},"/man/VkStructureType",[407],{"type":18,"value":408},"VkStructureType",{"type":18,"value":410}," value identifying this structure.",{"type":13,"tag":391,"props":412,"children":413},{},[414,420,422,428],{"type":13,"tag":21,"props":415,"children":417},{"className":416},[],[418],{"type":18,"value":419},"pNext",{"type":18,"value":421}," is ",{"type":13,"tag":21,"props":423,"children":425},{"className":424},[],[426],{"type":18,"value":427},"NULL",{"type":18,"value":429}," or a pointer to a structure extending this\nstructure.",{"type":13,"tag":391,"props":431,"children":432},{},[433,438,440,446,448,454],{"type":13,"tag":434,"props":435,"children":437},"anchor",{"id":436},"features-rayTracingPipeline",[],{"type":18,"value":439}," ",{"type":13,"tag":21,"props":441,"children":443},{"className":442},[],[444],{"type":18,"value":445},"rayTracingPipeline",{"type":18,"value":447}," indicates\nwhether the implementation supports the ray tracing pipeline\nfunctionality.\nSee ",{"type":13,"tag":403,"props":449,"children":451},{"href":450},"/chapters/ray-tracing#ray-tracing",[452],{"type":18,"value":453},"Ray Tracing",{"type":18,"value":455},".",{"type":13,"tag":391,"props":457,"children":458},{},[459,463,469],{"type":13,"tag":434,"props":460,"children":462},{"id":461},"features-rayTracingPipelineShaderGroupHandleCaptureReplay",[],{"type":13,"tag":21,"props":464,"children":466},{"className":465},[],[467],{"type":18,"value":468},"rayTracingPipelineShaderGroupHandleCaptureReplay",{"type":18,"value":470}," indicates whether\nthe implementation supports saving and reusing shader group handles,\ne.g. for trace capture and replay.",{"type":13,"tag":391,"props":472,"children":473},{},[474,478,484,486,492,494,499,501,505],{"type":13,"tag":434,"props":475,"children":477},{"id":476},"features-rayTracingPipelineShaderGroupHandleCaptureReplayMixed",[],{"type":13,"tag":21,"props":479,"children":481},{"className":480},[],[482],{"type":18,"value":483},"rayTracingPipelineShaderGroupHandleCaptureReplayMixed",{"type":18,"value":485}," indicates\nwhether the implementation supports reuse of shader group handles being\narbitrarily mixed with creation of non-reused shader group handles.\nIf this is ",{"type":13,"tag":21,"props":487,"children":489},{"className":488},[],[490],{"type":18,"value":491},"VK_FALSE",{"type":18,"value":493},", all reused shader group handles ",{"type":13,"tag":495,"props":496,"children":498},"normative",{"type":497},"must",[],{"type":18,"value":500}," be\nspecified before any non-reused handles ",{"type":13,"tag":495,"props":502,"children":504},{"type":503},"may",[],{"type":18,"value":506}," be created.",{"type":13,"tag":391,"props":508,"children":509},{},[510,514,520,522,528],{"type":13,"tag":434,"props":511,"children":513},{"id":512},"features-rayTracingPipelineTraceRaysIndirect",[],{"type":13,"tag":21,"props":515,"children":517},{"className":516},[],[518],{"type":18,"value":519},"rayTracingPipelineTraceRaysIndirect",{"type":18,"value":521}," indicates whether the\nimplementation supports indirect ray tracing commands, e.g.\n",{"type":13,"tag":403,"props":523,"children":525},{"href":524},"/man/vkCmdTraceRaysIndirectKHR",[526],{"type":18,"value":527},"vkCmdTraceRaysIndirectKHR",{"type":18,"value":455},{"type":13,"tag":391,"props":530,"children":531},{},[532,536,542,544,550],{"type":13,"tag":434,"props":533,"children":535},{"id":534},"features-rayTraversalPrimitiveCulling",[],{"type":13,"tag":21,"props":537,"children":539},{"className":538},[],[540],{"type":18,"value":541},"rayTraversalPrimitiveCulling",{"type":18,"value":543}," indicates whether the implementation\nsupports ",{"type":13,"tag":403,"props":545,"children":547},{"href":546},"/chapters/ray-traversal#ray-traversal-culling-primitive",[548],{"type":18,"value":549},"primitive culling during ray\ntraversal",{"type":18,"value":455},{"type":13,"tag":14,"props":552,"children":553},{},[554,556,561,563,568,570,576,578,584,586,591,592,596,598,603,605,611],{"type":18,"value":555},"If the ",{"type":13,"tag":21,"props":557,"children":559},{"className":558},[],[560],{"type":18,"value":4},{"type":18,"value":562}," structure is included in the ",{"type":13,"tag":21,"props":564,"children":566},{"className":565},[],[567],{"type":18,"value":419},{"type":18,"value":569}," chain of the\n",{"type":13,"tag":403,"props":571,"children":573},{"href":572},"/man/VkPhysicalDeviceFeatures2",[574],{"type":18,"value":575},"VkPhysicalDeviceFeatures2",{"type":18,"value":577}," structure passed to\n",{"type":13,"tag":403,"props":579,"children":581},{"href":580},"/man/vkGetPhysicalDeviceFeatures2",[582],{"type":18,"value":583},"vkGetPhysicalDeviceFeatures2",{"type":18,"value":585},", it is filled in to indicate whether each\ncorresponding feature is supported.\n",{"type":13,"tag":21,"props":587,"children":589},{"className":588},[],[590],{"type":18,"value":4},{"type":18,"value":439},{"type":13,"tag":495,"props":593,"children":595},{"type":594},"can",[],{"type":18,"value":597}," also be used in the ",{"type":13,"tag":21,"props":599,"children":601},{"className":600},[],[602],{"type":18,"value":419},{"type":18,"value":604}," chain of\n",{"type":13,"tag":403,"props":606,"children":608},{"href":607},"/man/VkDeviceCreateInfo",[609],{"type":18,"value":610},"VkDeviceCreateInfo",{"type":18,"value":612}," to selectively enable these features.",{"type":13,"tag":614,"props":615,"children":617},"validity-group",{"name":616},"Valid Usage",[618],{"type":13,"tag":619,"props":620,"children":622},"validity-field",{"name":621},"VUID-VkPhysicalDeviceRayTracingPipelineFeaturesKHR-rayTracingPipelineShaderGroupHandleCaptureReplayMixed-03575",[623],{"type":13,"tag":14,"props":624,"children":625},{},[626,628,633,635,641,643,648,651,653],{"type":18,"value":627},"If ",{"type":13,"tag":21,"props":629,"children":631},{"className":630},[],[632],{"type":18,"value":483},{"type":18,"value":634}," is\n",{"type":13,"tag":21,"props":636,"children":638},{"className":637},[],[639],{"type":18,"value":640},"VK_TRUE",{"type":18,"value":642},", ",{"type":13,"tag":21,"props":644,"children":646},{"className":645},[],[647],{"type":18,"value":468},{"type":13,"tag":495,"props":649,"children":650},{"type":497},[],{"type":18,"value":652}," also be ",{"type":13,"tag":21,"props":654,"children":656},{"className":655},[],[657],{"type":18,"value":640},{"type":13,"tag":614,"props":659,"children":661},{"name":660},"Valid Usage (Implicit)",[662],{"type":13,"tag":619,"props":663,"children":665},{"name":664},"VUID-VkPhysicalDeviceRayTracingPipelineFeaturesKHR-sType-sType",[666],{"type":13,"tag":14,"props":667,"children":668},{},[669,674,675,678,680],{"type":13,"tag":21,"props":670,"children":672},{"className":671},[],[673],{"type":18,"value":399},{"type":18,"value":439},{"type":13,"tag":495,"props":676,"children":677},{"type":497},[],{"type":18,"value":679}," be ",{"type":13,"tag":21,"props":681,"children":683},{"className":682},[],[684],{"type":18,"value":685},"VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR",{"type":13,"tag":687,"props":688,"children":689},"style",{},[690],{"type":18,"value":691},"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":693},[],"markdown",1725732572946]