diff --git a/dll/directx/wine/wined3d/device.c b/dll/directx/wine/wined3d/device.c index b3455a839617a..3104cdc4474b5 100644 --- a/dll/directx/wine/wined3d/device.c +++ b/dll/directx/wine/wined3d/device.c @@ -3043,6 +3043,36 @@ unsigned int CDECL wined3d_device_get_max_frame_latency(const struct wined3d_dev return device->max_frame_latency; } +static DWORD get_flexible_vertex_size(DWORD d3dvtVertexType) +{ + DWORD size = 0; + int i; + int numTextures = (d3dvtVertexType & WINED3DFVF_TEXCOUNT_MASK) >> WINED3DFVF_TEXCOUNT_SHIFT; + + if (d3dvtVertexType & WINED3DFVF_NORMAL) size += 3 * sizeof(float); + if (d3dvtVertexType & WINED3DFVF_DIFFUSE) size += sizeof(DWORD); + if (d3dvtVertexType & WINED3DFVF_SPECULAR) size += sizeof(DWORD); + if (d3dvtVertexType & WINED3DFVF_PSIZE) size += sizeof(DWORD); + switch (d3dvtVertexType & WINED3DFVF_POSITION_MASK) + { + case WINED3DFVF_XYZ: size += 3 * sizeof(float); break; + case WINED3DFVF_XYZRHW: size += 4 * sizeof(float); break; + case WINED3DFVF_XYZB1: size += 4 * sizeof(float); break; + case WINED3DFVF_XYZB2: size += 5 * sizeof(float); break; + case WINED3DFVF_XYZB3: size += 6 * sizeof(float); break; + case WINED3DFVF_XYZB4: size += 7 * sizeof(float); break; + case WINED3DFVF_XYZB5: size += 8 * sizeof(float); break; + case WINED3DFVF_XYZW: size += 4 * sizeof(float); break; + default: FIXME("Unexpected position mask %#x.\n", d3dvtVertexType & WINED3DFVF_POSITION_MASK); + } + for (i = 0; i < numTextures; i++) + { + size += GET_TEXCOORD_SIZE_FROM_FVF(d3dvtVertexType, i) * sizeof(float); + } + + return size; +} + /* Context activation is done by the caller. */ #define copy_and_next(dest, src, size) memcpy(dest, src, size); dest += (size) static HRESULT process_vertices_strided(const struct wined3d_device *device, DWORD dwDestIndex, DWORD dwCount, diff --git a/dll/directx/wine/wined3d/stateblock.c.rej b/dll/directx/wine/wined3d/stateblock.c.rej deleted file mode 100644 index 8a335d74dac76..0000000000000 --- a/dll/directx/wine/wined3d/stateblock.c.rej +++ /dev/null @@ -1,10 +0,0 @@ -diff a/dll/directx/wine/wined3d/stateblock.c b/dll/directx/wine/wined3d/stateblock.c (rejected hunks) -@@ -1222,7 +1223,7 @@ static void state_init_default(struct wined3d_state *state, const struct wined3d - tmpfloat.f = 1.0f; - state->render_states[WINED3D_RS_PATCHSEGMENTS] = tmpfloat.d; - state->render_states[WINED3D_RS_DEBUGMONITORTOKEN] = 0xbaadcafe; -- tmpfloat.f = gl_info->limits.pointsize_max; -+ tmpfloat.f = d3d_info->limits.pointsize_max; - state->render_states[WINED3D_RS_POINTSIZE_MAX] = tmpfloat.d; - state->render_states[WINED3D_RS_INDEXEDVERTEXBLENDENABLE] = FALSE; - state->render_states[WINED3D_RS_COLORWRITEENABLE] = 0x0000000f; diff --git a/dll/directx/wine/wined3d/utils.c b/dll/directx/wine/wined3d/utils.c index 7a463471324db..a5436e146ac2e 100644 --- a/dll/directx/wine/wined3d/utils.c +++ b/dll/directx/wine/wined3d/utils.c @@ -5873,33 +5873,6 @@ void transpose_matrix(struct wined3d_matrix *out, const struct wined3d_matrix *m *out = temp; } -DWORD get_flexible_vertex_size(DWORD d3dvtVertexType) { - DWORD size = 0; - int i; - int numTextures = (d3dvtVertexType & WINED3DFVF_TEXCOUNT_MASK) >> WINED3DFVF_TEXCOUNT_SHIFT; - - if (d3dvtVertexType & WINED3DFVF_NORMAL) size += 3 * sizeof(float); - if (d3dvtVertexType & WINED3DFVF_DIFFUSE) size += sizeof(DWORD); - if (d3dvtVertexType & WINED3DFVF_SPECULAR) size += sizeof(DWORD); - if (d3dvtVertexType & WINED3DFVF_PSIZE) size += sizeof(DWORD); - switch (d3dvtVertexType & WINED3DFVF_POSITION_MASK) { - case WINED3DFVF_XYZ: size += 3 * sizeof(float); break; - case WINED3DFVF_XYZRHW: size += 4 * sizeof(float); break; - case WINED3DFVF_XYZB1: size += 4 * sizeof(float); break; - case WINED3DFVF_XYZB2: size += 5 * sizeof(float); break; - case WINED3DFVF_XYZB3: size += 6 * sizeof(float); break; - case WINED3DFVF_XYZB4: size += 7 * sizeof(float); break; - case WINED3DFVF_XYZB5: size += 8 * sizeof(float); break; - case WINED3DFVF_XYZW: size += 4 * sizeof(float); break; - default: ERR("Unexpected position mask\n"); - } - for (i = 0; i < numTextures; i++) { - size += GET_TEXCOORD_SIZE_FROM_FVF(d3dvtVertexType, i) * sizeof(float); - } - - return size; -} - unsigned int wined3d_max_compat_varyings(const struct wined3d_gl_info *gl_info) { /* On core profile we have to also count diffuse and specular colors and the diff --git a/dll/directx/wine/wined3d/wined3d_private.h b/dll/directx/wine/wined3d/wined3d_private.h index df790404d8615..c96335c218d54 100644 --- a/dll/directx/wine/wined3d/wined3d_private.h +++ b/dll/directx/wine/wined3d/wined3d_private.h @@ -1549,7 +1549,6 @@ void draw_primitive(struct wined3d_device *device, const struct wined3d_state *s const struct wined3d_draw_parameters *draw_parameters) DECLSPEC_HIDDEN; void dispatch_compute(struct wined3d_device *device, const struct wined3d_state *state, const struct wined3d_dispatch_parameters *dispatch_parameters) DECLSPEC_HIDDEN; -DWORD get_flexible_vertex_size(DWORD d3dvtVertexType) DECLSPEC_HIDDEN; #define eps 1e-8f diff --git a/sdk/tools/winesync/wined3d.cfg b/sdk/tools/winesync/wined3d.cfg index 8384d01e6d2ba..3589f30dc0b98 100644 --- a/sdk/tools/winesync/wined3d.cfg +++ b/sdk/tools/winesync/wined3d.cfg @@ -3,4 +3,4 @@ directories: files: include/wine/wined3d.h: sdk/include/reactos/wine/wined3d.h tags: - wine: 454f87980a8e19f20c56755a686406baf4dd203e + wine: 51db33ca070e16f7e2f3fc6e0c7cb9e432c0e0da