Józef Kucia
7acf39c430
wined3d: Rename wined3d_cull enum values.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:07 +09:00
Józef Kucia
3861b4bb37
wined3d: Introduce rasterizer state object.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:05 +09:00
Andrey Gusev
cf69c12c54
wined3d: Fix a typo in state_zwriteenable() function name.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-27 22:21:14 +09:00
Józef Kucia
8b493d769e
wined3d: Introduce R10G10B10X2 vertex formats for D3D8/9.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-27 22:21:12 +09:00
Matteo Bruni
8d6ea0ea02
wined3d: Update vertex shader when the swizzle map changes.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-20 22:49:53 +09:00
Andrey Gusev
83f72793f0
wined3d: Fix a typo in comment.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-06 22:41:49 +09:00
Józef Kucia
a0269a4ab1
wined3d: Use single function for STATE_CONSTANT_BUFFER.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:16:34 +09:00
Józef Kucia
f6bd191385
wined3d: Introduce wined3d_gl_limits_get_uniform_block_range().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:16:34 +09:00
Matteo Bruni
1755be42f5
wined3d: Cleanup state_clipping() a bit.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 00:10:48 +09:00
Józef Kucia
4dfd79d336
wined3d: Use pure integer vertex attributes for SM4+ shaders.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-01 22:12:27 +09:00
Henri Verbeet
8ae3a9b624
wined3d: Introduce a helper function to allocate arrays.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-24 16:19:01 +09:00
Matteo Bruni
f5dc7a43b0
wined3d: Fixup vertex position in geometry shaders.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:07:41 +09:00
Henri Verbeet
f3c155cc56
wined3d: Merge drawStridedSlow() and drawStridedSlowVs().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-07 12:57:34 +09:00
Józef Kucia
a5b810b0b3
wined3d: Print "state_id" for undefined states.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-05 00:06:42 +09:00
Matteo Bruni
73f50876ac
wined3d: Don't try to set line stippling on core profile contexts.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-29 19:32:04 +09:00
Józef Kucia
53f4cc1a9e
wined3d: Allow draw calls without color attachments.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-22 23:51:32 +09:00
Józef Kucia
c099f3a060
wined3d: Introduce debug_color().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-15 22:45:42 +09:00
Miklós Máté
e29aaca018
wined3d: Warn only once about unsupported wrap state.
...
Signed-off-by: Miklós Máté <mtmkls@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-15 10:49:33 +09:00
Henri Verbeet
edb3ea66a0
wined3d: Replace D3DCOLORTOGLFLOAT4 with an inline function.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-09 18:39:53 +09:00
Paul Gofman
749d5a577b
wined3d: Bind default sampler object when setting sampler state with no texture.
...
When sampler state was applied and no stage texture was present in
state, no glBindSampler was issued for the stage after dummy texture was
bound, and previously bound sampler was still active. This could result
in undefined behaviour, especially if previously bound sampler was a
shadow sample (this caused warnings from Nvidia driver).
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-24 10:31:57 +09:00
Henri Verbeet
553149a049
wined3d: Ignore wined3d_sampler_desc.srgb_decode if WINED3D_SRGB_READ_WRITE_CONTROL is not set.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-12 23:07:28 +09:00
Józef Kucia
1769ea38e6
wined3d: Add support for separate sRGB formats.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 00:37:25 +09:00
Gerald Pfeifer
f5a8580589
wined3d: Fix incorrect indentation of several break statements in in set_tex_op.
...
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-12 16:03:36 +09:00
Alex Henrie
32d73eab5c
wined3d: Avoid double initialization.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-03 20:03:41 +01:00
Matteo Bruni
0985606be4
wined3d: Flat shading emulation for core contexts.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-13 22:54:23 +09:00
Matteo Bruni
c5b2d3f10c
wined3d: Handle WINED3D_SHADE_PHONG the same as WINED3D_SHADE_GOURAUD.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-13 22:54:01 +09:00
Henri Verbeet
2773b27bb1
wined3d: Use unsigned mask constants in shifts.
2015-08-26 23:53:22 +09:00
Stefan Dösinger
34d8b987c4
wined3d: Try to detect the polygon offset scale value.
...
FEAR draws the same geometry twice, the second time using zfunc=equal.
In both cases it sets a huge depth bias of -0.5, presumably to get
better precision for the fragile Z comparison. The GL polygon offset we
set ends up being so large that it pulls the geometry into the negative
Z range. It isn't clipped (or no longer, older NV drivers probably had a
separate bug there), but the Z value gets clamped to 0.0 in the first
draw and doesn't match the incoming Z in the second draw.
2015-07-30 23:50:57 +02:00
Matteo Bruni
f2989a2522
wined3d: Only install emulation wrappers when required.
2015-07-28 13:41:48 +02:00
Józef Kucia
1f680c52fe
wined3d: Implement vertex blending in glsl_vertex_pipe.
2015-07-03 16:51:34 +09:00
Józef Kucia
1fc4a17175
wined3d: Show fixme about unimplemented vertex processing once.
2015-07-03 16:51:29 +09:00
Matteo Bruni
498e55a182
wined3d: Make use of the EXT_BLEND_SUBTRACT flag.
...
MSDN mentions a fallback to D3DBLENDOP_ADD if the selected blendop
is not supported. In theory it would be nice to write a test for that but
I don't think this is particularly important and moreover hardware
without that cap seems hard to come by (i.e. I have none)...
2015-06-17 20:01:20 +09:00
Matteo Bruni
35a2406900
wined3d: Drop WINED3D_RS_TEXTUREPERSPECTIVE handling.
...
The hint is not supported on core profiles. It's not guaranteed to do
anything on compatibility profile either: "The interpretation of hints is
implementation dependent. An implementation may ignore them entirely."
This state was only available on D3D 7 and below (and not guaranteed to
do anything there either, according to older DX SDK docs).
If necessary we could implement it via the GLSL 1.50 "noperspective"
interpolation qualifier, which is what we need to use for the equivalent
D3D10 feature anyway.
2015-06-17 20:01:20 +09:00
Matteo Bruni
4189d29776
wined3d: Avoid the builtin GLSL vertex attributes.
2015-06-12 21:23:12 +09:00
Matteo Bruni
b02a166cc8
wined3d: Introduce a get_fog_start_end() function.
2015-06-05 16:53:16 +09:00
Matteo Bruni
92fbe333d0
wined3d: Handle point sprites with PS 3.0.
2015-06-05 16:52:29 +09:00
Matteo Bruni
e8cb3bdba5
wined3d: Always enable GL_PROGRAM_POINT_SIZE in the GLSL backend.
...
Core contexts don't support clamping the point size to GL_POINT_SIZE_MIN
/ GL_POINT_SIZE_MAX. Incidentally this mostly fixes per-vertex point
sizes for vertex shader version 1 and 2.
2015-06-03 19:52:14 +09:00
Matteo Bruni
953a45303c
wined3d: Introduce a get_pointsize() function.
2015-05-29 16:44:18 +09:00
Matteo Bruni
36520c3e9d
wined3d: Introduce a get_pointsize_minmax() function.
2015-05-29 16:44:13 +09:00
Matteo Bruni
b551da8eef
wined3d: Remove point size scaling hack.
...
Not sure how this was supposed to work, according to the GL spec the
clamping to POINT_SIZE_RANGE happens after the scaling is applied.
2015-05-29 16:44:05 +09:00
Matteo Bruni
28343db208
wined3d: Don't use the builtin FFP uniforms for the lights.
...
While at it, use D3D-like uniforms for the light parameters and
(consequently) implement range and proper D3D spotlights support.
2015-04-28 20:02:23 +09:00
Matteo Bruni
e226e7593a
wined3d: Use struct wined3d_vec4 to store the light position and direction.
2015-04-28 20:02:21 +09:00
Matteo Bruni
540130bfa9
wined3d: Store the directional light direction in the lightDirn field.
...
It's only an implementation detail that the direction needs to be passed
to the fixed function GL pipeline as GL_POSITION.
2015-04-28 20:02:18 +09:00
Matteo Bruni
6984ca7f46
wined3d: Don't use the builtin FFP uniforms for texture transformation matrices.
2015-04-27 15:07:06 +09:00
Stefan Dösinger
4fbaab2020
wined3d: Shadow format flags in wined3d_rendertarget_view.
2015-04-23 20:43:20 +09:00
Stefan Dösinger
9076612e2d
wined3d: Shadow format flags in the resource.
2015-04-22 23:24:41 +09:00
Henri Verbeet
a37099e132
wined3d: Bind sampler objects to the correct texture stage.
...
On current hardware this generally only makes a difference for vertex
textures. This fixes a regression introduced by commit
c6232e1d11
.
2015-04-15 22:21:58 +09:00
Stefan Dösinger
382fa588a9
wined3d: Handle color key dirtification in wined3d_cs_exec_set_texture.
2015-04-15 22:21:57 +09:00
Stefan Dösinger
c5c7137212
wined3d: Simplify alpha test and color keying in GLSL.
2015-04-10 21:44:13 +09:00
Stefan Dösinger
5c7707dc77
wined3d: Move alpha test states to the fragment pipeline.
...
This will allow some color keying cleanups. For Core Contexts we'll have
to emulate alpha testing in shaders anyway.
2015-04-10 21:44:01 +09:00