[{"data":1,"prerenderedAt":1221},["ShallowReactive",2],{"zG7QPASEo2":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":1220,"_id":4},"VkPipelineCreateFlagBits2KHR","Bitmask controlling how a pipeline is created","VK_KHR_maintenance5","enums",[],{"type":10,"children":11,"toc":1218},"root",[12,45,375,1144,1171,1196,1212],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,25,27,34,36,43],{"type":18,"value":19},"text","Bits which ",{"type":13,"tag":21,"props":22,"children":24},"normative",{"type":23},"can",[],{"type":18,"value":26}," be set in\n",{"type":13,"tag":28,"props":29,"children":31},"a",{"href":30},"/man/VkPipelineCreateFlags2CreateInfoKHR",[32],{"type":18,"value":33},"VkPipelineCreateFlags2CreateInfoKHR",{"type":18,"value":35},"::",{"type":13,"tag":37,"props":38,"children":40},"code",{"className":39},[],[41],{"type":18,"value":42},"flags",{"type":18,"value":44},", specifying how a\npipeline is created, are:",{"type":13,"tag":46,"props":47,"children":48},"code-group",{},[49,188],{"type":13,"tag":50,"props":51,"children":57},"pre",{"className":52,"code":53,"filename":54,"language":55,"meta":56,"style":56},"language-c shiki shiki-themes github-light-default github-dark-default","typedef enum VkPipelineCreateFlagBits2KHR {\n VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHR = 0x00000001ULL,\n VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHR = 0x00000002ULL,\n VK_PIPELINE_CREATE_2_DERIVATIVE_BIT_KHR = 0x00000004ULL,\n} VkPipelineCreateFlagBits2KHR;\n","C","c","",[58],{"type":13,"tag":37,"props":59,"children":60},{"__ignoreMap":56},[61,84,119,149,179],{"type":13,"tag":62,"props":63,"children":66},"span",{"class":64,"line":65},"line",1,[67,73,78],{"type":13,"tag":62,"props":68,"children":70},{"style":69},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[71],{"type":18,"value":72},"typedef",{"type":13,"tag":62,"props":74,"children":75},{"style":69},[76],{"type":18,"value":77}," enum",{"type":13,"tag":62,"props":79,"children":81},{"style":80},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[82],{"type":18,"value":83}," VkPipelineCreateFlagBits2KHR {\n",{"type":13,"tag":62,"props":85,"children":87},{"class":64,"line":86},2,[88,93,98,103,109,114],{"type":13,"tag":62,"props":89,"children":90},{"style":80},[91],{"type":18,"value":92}," VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHR ",{"type":13,"tag":62,"props":94,"children":95},{"style":69},[96],{"type":18,"value":97},"=",{"type":13,"tag":62,"props":99,"children":100},{"style":69},[101],{"type":18,"value":102}," 0x",{"type":13,"tag":62,"props":104,"children":106},{"style":105},"--shiki-default:#0550AE;--shiki-dark:#79C0FF",[107],{"type":18,"value":108},"00000001",{"type":13,"tag":62,"props":110,"children":111},{"style":69},[112],{"type":18,"value":113},"ULL",{"type":13,"tag":62,"props":115,"children":116},{"style":80},[117],{"type":18,"value":118},",\n",{"type":13,"tag":62,"props":120,"children":122},{"class":64,"line":121},3,[123,128,132,136,141,145],{"type":13,"tag":62,"props":124,"children":125},{"style":80},[126],{"type":18,"value":127}," VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHR ",{"type":13,"tag":62,"props":129,"children":130},{"style":69},[131],{"type":18,"value":97},{"type":13,"tag":62,"props":133,"children":134},{"style":69},[135],{"type":18,"value":102},{"type":13,"tag":62,"props":137,"children":138},{"style":105},[139],{"type":18,"value":140},"00000002",{"type":13,"tag":62,"props":142,"children":143},{"style":69},[144],{"type":18,"value":113},{"type":13,"tag":62,"props":146,"children":147},{"style":80},[148],{"type":18,"value":118},{"type":13,"tag":62,"props":150,"children":152},{"class":64,"line":151},4,[153,158,162,166,171,175],{"type":13,"tag":62,"props":154,"children":155},{"style":80},[156],{"type":18,"value":157}," VK_PIPELINE_CREATE_2_DERIVATIVE_BIT_KHR ",{"type":13,"tag":62,"props":159,"children":160},{"style":69},[161],{"type":18,"value":97},{"type":13,"tag":62,"props":163,"children":164},{"style":69},[165],{"type":18,"value":102},{"type":13,"tag":62,"props":167,"children":168},{"style":105},[169],{"type":18,"value":170},"00000004",{"type":13,"tag":62,"props":172,"children":173},{"style":69},[174],{"type":18,"value":113},{"type":13,"tag":62,"props":176,"children":177},{"style":80},[178],{"type":18,"value":118},{"type":13,"tag":62,"props":180,"children":182},{"class":64,"line":181},5,[183],{"type":13,"tag":62,"props":184,"children":185},{"style":80},[186],{"type":18,"value":187},"} VkPipelineCreateFlagBits2KHR;\n",{"type":13,"tag":50,"props":189,"children":194},{"className":190,"code":191,"filename":192,"language":193,"meta":56,"style":56},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct PipelineCreateFlagBits2KHR(u64);\nimpl PipelineCreateFlagBits2KHR {\n pub const DISABLE_OPTIMIZATION: Self = 0x00000001;\n pub const ALLOW_DERIVATIVES: Self = 0x00000002;\n pub const DERIVATIVE: Self = 0x00000004;\n}\n","Rust","rs",[195],{"type":13,"tag":37,"props":196,"children":197},{"__ignoreMap":56},[198,232,249,292,329,366],{"type":13,"tag":62,"props":199,"children":200},{"class":64,"line":65},[201,206,211,217,222,227],{"type":13,"tag":62,"props":202,"children":203},{"style":69},[204],{"type":18,"value":205},"pub",{"type":13,"tag":62,"props":207,"children":208},{"style":69},[209],{"type":18,"value":210}," struct",{"type":13,"tag":62,"props":212,"children":214},{"style":213},"--shiki-default:#953800;--shiki-dark:#FFA657",[215],{"type":18,"value":216}," PipelineCreateFlagBits2KHR",{"type":13,"tag":62,"props":218,"children":219},{"style":80},[220],{"type":18,"value":221},"(",{"type":13,"tag":62,"props":223,"children":224},{"style":213},[225],{"type":18,"value":226},"u64",{"type":13,"tag":62,"props":228,"children":229},{"style":80},[230],{"type":18,"value":231},");\n",{"type":13,"tag":62,"props":233,"children":234},{"class":64,"line":86},[235,240,244],{"type":13,"tag":62,"props":236,"children":237},{"style":69},[238],{"type":18,"value":239},"impl",{"type":13,"tag":62,"props":241,"children":242},{"style":213},[243],{"type":18,"value":216},{"type":13,"tag":62,"props":245,"children":246},{"style":80},[247],{"type":18,"value":248}," {\n",{"type":13,"tag":62,"props":250,"children":251},{"class":64,"line":121},[252,257,262,267,272,277,282,287],{"type":13,"tag":62,"props":253,"children":254},{"style":69},[255],{"type":18,"value":256}," pub",{"type":13,"tag":62,"props":258,"children":259},{"style":69},[260],{"type":18,"value":261}," const",{"type":13,"tag":62,"props":263,"children":264},{"style":105},[265],{"type":18,"value":266}," DISABLE_OPTIMIZATION",{"type":13,"tag":62,"props":268,"children":269},{"style":69},[270],{"type":18,"value":271},":",{"type":13,"tag":62,"props":273,"children":274},{"style":105},[275],{"type":18,"value":276}," Self",{"type":13,"tag":62,"props":278,"children":279},{"style":69},[280],{"type":18,"value":281}," =",{"type":13,"tag":62,"props":283,"children":284},{"style":105},[285],{"type":18,"value":286}," 0x00000001",{"type":13,"tag":62,"props":288,"children":289},{"style":80},[290],{"type":18,"value":291},";\n",{"type":13,"tag":62,"props":293,"children":294},{"class":64,"line":151},[295,299,303,308,312,316,320,325],{"type":13,"tag":62,"props":296,"children":297},{"style":69},[298],{"type":18,"value":256},{"type":13,"tag":62,"props":300,"children":301},{"style":69},[302],{"type":18,"value":261},{"type":13,"tag":62,"props":304,"children":305},{"style":105},[306],{"type":18,"value":307}," ALLOW_DERIVATIVES",{"type":13,"tag":62,"props":309,"children":310},{"style":69},[311],{"type":18,"value":271},{"type":13,"tag":62,"props":313,"children":314},{"style":105},[315],{"type":18,"value":276},{"type":13,"tag":62,"props":317,"children":318},{"style":69},[319],{"type":18,"value":281},{"type":13,"tag":62,"props":321,"children":322},{"style":105},[323],{"type":18,"value":324}," 0x00000002",{"type":13,"tag":62,"props":326,"children":327},{"style":80},[328],{"type":18,"value":291},{"type":13,"tag":62,"props":330,"children":331},{"class":64,"line":181},[332,336,340,345,349,353,357,362],{"type":13,"tag":62,"props":333,"children":334},{"style":69},[335],{"type":18,"value":256},{"type":13,"tag":62,"props":337,"children":338},{"style":69},[339],{"type":18,"value":261},{"type":13,"tag":62,"props":341,"children":342},{"style":105},[343],{"type":18,"value":344}," DERIVATIVE",{"type":13,"tag":62,"props":346,"children":347},{"style":69},[348],{"type":18,"value":271},{"type":13,"tag":62,"props":350,"children":351},{"style":105},[352],{"type":18,"value":276},{"type":13,"tag":62,"props":354,"children":355},{"style":69},[356],{"type":18,"value":281},{"type":13,"tag":62,"props":358,"children":359},{"style":105},[360],{"type":18,"value":361}," 0x00000004",{"type":13,"tag":62,"props":363,"children":364},{"style":80},[365],{"type":18,"value":291},{"type":13,"tag":62,"props":367,"children":369},{"class":64,"line":368},6,[370],{"type":13,"tag":62,"props":371,"children":372},{"style":80},[373],{"type":18,"value":374},"}\n",{"type":13,"tag":376,"props":377,"children":378},"ul",{},[379,397,408,419,446,470,495,529,571,609,628,645,662,680,699,715,731,749,772,812,833,851,862,873,894,911,937,953,968,984,999,1015,1030,1109,1127],{"type":13,"tag":380,"props":381,"children":382},"li",{},[383,389,391,395],{"type":13,"tag":37,"props":384,"children":386},{"className":385},[],[387],{"type":18,"value":388},"VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHR",{"type":18,"value":390}," specifies that\nthe created pipeline will not be optimized.\nUsing this flag ",{"type":13,"tag":21,"props":392,"children":394},{"type":393},"may",[],{"type":18,"value":396}," reduce the time taken to create the pipeline.",{"type":13,"tag":380,"props":398,"children":399},{},[400,406],{"type":13,"tag":37,"props":401,"children":403},{"className":402},[],[404],{"type":18,"value":405},"VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHR",{"type":18,"value":407}," specifies that the\npipeline to be created is allowed to be the parent of a pipeline that\nwill be created in a subsequent pipeline creation call.",{"type":13,"tag":380,"props":409,"children":410},{},[411,417],{"type":13,"tag":37,"props":412,"children":414},{"className":413},[],[415],{"type":18,"value":416},"VK_PIPELINE_CREATE_2_DERIVATIVE_BIT_KHR",{"type":18,"value":418}," specifies that the\npipeline to be created will be a child of a previously created parent\npipeline.",{"type":13,"tag":380,"props":420,"children":421},{},[422,428,430,436,438,444],{"type":13,"tag":37,"props":423,"children":425},{"className":424},[],[426],{"type":18,"value":427},"VK_PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR",{"type":18,"value":429},"\nspecifies that any shader input variables decorated as ",{"type":13,"tag":37,"props":431,"children":433},{"className":432},[],[434],{"type":18,"value":435},"ViewIndex",{"type":18,"value":437},"\nwill be assigned values as if they were decorated as ",{"type":13,"tag":37,"props":439,"children":441},{"className":440},[],[442],{"type":18,"value":443},"DeviceIndex",{"type":18,"value":445},".",{"type":13,"tag":380,"props":447,"children":448},{},[449,455,457,460,462,468],{"type":13,"tag":37,"props":450,"children":452},{"className":451},[],[453],{"type":18,"value":454},"VK_PIPELINE_CREATE_2_DISPATCH_BASE_BIT_KHR",{"type":18,"value":456}," specifies that a\ncompute pipeline ",{"type":13,"tag":21,"props":458,"children":459},{"type":23},[],{"type":18,"value":461}," be used with ",{"type":13,"tag":28,"props":463,"children":465},{"href":464},"/man/vkCmdDispatchBase",[466],{"type":18,"value":467},"vkCmdDispatchBase",{"type":18,"value":469}," with a\nnon-zero base workgroup.",{"type":13,"tag":380,"props":471,"children":472},{},[473,479,481,485,487,493],{"type":13,"tag":37,"props":474,"children":476},{"className":475},[],[477],{"type":18,"value":478},"VK_PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV",{"type":18,"value":480}," specifies that a\npipeline is created with all shaders in the deferred state.\nBefore using the pipeline the application ",{"type":13,"tag":21,"props":482,"children":484},{"type":483},"must",[],{"type":18,"value":486}," call\n",{"type":13,"tag":28,"props":488,"children":490},{"href":489},"/man/vkCompileDeferredNV",[491],{"type":18,"value":492},"vkCompileDeferredNV",{"type":18,"value":494}," exactly once on each shader in the pipeline\nbefore using the pipeline.",{"type":13,"tag":380,"props":496,"children":497},{},[498,504,506,509,511,517,519,522,524,527],{"type":13,"tag":37,"props":499,"children":501},{"className":500},[],[502],{"type":18,"value":503},"VK_PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR",{"type":18,"value":505}," specifies that the\nshader compiler should capture statistics for the pipeline executables\nproduced by the compile process which ",{"type":13,"tag":21,"props":507,"children":508},{"type":23},[],{"type":18,"value":510}," later be retrieved by calling\n",{"type":13,"tag":28,"props":512,"children":514},{"href":513},"/man/vkGetPipelineExecutableStatisticsKHR",[515],{"type":18,"value":516},"vkGetPipelineExecutableStatisticsKHR",{"type":18,"value":518},".\nEnabling this flag ",{"type":13,"tag":21,"props":520,"children":521},{"type":483},[],{"type":18,"value":523}," not affect the final compiled pipeline but ",{"type":13,"tag":21,"props":525,"children":526},{"type":393},[],{"type":18,"value":528},"\ndisable pipeline caching or otherwise affect pipeline creation time.",{"type":13,"tag":380,"props":530,"children":531},{},[532,538,540,543,544,550,551,554,555,558,560,563,565,569],{"type":13,"tag":37,"props":533,"children":535},{"className":534},[],[536],{"type":18,"value":537},"VK_PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR",{"type":18,"value":539},"\nspecifies that the shader compiler should capture the internal\nrepresentations of pipeline executables produced by the compile process\nwhich ",{"type":13,"tag":21,"props":541,"children":542},{"type":23},[],{"type":18,"value":510},{"type":13,"tag":28,"props":545,"children":547},{"href":546},"/man/vkGetPipelineExecutableInternalRepresentationsKHR",[548],{"type":18,"value":549},"vkGetPipelineExecutableInternalRepresentationsKHR",{"type":18,"value":518},{"type":13,"tag":21,"props":552,"children":553},{"type":483},[],{"type":18,"value":523},{"type":13,"tag":21,"props":556,"children":557},{"type":393},[],{"type":18,"value":559},"\ndisable pipeline caching or otherwise affect pipeline creation time.\nWhen capturing IR from pipelines created with pipeline libraries, there\nis no guarantee that IR from libraries ",{"type":13,"tag":21,"props":561,"children":562},{"type":23},[],{"type":18,"value":564}," be retrieved from the linked\npipeline.\nApplications ",{"type":13,"tag":21,"props":566,"children":568},{"type":567},"should",[],{"type":18,"value":570}," retrieve IR from each library, and any linked\npipelines, separately.",{"type":13,"tag":380,"props":572,"children":573},{},[574,580,582,586,588,594,596,599,601,607],{"type":13,"tag":37,"props":575,"children":577},{"className":576},[],[578],{"type":18,"value":579},"VK_PIPELINE_CREATE_2_LIBRARY_BIT_KHR",{"type":18,"value":581}," specifies that the pipeline\n",{"type":13,"tag":21,"props":583,"children":585},{"type":584},"cannot",[],{"type":18,"value":587}," be used directly, and instead defines a ",{"type":13,"tag":589,"props":590,"children":591},"em",{},[592],{"type":18,"value":593},"pipeline library",{"type":18,"value":595}," that\n",{"type":13,"tag":21,"props":597,"children":598},{"type":23},[],{"type":18,"value":600}," be combined with other pipelines using the\n",{"type":13,"tag":28,"props":602,"children":604},{"href":603},"/man/VkPipelineLibraryCreateInfoKHR",[605],{"type":18,"value":606},"VkPipelineLibraryCreateInfoKHR",{"type":18,"value":608}," structure.\nThis is available in\nray tracing\nand\ngraphics\npipelines.",{"type":13,"tag":380,"props":610,"children":611},{},[612,618,620,626],{"type":13,"tag":37,"props":613,"children":615},{"className":614},[],[616],{"type":18,"value":617},"VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR",{"type":18,"value":619},"\nspecifies that an any-hit shader will always be present when an any-hit\nshader would be executed.\nA NULL any-hit shader is an any-hit shader which is effectively\n",{"type":13,"tag":37,"props":621,"children":623},{"className":622},[],[624],{"type":18,"value":625},"VK_SHADER_UNUSED_KHR",{"type":18,"value":627},", such as from a shader group consisting\nentirely of zeros.",{"type":13,"tag":380,"props":629,"children":630},{},[631,637,639,644],{"type":13,"tag":37,"props":632,"children":634},{"className":633},[],[635],{"type":18,"value":636},"VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR",{"type":18,"value":638},"\nspecifies that a closest hit shader will always be present when a\nclosest hit shader would be executed.\nA NULL closest hit shader is a closest hit shader which is effectively\n",{"type":13,"tag":37,"props":640,"children":642},{"className":641},[],[643],{"type":18,"value":625},{"type":18,"value":627},{"type":13,"tag":380,"props":646,"children":647},{},[648,654,656,661],{"type":13,"tag":37,"props":649,"children":651},{"className":650},[],[652],{"type":18,"value":653},"VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR",{"type":18,"value":655},"\nspecifies that a miss shader will always be present when a miss shader\nwould be executed.\nA NULL miss shader is a miss shader which is effectively\n",{"type":13,"tag":37,"props":657,"children":659},{"className":658},[],[660],{"type":18,"value":625},{"type":18,"value":627},{"type":13,"tag":380,"props":663,"children":664},{},[665,671,673,678],{"type":13,"tag":37,"props":666,"children":668},{"className":667},[],[669],{"type":18,"value":670},"VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR",{"type":18,"value":672},"\nspecifies that an intersection shader will always be present when an\nintersection shader would be executed.\nA NULL intersection shader is an intersection shader which is\neffectively ",{"type":13,"tag":37,"props":674,"children":676},{"className":675},[],[677],{"type":18,"value":625},{"type":18,"value":679},", such as from a shader group\nconsisting entirely of zeros.",{"type":13,"tag":380,"props":681,"children":682},{},[683,689,691,697],{"type":13,"tag":37,"props":684,"children":686},{"className":685},[],[687],{"type":18,"value":688},"VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR",{"type":18,"value":690}," specifies\nthat triangle primitives will be skipped during traversal using\n",{"type":13,"tag":28,"props":692,"children":694},{"href":693},"/404#glossary-pipeline-trace-ray",[695],{"type":18,"value":696},"pipeline trace ray",{"type":18,"value":698}," instructions.",{"type":13,"tag":380,"props":700,"children":701},{},[702,708,710,714],{"type":13,"tag":37,"props":703,"children":705},{"className":704},[],[706],{"type":18,"value":707},"VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR",{"type":18,"value":709}," specifies that\nAABB primitives will be skipped during traversal using\n",{"type":13,"tag":28,"props":711,"children":712},{"href":693},[713],{"type":18,"value":696},{"type":18,"value":698},{"type":13,"tag":380,"props":716,"children":717},{},[718,724,726,729],{"type":13,"tag":37,"props":719,"children":721},{"className":720},[],[722],{"type":18,"value":723},"VK_PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR",{"type":18,"value":725},"\nspecifies that the shader group handles ",{"type":13,"tag":21,"props":727,"children":728},{"type":23},[],{"type":18,"value":730}," be saved and reused on a\nsubsequent run (e.g. for trace capture and replay).",{"type":13,"tag":380,"props":732,"children":733},{},[734,740,742,748],{"type":13,"tag":37,"props":735,"children":737},{"className":736},[],[738],{"type":18,"value":739},"VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV",{"type":18,"value":741}," specifies that the\npipeline can be used in combination with ",{"type":13,"tag":28,"props":743,"children":745},{"href":744},"/chapters/device-generated-commands#device-generated-commands",[746],{"type":18,"value":747},"Device-Generated Commands",{"type":18,"value":445},{"type":13,"tag":380,"props":750,"children":751},{},[752,758,760,763,765,771],{"type":13,"tag":37,"props":753,"children":755},{"className":754},[],[756],{"type":18,"value":757},"VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT",{"type":18,"value":759}," specifies that the\npipeline ",{"type":13,"tag":21,"props":761,"children":762},{"type":23},[],{"type":18,"value":764}," be used in a ",{"type":13,"tag":37,"props":766,"children":768},{"className":767},[],[769],{"type":18,"value":770},"VkIndirectExecutionSetEXT",{"type":18,"value":445},{"type":13,"tag":380,"props":773,"children":774},{},[775,781,783,789,791,797,799,803,805,811],{"type":13,"tag":37,"props":776,"children":778},{"className":777},[],[779],{"type":18,"value":780},"VK_PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_KHR",{"type":18,"value":782},"\nspecifies that pipeline creation will fail if a compile is required for\ncreation of a valid ",{"type":13,"tag":28,"props":784,"children":786},{"href":785},"/man/VkPipeline",[787],{"type":18,"value":788},"VkPipeline",{"type":18,"value":790}," object;\n",{"type":13,"tag":37,"props":792,"children":794},{"className":793},[],[795],{"type":18,"value":796},"VK_PIPELINE_COMPILE_REQUIRED",{"type":18,"value":798}," will be returned by pipeline\ncreation, and the ",{"type":13,"tag":28,"props":800,"children":801},{"href":785},[802],{"type":18,"value":788},{"type":18,"value":804}," will be ",{"type":13,"tag":28,"props":806,"children":808},{"href":807},"/man/VK_NULL_HANDLE",[809],{"type":18,"value":810},"VK_NULL_HANDLE",{"type":18,"value":445},{"type":13,"tag":380,"props":813,"children":814},{},[815,817,823,825,831],{"type":18,"value":816},"When creating multiple pipelines,\n",{"type":13,"tag":37,"props":818,"children":820},{"className":819},[],[821],{"type":18,"value":822},"VK_PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT_KHR",{"type":18,"value":824}," specifies\nthat control will be returned to the application if any individual\npipeline returns a result which is not ",{"type":13,"tag":37,"props":826,"children":828},{"className":827},[],[829],{"type":18,"value":830},"VK_SUCCESS",{"type":18,"value":832}," rather than\ncontinuing to create additional pipelines.",{"type":13,"tag":380,"props":834,"children":835},{},[836,842,844,850],{"type":13,"tag":37,"props":837,"children":839},{"className":838},[],[840],{"type":18,"value":841},"VK_PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV",{"type":18,"value":843}," specifies\nthat the pipeline is allowed to use ",{"type":13,"tag":37,"props":845,"children":847},{"className":846},[],[848],{"type":18,"value":849},"OpTraceRayMotionNV",{"type":18,"value":445},{"type":13,"tag":380,"props":852,"children":853},{},[854,860],{"type":13,"tag":37,"props":855,"children":857},{"className":856},[],[858],{"type":18,"value":859},"VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR",{"type":18,"value":861},"\nspecifies that the pipeline will be used with a fragment shading rate\nattachment.",{"type":13,"tag":380,"props":863,"children":864},{},[865,871],{"type":13,"tag":37,"props":866,"children":868},{"className":867},[],[869],{"type":18,"value":870},"VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT",{"type":18,"value":872},"\nspecifies that the pipeline will be used with a fragment density map\nattachment.",{"type":13,"tag":380,"props":874,"children":875},{},[876,882,884,887,889,892],{"type":13,"tag":37,"props":877,"children":879},{"className":878},[],[880],{"type":18,"value":881},"VK_PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT",{"type":18,"value":883}," specifies that\npipeline libraries being linked into this library ",{"type":13,"tag":21,"props":885,"children":886},{"type":567},[],{"type":18,"value":888}," have link time\noptimizations applied.\nIf this bit is omitted, implementations ",{"type":13,"tag":21,"props":890,"children":891},{"type":567},[],{"type":18,"value":893}," instead perform linking\nas rapidly as possible.",{"type":13,"tag":380,"props":895,"children":896},{},[897,903,905,910],{"type":13,"tag":37,"props":898,"children":900},{"className":899},[],[901],{"type":18,"value":902},"VK_PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT",{"type":18,"value":904},"\nspecifies that pipeline libraries should retain any information\nnecessary to later perform an optimal link with\n",{"type":13,"tag":37,"props":906,"children":908},{"className":907},[],[909],{"type":18,"value":881},{"type":18,"value":445},{"type":13,"tag":380,"props":912,"children":913},{},[914,920,922,928,930,936],{"type":13,"tag":37,"props":915,"children":917},{"className":916},[],[918],{"type":18,"value":919},"VK_PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT",{"type":18,"value":921}," specifies that a\npipeline will be used with ",{"type":13,"tag":28,"props":923,"children":925},{"href":924},"/chapters/descriptorsets#descriptorbuffers",[926],{"type":18,"value":927},"descriptor buffers",{"type":18,"value":929},",\nrather than ",{"type":13,"tag":28,"props":931,"children":933},{"href":932},"/chapters/descriptorsets#descriptorsets",[934],{"type":18,"value":935},"descriptor sets",{"type":18,"value":445},{"type":13,"tag":380,"props":938,"children":939},{},[940,946,948,951],{"type":13,"tag":37,"props":941,"children":943},{"className":942},[],[944],{"type":18,"value":945},"VK_PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT",{"type":18,"value":947},"\nspecifies that the pipeline ",{"type":13,"tag":21,"props":949,"children":950},{"type":393},[],{"type":18,"value":952}," be used with an attachment feedback\nloop including color attachments.",{"type":13,"tag":380,"props":954,"children":955},{},[956,962,963,966],{"type":13,"tag":37,"props":957,"children":959},{"className":958},[],[960],{"type":18,"value":961},"VK_PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT",{"type":18,"value":947},{"type":13,"tag":21,"props":964,"children":965},{"type":393},[],{"type":18,"value":967}," be used with an attachment feedback\nloop including depth-stencil attachments.",{"type":13,"tag":380,"props":969,"children":970},{},[971,977,979,982],{"type":13,"tag":37,"props":972,"children":974},{"className":973},[],[975],{"type":18,"value":976},"VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT",{"type":18,"value":978},"\nspecifies that the ray tracing pipeline ",{"type":13,"tag":21,"props":980,"children":981},{"type":23},[],{"type":18,"value":983}," be used with acceleration\nstructures which reference an opacity micromap array.",{"type":13,"tag":380,"props":985,"children":986},{},[987,993,994,997],{"type":13,"tag":37,"props":988,"children":990},{"className":989},[],[991],{"type":18,"value":992},"VK_PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV",{"type":18,"value":978},{"type":13,"tag":21,"props":995,"children":996},{"type":23},[],{"type":18,"value":998}," be used with acceleration\nstructures which reference a displacement micromap array.",{"type":13,"tag":380,"props":1000,"children":1001},{},[1002,1008,1010,1013],{"type":13,"tag":37,"props":1003,"children":1005},{"className":1004},[],[1006],{"type":18,"value":1007},"VK_PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXT",{"type":18,"value":1009}," specifies that\nthe pipeline ",{"type":13,"tag":21,"props":1011,"children":1012},{"type":483},[],{"type":18,"value":1014}," not be bound to a protected command buffer.",{"type":13,"tag":380,"props":1016,"children":1017},{},[1018,1024,1025,1028],{"type":13,"tag":37,"props":1019,"children":1021},{"className":1020},[],[1022],{"type":18,"value":1023},"VK_PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT_EXT",{"type":18,"value":1009},{"type":13,"tag":21,"props":1026,"children":1027},{"type":483},[],{"type":18,"value":1029}," not be bound to an unprotected command buffer.",{"type":13,"tag":380,"props":1031,"children":1032},{},[1033,1039,1041,1047,1049,1052,1054,1059,1061,1064,1066,1076,1078,1088,1090,1096,1098,1101,1103,1108],{"type":13,"tag":37,"props":1034,"children":1036},{"className":1035},[],[1037],{"type":18,"value":1038},"VK_PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR",{"type":18,"value":1040}," specifies that\n",{"type":13,"tag":37,"props":1042,"children":1044},{"className":1043},[],[1045],{"type":18,"value":1046},"VkPipelineBinaryKHR",{"type":18,"value":1048}," objects ",{"type":13,"tag":21,"props":1050,"children":1051},{"type":23},[],{"type":18,"value":1053}," be created from the pipeline.\nIf ",{"type":13,"tag":37,"props":1055,"children":1057},{"className":1056},[],[1058],{"type":18,"value":1038},{"type":18,"value":1060}," is used,\nimplementations ",{"type":13,"tag":21,"props":1062,"children":1063},{"type":567},[],{"type":18,"value":1065}," not store pipeline data to an internal cache, if\nsuch a cache exists as stated by\n",{"type":13,"tag":28,"props":1067,"children":1069},{"href":1068},"/man/VkPhysicalDevicePipelineBinaryPropertiesKHR#limits-pipelineBinaryInternalCache",[1070],{"type":13,"tag":37,"props":1071,"children":1073},{"className":1072},[],[1074],{"type":18,"value":1075},"pipelineBinaryInternalCache",{"type":18,"value":1077},".\nIf\n",{"type":13,"tag":28,"props":1079,"children":1081},{"href":1080},"/man/VkPhysicalDevicePipelineBinaryPropertiesKHR#limits-pipelineBinaryPrefersInternalCache",[1082],{"type":13,"tag":37,"props":1083,"children":1085},{"className":1084},[],[1086],{"type":18,"value":1087},"pipelineBinaryPrefersInternalCache",{"type":18,"value":1089},"\nis ",{"type":13,"tag":37,"props":1091,"children":1093},{"className":1092},[],[1094],{"type":18,"value":1095},"VK_TRUE",{"type":18,"value":1097},", applications ",{"type":13,"tag":21,"props":1099,"children":1100},{"type":567},[],{"type":18,"value":1102}," not use\n",{"type":13,"tag":37,"props":1104,"children":1106},{"className":1105},[],[1107],{"type":18,"value":1038},{"type":18,"value":445},{"type":13,"tag":380,"props":1110,"children":1111},{},[1112,1118,1120,1126],{"type":13,"tag":37,"props":1113,"children":1115},{"className":1114},[],[1116],{"type":18,"value":1117},"VK_PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT",{"type":18,"value":1119}," specifies\nthat the pipeline will be used in a render pass that is begun with\n",{"type":13,"tag":37,"props":1121,"children":1123},{"className":1122},[],[1124],{"type":18,"value":1125},"VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT",{"type":18,"value":445},{"type":13,"tag":380,"props":1128,"children":1129},{},[1130,1136,1138],{"type":13,"tag":37,"props":1131,"children":1133},{"className":1132},[],[1134],{"type":18,"value":1135},"VK_PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDX",{"type":18,"value":1137}," specifies that the\npipeline will be used in an ",{"type":13,"tag":28,"props":1139,"children":1141},{"href":1140},"/chapters/executiongraphs#executiongraphs",[1142],{"type":18,"value":1143},"execution graph",{"type":13,"tag":14,"props":1145,"children":1146},{},[1147,1149,1154,1156,1161,1163,1169],{"type":18,"value":1148},"It is valid to set both ",{"type":13,"tag":37,"props":1150,"children":1152},{"className":1151},[],[1153],{"type":18,"value":405},{"type":18,"value":1155},"\nand ",{"type":13,"tag":37,"props":1157,"children":1159},{"className":1158},[],[1160],{"type":18,"value":416},{"type":18,"value":1162},".\nThis allows a pipeline to be both a parent and possibly a child in a\npipeline hierarchy.\nSee ",{"type":13,"tag":28,"props":1164,"children":1166},{"href":1165},"/chapters/pipelines#pipelines-pipeline-derivatives",[1167],{"type":18,"value":1168},"Pipeline Derivatives",{"type":18,"value":1170}," for more\ninformation.",{"type":13,"tag":14,"props":1172,"children":1173},{},[1174,1176,1182,1184,1187,1189,1194],{"type":18,"value":1175},"When an implementation is looking up a pipeline in a\n",{"type":13,"tag":28,"props":1177,"children":1179},{"href":1178},"/chapters/pipelines#pipelines-cache",[1180],{"type":18,"value":1181},"pipeline cache",{"type":18,"value":1183},", if that pipeline is being created using\nlinked libraries, implementations ",{"type":13,"tag":21,"props":1185,"children":1186},{"type":567},[],{"type":18,"value":1188}," always return an equivalent\npipeline created with\n",{"type":13,"tag":37,"props":1190,"children":1192},{"className":1191},[],[1193],{"type":18,"value":881},{"type":18,"value":1195}," if available,\nwhether or not that bit was specified.",{"type":13,"tag":1197,"props":1198,"children":1199},"note",{},[1200],{"type":13,"tag":14,"props":1201,"children":1202},{},[1203,1205,1210],{"type":18,"value":1204},"Using ",{"type":13,"tag":37,"props":1206,"children":1208},{"className":1207},[],[1209],{"type":18,"value":881},{"type":18,"value":1211}," (or not)\nwhen linking pipeline libraries is intended as a performance tradeoff\nbetween host and device.\nIf the bit is omitted, linking should be faster and produce a pipeline more\nrapidly, but performance of the pipeline on the target device may be\nreduced.\nIf the bit is included, linking may be slower but should produce a pipeline\nwith device performance comparable to a monolithically created pipeline.\nUsing both options can allow latency-sensitive applications to generate a\nsuboptimal but usable pipeline quickly, and then perform an optimal link in\nthe background, substituting the result for the suboptimally linked pipeline\nas soon as it is available.",{"type":13,"tag":1213,"props":1214,"children":1215},"style",{},[1216],{"type":18,"value":1217},"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":56,"searchDepth":86,"depth":86,"links":1219},[],"markdown",1729612472022]