[PATCH 1/2] wined3d: Add patch primitives.
Guillaume Charifi
guillaume.charifi at sfr.fr
Fri Feb 3 13:02:08 CST 2017
Le 03/02/2017 à 14:30, Henri Verbeet a écrit :
> On 2 February 2017 at 19:45, Guillaume Charifi <guillaume.charifi at 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.
More information about the wine-devel
mailing list