Le 03/02/2017 à 14:30, Henri Verbeet a écrit :
On 2 February 2017 at 19:45, Guillaume Charifi guillaume.charifi@sfr.fr wrote:
@@ -72,6 +72,38 @@ enum wined3d_primitive_type
WINED3D_PT_LINESTRIP_ADJ = 11,
WINED3D_PT_TRIANGLELIST_ADJ = 12,
WINED3D_PT_TRIANGLESTRIP_ADJ = 13,
- WINED3D_PT_1_CONTROL_POINT_PATCHLIST = 33,
- WINED3D_PT_2_CONTROL_POINT_PATCHLIST = 34,
- WINED3D_PT_3_CONTROL_POINT_PATCHLIST = 35,
- WINED3D_PT_4_CONTROL_POINT_PATCHLIST = 36,
- WINED3D_PT_5_CONTROL_POINT_PATCHLIST = 37,
- WINED3D_PT_6_CONTROL_POINT_PATCHLIST = 38,
- WINED3D_PT_7_CONTROL_POINT_PATCHLIST = 39,
- WINED3D_PT_8_CONTROL_POINT_PATCHLIST = 40,
- WINED3D_PT_9_CONTROL_POINT_PATCHLIST = 41,
- WINED3D_PT_10_CONTROL_POINT_PATCHLIST = 42,
- WINED3D_PT_11_CONTROL_POINT_PATCHLIST = 43,
- WINED3D_PT_12_CONTROL_POINT_PATCHLIST = 44,
- WINED3D_PT_13_CONTROL_POINT_PATCHLIST = 45,
- WINED3D_PT_14_CONTROL_POINT_PATCHLIST = 46,
- WINED3D_PT_15_CONTROL_POINT_PATCHLIST = 47,
- WINED3D_PT_16_CONTROL_POINT_PATCHLIST = 48,
- WINED3D_PT_17_CONTROL_POINT_PATCHLIST = 49,
- WINED3D_PT_18_CONTROL_POINT_PATCHLIST = 50,
- WINED3D_PT_19_CONTROL_POINT_PATCHLIST = 51,
- WINED3D_PT_20_CONTROL_POINT_PATCHLIST = 52,
- WINED3D_PT_21_CONTROL_POINT_PATCHLIST = 53,
- WINED3D_PT_22_CONTROL_POINT_PATCHLIST = 54,
- WINED3D_PT_23_CONTROL_POINT_PATCHLIST = 55,
- WINED3D_PT_24_CONTROL_POINT_PATCHLIST = 56,
- WINED3D_PT_25_CONTROL_POINT_PATCHLIST = 57,
- WINED3D_PT_26_CONTROL_POINT_PATCHLIST = 58,
- WINED3D_PT_27_CONTROL_POINT_PATCHLIST = 59,
- WINED3D_PT_28_CONTROL_POINT_PATCHLIST = 60,
- WINED3D_PT_29_CONTROL_POINT_PATCHLIST = 61,
- WINED3D_PT_30_CONTROL_POINT_PATCHLIST = 62,
- WINED3D_PT_31_CONTROL_POINT_PATCHLIST = 63,
- WINED3D_PT_32_CONTROL_POINT_PATCHLIST = 64,
};
I'm not sure this really makes sense in wined3d, in OpenGL the
primitive type and control point count are separate.
Yes, it's true, but it must be declared somewhere, and the corresponding
union in D3D11 is D3D11_PRIMITIVE_TOPOLOGY, that
contains them all together.
Moreover I get GL_PATCHES out of them in gl_primitive_type_from_d3d(),
to draw with tessellation shaders.