Line strips and triangle strips are drawing modes supported across 3D graphics APIs, such as OpenGL, Direct3D, and Vulkan. When using indices to control drawing, a more recent feature is "strip cutting", also called "primitive restart", whereby a special index value can be inserted to indicate that the current strip has finished, and any following indices are part of a new strip.
On OpenGL, you can enable strip cutting by calling glEnable(GL_PRIMITIVE_RESTART)
and disable it by calling glDisable(GL_PRIMITIVE_RESTART)
. In Vulkan, you control this feature by setting the primitiveRestartEnable
boolean field of the VkPipelineInputAssemblyStateCreateInfo
structure. In Direct3D 12 you can use the IBStripCutValue
member of the D3D12_GRAPHICS_PIPELINE_STATE_DESC
structure to enable or disable strip cutting. Under Direct3D 11, this feature is on by default.
My question is, under Direct3D 11, can you turn this feature off in any way? The documentation on this is very brief, and indicates no way to disable it. Is there some magic setting lurking in the API somewhere that I've missed?