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
0ec540276a
wined3d: Pass a format instead of a surface to wined3d_format_convert_from_float().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-20 12:08:06 +09:00
Stefan Dösinger
cdefb5ccb7
wined3d: Track SFLAG_NONPOW2 per-texture.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 15:10:21 +09:00
Stefan Dösinger
58719f60d5
wined3d: Introduce wined3d_texture_check_block_align().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-18 21:05:49 +09:00
Matteo Bruni
14d3dbbb7b
wined3d: Add shader limits for SM5.
...
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-02-18 01:17:26 +09:00
Henri Verbeet
691086eac1
wined3d: Introduce wined3d_texture_get_sub_resource_parent().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-17 13:05:57 +09:00
Stefan Dösinger
4f909e980f
wined3d: Store texture sub-resources as structures containing resource pointers.
...
The idea being that the resource pointer will eventually go away.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-17 13:05:50 +09:00
Henri Verbeet
273e4ae737
wined3d: Allocate the sub_resources array as part of the texture.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-17 13:05:48 +09:00
Ken Thomases
52a99f2ead
wined3d: Change calls of GetDC() to GetDCEx() with DCX_CACHE so the HDC is not shared with other threads.
...
Windows created by the app may use the CS_CLASSDC or CS_OWNDC class styles. In
that case, GetDC() would return the same HDC to all callers. It's not safe,
though, for multiple threads to use the same HDC without synchronization. The
app may be using that HDC from multiple threads and using some synchronization
scheme to make that safe, but wined3d is not able to cooperate in such a scheme.
Using GetDCEx() with DCX_CACHE ensures that wined3d gets an independent HDC.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-16 23:26:31 +09:00
Stefan Dösinger
1bb4b7ece7
wined3d: Remove the DIB extra line hack.
...
Our surface pitch alignment should take care of any writes past unaligned
widths.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-16 12:09:37 +09:00
Henri Verbeet
c62fe153c6
wined3d: Use wined3d_texture_blt() in resolve_depth_buffer().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-16 12:09:37 +09:00
Henri Verbeet
9d7221b51d
wined3d: Replace WINEDDBLTFX with a new structure that only includes the used fields.
...
It's a happy coincidence that none of the surface pointers are actually used.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-16 12:09:37 +09:00
Henri Verbeet
0b6b5176cc
wined3d: Get rid of unused/unimplemented WINEDDBLT_* flags.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-16 12:09:37 +09:00
Henri Verbeet
47635a60a0
ddraw: Handle DDBLT_DDROPS in ddraw_surface7_Blt().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-16 12:09:36 +09:00
Henri Verbeet
05b84945d5
wined3d: Get rid of the unused _WINEDDOVERLAYFX structure.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-16 12:09:36 +09:00
Henri Verbeet
e5719e9899
wined3d: Use a wined3d_string_buffer to dump the intermediate shader code.
...
Instead of abusing TRACE. There's probably still some room for improvement.
There may also be value in dumping things in a format that's compatible with
D3D shader assembly, but I don't think it's a priority.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-13 13:21:53 +09:00
Henri Verbeet
649d2dfb3b
wined3d: Use FIELD_OFFSET to calculate the size in surface_create_dib_section().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-13 13:21:49 +09:00
Matteo Bruni
24d937b618
wined3d: Mark a couple of unimplemented relative addressing cases with FIXMEs.
...
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-02-12 23:07:29 +09:00
Matteo Bruni
1061969eb6
wined3d: Add WINED3DFMT_FLAG_RENDERTARGET to WINED3DFMT_B5G5R5X1_UNORM.
...
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-02-12 23:07:29 +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
Henri Verbeet
3b5eca269d
wined3d: Get rid of the surface parameter to wined3d_device_parent_ops.surface_created().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-12 23:07:28 +09:00
Henri Verbeet
6e5fa92299
ddraw: Use wined3d_texture_get_pitch() in ddraw_surface_init().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-12 23:07:28 +09:00
Henri Verbeet
f8c858c375
wined3d: Use wined3d_texture_get_pitch() in surface_load_texture().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-12 23:07:28 +09:00
Henri Verbeet
d393619092
wined3d: Use wined3d_texture_get_pitch() in read_from_framebuffer().
...
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
1098a673e6
wined3d: Move more formats to typed_formats table.
...
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-11 22:22:10 +09:00
Józef Kucia
0e9327b9f2
wined3d: Copy channel info for typed formats from typeless 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-11 22:22:07 +09:00
Józef Kucia
ab9f7d4ee6
wined3d: Use format id as index in formats table whenever possible.
...
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-11 22:22:02 +09:00
Józef Kucia
a5389a4315
wined3d: Rename getFmtIdx() to get_format_idx().
...
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-11 22:22:00 +09:00
Józef Kucia
8a5aabce9a
wined3d: Introduce table with typed format channels.
...
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-11 22:21:57 +09:00
Henri Verbeet
4155c22e25
wined3d: Use wined3d_texture_get_pitch() in wined3d_surface_map().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-11 12:13:57 +09:00
Henri Verbeet
bb385366a1
wined3d: Use wined3d_texture_get_pitch() in surface_upload_from_surface().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-11 12:13:54 +09:00
Henri Verbeet
ef040d71db
wined3d: Use wined3d_texture_get_pitch() in surface_download_data().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-11 12:13:51 +09:00
Henri Verbeet
fdecf9e452
wined3d: Use wined3d_texture_get_pitch() in surface_create_dib_section().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-11 12:13:49 +09:00
Henri Verbeet
7f69a34574
wined3d: Use wined3d_texture_get_pitch() in wined3d_volume_map().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-11 12:13:46 +09:00
Józef Kucia
9c98d63277
wined3d: Add remaining 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-11 01:26:47 +09:00
Józef Kucia
a8585c2d8d
wined3d: Fix comment in init_format_texture_info().
...
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-11 01:26:47 +09:00
Henri Verbeet
0706019a07
wined3d: Use wined3d_texture_get_pitch() in wined3d_volume_upload_data().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-10 13:45:31 +09:00
Henri Verbeet
a945266d25
wined3d: Use wined3d_texture_get_pitch() in texture3d_sub_resource_upload_data().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-10 13:45:28 +09:00
Stefan Dösinger
65c04ce040
wined3d: Introduce wined3d_texture_get_pitch().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-10 13:45:25 +09:00
Henri Verbeet
a95524b8f3
wined3d: Use wined3d_format_calculate_pitch() in surface_download_data().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-10 13:45:20 +09:00
Henri Verbeet
a0beaa4006
wined3d: Handle slice pitch and alignment as well in wined3d_format_calculate_pitch().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-10 13:45:19 +09:00
Józef Kucia
b8387e6909
wined3d: Extend support for typeless 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 22:10:04 +09:00
Józef Kucia
30da671cf0
wined3d: Add support for WINED3DFMT_R32G32B32A32_SINT format.
...
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 22:10:00 +09:00
Józef Kucia
ea6070b93f
wined3d: Add support for WINED3DFMT_R32G32B32A32_UINT format.
...
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 22:09:58 +09:00
Józef Kucia
ec45c894bc
wined3d: Add support for WINED3DFMT_R16_UINT format.
...
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 22:09:55 +09:00
Riccardo Bortolato
b278bb8f56
wined3d: Get rid of wined3d_device_get_surface_from_dc().
...
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 12:19:39 +09:00
Henri Verbeet
195d16c826
wined3d: Store custom pitches in the texture instead of the surface.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 12:19:33 +09:00
Henri Verbeet
77088e3faa
wined3d: Store the "user_memory" pointer in the texture instead of the surface.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 12:19:30 +09:00
Henri Verbeet
85ba92c33a
wined3d: Get rid of wined3d_device_update_surface().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 12:19:27 +09:00
Henri Verbeet
f0053d06c4
wined3d: Get rid of wined3d_surface_update_overlay_z_order().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 12:19:21 +09:00