[{"data":1,"prerenderedAt":460},["ShallowReactive",2],{"B1dBtQ0SrI":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":459,"_id":4},"vkCmdSetStencilTestEnable","Set stencil test enable dynamically for a command buffer","VK_VERSION_1_3","protos",[],{"type":10,"children":11,"toc":457},"root",[12,29,210,235,285,307,405,451],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,27],{"type":18,"value":19},"text","To ",{"type":13,"tag":21,"props":22,"children":24},"a",{"href":23},"/chapters/pipelines#pipelines-dynamic-state",[25],{"type":18,"value":26},"dynamically enable or disable",{"type":18,"value":28}," the stencil\ntest, call:",{"type":13,"tag":30,"props":31,"children":32},"code-group",{},[33,109],{"type":13,"tag":34,"props":35,"children":41},"pre",{"className":36,"code":37,"filename":38,"language":39,"meta":40,"style":40},"language-c shiki shiki-themes github-light-default github-dark-default","void vkCmdSetStencilTestEnableEXT(\n VkCommandBuffer commandBuffer,\n VkBool32 stencilTestEnable);\n","C","c","",[42],{"type":13,"tag":43,"props":44,"children":45},"code",{"__ignoreMap":40},[46,70,90],{"type":13,"tag":47,"props":48,"children":51},"span",{"class":49,"line":50},"line",1,[52,58,64],{"type":13,"tag":47,"props":53,"children":55},{"style":54},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[56],{"type":18,"value":57},"void",{"type":13,"tag":47,"props":59,"children":61},{"style":60},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[62],{"type":18,"value":63}," vkCmdSetStencilTestEnableEXT",{"type":13,"tag":47,"props":65,"children":67},{"style":66},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[68],{"type":18,"value":69},"(\n",{"type":13,"tag":47,"props":71,"children":73},{"class":49,"line":72},2,[74,79,85],{"type":13,"tag":47,"props":75,"children":76},{"style":66},[77],{"type":18,"value":78}," VkCommandBuffer ",{"type":13,"tag":47,"props":80,"children":82},{"style":81},"--shiki-default:#953800;--shiki-dark:#FFA657",[83],{"type":18,"value":84},"commandBuffer",{"type":13,"tag":47,"props":86,"children":87},{"style":66},[88],{"type":18,"value":89},",\n",{"type":13,"tag":47,"props":91,"children":93},{"class":49,"line":92},3,[94,99,104],{"type":13,"tag":47,"props":95,"children":96},{"style":66},[97],{"type":18,"value":98}," VkBool32 ",{"type":13,"tag":47,"props":100,"children":101},{"style":81},[102],{"type":18,"value":103},"stencilTestEnable",{"type":13,"tag":47,"props":105,"children":106},{"style":66},[107],{"type":18,"value":108},");\n",{"type":13,"tag":34,"props":110,"children":115},{"className":111,"code":112,"filename":113,"language":114,"meta":40,"style":40},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn cmd_set_stencil_test_enable_ext(\n command_buffer: vk::CommandBuffer,\n stencil_test_enable: vk::Bool32,\n);\n","Rust","rs",[116],{"type":13,"tag":43,"props":117,"children":118},{"__ignoreMap":40},[119,141,173,202],{"type":13,"tag":47,"props":120,"children":121},{"class":49,"line":50},[122,127,132,137],{"type":13,"tag":47,"props":123,"children":124},{"style":54},[125],{"type":18,"value":126},"pub",{"type":13,"tag":47,"props":128,"children":129},{"style":54},[130],{"type":18,"value":131}," fn",{"type":13,"tag":47,"props":133,"children":134},{"style":60},[135],{"type":18,"value":136}," cmd_set_stencil_test_enable_ext",{"type":13,"tag":47,"props":138,"children":139},{"style":66},[140],{"type":18,"value":69},{"type":13,"tag":47,"props":142,"children":143},{"class":49,"line":72},[144,149,154,159,164,169],{"type":13,"tag":47,"props":145,"children":146},{"style":66},[147],{"type":18,"value":148}," command_buffer",{"type":13,"tag":47,"props":150,"children":151},{"style":54},[152],{"type":18,"value":153},":",{"type":13,"tag":47,"props":155,"children":156},{"style":81},[157],{"type":18,"value":158}," vk",{"type":13,"tag":47,"props":160,"children":161},{"style":54},[162],{"type":18,"value":163},"::",{"type":13,"tag":47,"props":165,"children":166},{"style":81},[167],{"type":18,"value":168},"CommandBuffer",{"type":13,"tag":47,"props":170,"children":171},{"style":66},[172],{"type":18,"value":89},{"type":13,"tag":47,"props":174,"children":175},{"class":49,"line":92},[176,181,185,189,193,198],{"type":13,"tag":47,"props":177,"children":178},{"style":66},[179],{"type":18,"value":180}," stencil_test_enable",{"type":13,"tag":47,"props":182,"children":183},{"style":54},[184],{"type":18,"value":153},{"type":13,"tag":47,"props":186,"children":187},{"style":81},[188],{"type":18,"value":158},{"type":13,"tag":47,"props":190,"children":191},{"style":54},[192],{"type":18,"value":163},{"type":13,"tag":47,"props":194,"children":195},{"style":81},[196],{"type":18,"value":197},"Bool32",{"type":13,"tag":47,"props":199,"children":200},{"style":66},[201],{"type":18,"value":89},{"type":13,"tag":47,"props":203,"children":205},{"class":49,"line":204},4,[206],{"type":13,"tag":47,"props":207,"children":208},{"style":66},[209],{"type":18,"value":108},{"type":13,"tag":211,"props":212,"children":213},"ul",{},[214,225],{"type":13,"tag":215,"props":216,"children":217},"li",{},[218,223],{"type":13,"tag":43,"props":219,"children":221},{"className":220},[],[222],{"type":18,"value":84},{"type":18,"value":224}," is the command buffer into which the command will be\nrecorded.",{"type":13,"tag":215,"props":226,"children":227},{},[228,233],{"type":13,"tag":43,"props":229,"children":231},{"className":230},[],[232],{"type":18,"value":103},{"type":18,"value":234}," specifies if the stencil test is enabled.",{"type":13,"tag":14,"props":236,"children":237},{},[238,240,246,248,254,256,262,263,269,271,277,278,283],{"type":18,"value":239},"This command sets the stencil test enable for subsequent drawing commands\nwhen drawing using ",{"type":13,"tag":21,"props":241,"children":243},{"href":242},"/chapters/shaders#shaders-objects",[244],{"type":18,"value":245},"shader objects",{"type":18,"value":247},", or\nwhen the graphics pipeline is created with\n",{"type":13,"tag":43,"props":249,"children":251},{"className":250},[],[252],{"type":18,"value":253},"VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE",{"type":18,"value":255}," set in\n",{"type":13,"tag":21,"props":257,"children":259},{"href":258},"/man/VkPipelineDynamicStateCreateInfo",[260],{"type":18,"value":261},"VkPipelineDynamicStateCreateInfo",{"type":18,"value":163},{"type":13,"tag":43,"props":264,"children":266},{"className":265},[],[267],{"type":18,"value":268},"pDynamicStates",{"type":18,"value":270},".\nOtherwise, this state is specified by the\n",{"type":13,"tag":21,"props":272,"children":274},{"href":273},"/man/VkPipelineDepthStencilStateCreateInfo",[275],{"type":18,"value":276},"VkPipelineDepthStencilStateCreateInfo",{"type":18,"value":163},{"type":13,"tag":43,"props":279,"children":281},{"className":280},[],[282],{"type":18,"value":103},{"type":18,"value":284}," value\nused to create the currently active pipeline.",{"type":13,"tag":286,"props":287,"children":289},"validity-group",{"name":288},"Valid Usage",[290],{"type":13,"tag":291,"props":292,"children":294},"validity-field",{"name":293},"VUID-vkCmdSetStencilTestEnable-None-08971",[295],{"type":13,"tag":14,"props":296,"children":297},{},[298,300,305],{"type":18,"value":299},"At least one of the following ",{"type":13,"tag":301,"props":302,"children":304},"normative",{"type":303},"must",[],{"type":18,"value":306}," be true:",{"type":13,"tag":286,"props":308,"children":310},{"name":309},"Valid Usage (Implicit)",[311,338,362,391],{"type":13,"tag":291,"props":312,"children":314},{"name":313},"VUID-vkCmdSetStencilTestEnable-commandBuffer-parameter",[315],{"type":13,"tag":14,"props":316,"children":317},{},[318,323,325,328,330,336],{"type":13,"tag":43,"props":319,"children":321},{"className":320},[],[322],{"type":18,"value":84},{"type":18,"value":324}," ",{"type":13,"tag":301,"props":326,"children":327},{"type":303},[],{"type":18,"value":329}," be a valid ",{"type":13,"tag":21,"props":331,"children":333},{"href":332},"/man/VkCommandBuffer",[334],{"type":18,"value":335},"VkCommandBuffer",{"type":18,"value":337}," handle",{"type":13,"tag":291,"props":339,"children":341},{"name":340},"VUID-vkCmdSetStencilTestEnable-commandBuffer-recording",[342],{"type":13,"tag":14,"props":343,"children":344},{},[345,350,351,354,356],{"type":13,"tag":43,"props":346,"children":348},{"className":347},[],[349],{"type":18,"value":84},{"type":18,"value":324},{"type":13,"tag":301,"props":352,"children":353},{"type":303},[],{"type":18,"value":355}," be in the ",{"type":13,"tag":21,"props":357,"children":359},{"href":358},"/chapters/commandbuffers#commandbuffers-lifecycle",[360],{"type":18,"value":361},"recording state",{"type":13,"tag":291,"props":363,"children":365},{"name":364},"VUID-vkCmdSetStencilTestEnable-commandBuffer-cmdpool",[366],{"type":13,"tag":14,"props":367,"children":368},{},[369,371,377,379,384,386,389],{"type":18,"value":370},"The ",{"type":13,"tag":43,"props":372,"children":374},{"className":373},[],[375],{"type":18,"value":376},"VkCommandPool",{"type":18,"value":378}," that ",{"type":13,"tag":43,"props":380,"children":382},{"className":381},[],[383],{"type":18,"value":84},{"type":18,"value":385}," was allocated from ",{"type":13,"tag":301,"props":387,"children":388},{"type":303},[],{"type":18,"value":390}," support graphics operations",{"type":13,"tag":291,"props":392,"children":394},{"name":393},"VUID-vkCmdSetStencilTestEnable-videocoding",[395],{"type":13,"tag":14,"props":396,"children":397},{},[398,400,403],{"type":18,"value":399},"This command ",{"type":13,"tag":301,"props":401,"children":402},{"type":303},[],{"type":18,"value":404}," only be called outside of a video coding scope",{"type":13,"tag":406,"props":407,"children":409},"validity-box",{"name":408},"Host Synchronization",[410],{"type":13,"tag":211,"props":411,"children":412},{},[413,429],{"type":13,"tag":215,"props":414,"children":415},{},[416,418,423,424,427],{"type":18,"value":417},"Host access to ",{"type":13,"tag":43,"props":419,"children":421},{"className":420},[],[422],{"type":18,"value":84},{"type":18,"value":324},{"type":13,"tag":301,"props":425,"children":426},{"type":303},[],{"type":18,"value":428}," be externally synchronized",{"type":13,"tag":215,"props":430,"children":431},{},[432,434,439,440,445,446,449],{"type":18,"value":433},"Host access to the ",{"type":13,"tag":43,"props":435,"children":437},{"className":436},[],[438],{"type":18,"value":376},{"type":18,"value":378},{"type":13,"tag":43,"props":441,"children":443},{"className":442},[],[444],{"type":18,"value":84},{"type":18,"value":385},{"type":13,"tag":301,"props":447,"children":448},{"type":303},[],{"type":18,"value":450}," be externally synchronized\n::",{"type":13,"tag":452,"props":453,"children":454},"style",{},[455],{"type":18,"value":456},"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":40,"searchDepth":72,"depth":72,"links":458},[],"markdown",1725732610284]