Commit Graph

9128 Commits

Author SHA1 Message Date
Matteo Bruni 11f9cac435 wined3d: Set stream stride and offset even when buffer is NULL.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-15 09:11:20 +02:00
Matteo Bruni 346e8cf8ee wined3d: Generate shader epilogue before conditional returns.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-15 09:11:13 +02:00
Józef Kucia bf9a1a2e91 wined3d: Disallow disabling GLSL on core profile contexts.
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>
2018-06-11 18:13:09 +02:00
Józef Kucia 4ef04c7ebc wined3d: Remove hardware level detection hacks.
Core contexts are enabled by default since
0db4d1c251.

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>
2018-06-11 18:12:49 +02:00
Józef Kucia 49da19e51b wined3d: Execute all CS commands before changing swapchain window.
Fixes a race condition.

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>
2018-06-11 18:12:44 +02:00
Matteo Bruni 42ace9d445 wined3d: Compare interpolation mode VS compilation arguments.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 16:07:18 +02:00
Matteo Bruni 4c8127ef41 wined3d: Initialize glMinSampleShading() function pointer.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 16:07:18 +02:00
Matteo Bruni 05c6692471 wined3d: Slightly improve formatting of generated GLSL shader interfaces.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 16:07:18 +02:00
Józef Kucia 1dd33399db wined3d: Sort WINED3DSIH 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>
2018-05-29 17:13:50 +02:00
Pablo Martin f610f121b8 wined3d: Delete the wined3d_device_get_*_cb and wined3d_device_set_*_cb methods.
Signed-off-by: Pablo Martin <pmart-wine@riseup.net>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-29 17:13:24 +02:00
Pablo Martin a7a2d61792 wined3d: Expose wined3d_shader_type enum and wined3d_device_*_constant_buffer methods.
Signed-off-by: Pablo Martin <pmart-wine@riseup.net>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-29 17:13:12 +02:00
Józef Kucia 82155cbc77 wined3d: Implement clears for 3D render target views.
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>
2018-05-28 22:08:23 +02:00
Józef Kucia cd92d5d0d2 wined3d: Fix condition for FIXME() about unsupported depth slices.
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>
2018-05-28 22:08:23 +02:00
Henri Verbeet 0db4d1c251 wined3d: Default to OpenGL 4.4 contexts.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-23 17:33:53 +02:00
Józef Kucia 638037bb28 wined3d: Remove redundant entries from "formats" table.
Those formats are initialized based on the "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>
2018-05-23 17:33:06 +02:00
Pablo Martin b7d21a669d wined3d: Add unimplemented flags parameter to wined3d_device_update_sub_resource.
Signed-off-by: Pablo Martin <pmart-wine@riseup.net>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-23 17:33:01 +02:00
Pablo Martin 43efd4f5ec wined3d: Add unimplemented flags parameter to wined3d_device_copy_sub_resource_region.
Signed-off-by: Pablo Martin <pmart-wine@riseup.net>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-21 20:34:46 +02:00
Henri Verbeet 6fc027e5ac wined3d: Only create the ARBfp blitter if creating the GLSL blitter failed.
Since the GLSL blitter can do everything the ARBfp one can.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-21 20:34:36 +02:00
Matteo Bruni 0b0c0c9a19 wined3d: Implement YUV blits in the GLSL blitter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-21 20:34:34 +02:00
Zebediah Figura 19f2c4473b d3d11: Implement depth clip control.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-21 10:51:29 +02:00
Józef Kucia 1cc74ea215 wined3d: Allow creating swapchains for windows with empty client rect.
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>
2018-05-18 01:43:48 +02:00
Józef Kucia 087730c057 wined3d: Get rid of MAX_MULTISAMPLE_TYPES.
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>
2018-05-18 01:43:42 +02:00
Matteo Bruni 2bd87c4d2b wined3d: Map glMinSampleShadingARB() to glMinSampleShading().
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>
2018-05-18 01:43:40 +02:00
Józef Kucia 9a9ecb9b11 wined3d: Implement oMask register.
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>
2018-05-18 01:43:36 +02:00
Józef Kucia ce12b09159 wined3d: Implement SV_SampleIndex.
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>
2018-05-16 18:47:28 +02:00
Józef Kucia 630c7bb7e1 wined3d: Implement sampleinfo for render targets.
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>
2018-05-15 17:29:22 +02:00
Józef Kucia 9f353bf14f wined3d: Add ARB_sample_shading extension.
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>
2018-05-15 17:29:20 +02:00
Józef Kucia c05b39e77f wined3d: Reject uploads for multisample textures.
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>
2018-05-15 17:29:13 +02:00
Józef Kucia 9ddffbd3c0 wined3d: Implement sampleinfo instruction.
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>
2018-05-15 17:29:11 +02:00
Christian Inci 8e24cb6a32 wined3d: Recognize Titan V.
Signed-off-by: Christian Inci <chris.wine@broke-the-inter.net>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 16:05:27 +02:00
Józef Kucia f38de4ff61 wined3d: Fix memory leak in shader_glsl_init_transform_feedback().
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>
2018-05-14 16:05:23 +02:00
Matteo Bruni f942df461b wined3d: Default to using a non-forward-compatible core profile context.
It should make it easier for the GL driver to upgrade the context to a
GL version higher than strictly requested.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 16:05:18 +02:00
Matteo Bruni ac213630d9 wined3d: Skip match_allows_spec_alpha() on core profile.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 16:05:16 +02:00
Matteo Bruni 16c708c339 wined3d: Use core functions to set the stencil mask on GL 2.0+.
glStencilMask() is defined as setting both front and back stencil
masks in GL 2.0+ and we don't want to use the EXT_stencil_two_side
entry points even if they happen to be available there.
D3D doesn't support separate front / back stencil write masks anyway.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 16:05:14 +02:00
Matteo Bruni 064bf225a0 wined3d: Skip match_broken_arb_fog() quirk check on core profile.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 16:05:12 +02:00
Matteo Bruni ede35244d7 wined3d: Don't add pixel center offset twice.
Fixes cf312011c0.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 16:05:09 +02:00
Nikolay Sivov 23ea779d8f wined3d: Add new functions to set and get maximum frame latency for the device.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-30 20:41:59 +02:00
Matteo Bruni 36a39397bc wined3d: Rename gen_planar_yuv_read() to gen_packed_yuv_read().
UYVY and YUY2 are packed, YV12 and NV12 are planar.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-30 20:41:59 +02:00
Henri Verbeet 71f24b8dbd wined3d: Add core context P8 blit support to the GLSL blitter.
We use GL_R8 for WINED3DFMT_P8_UINT in core contexts, since GL_ALPHA8 is not
available.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-30 20:41:59 +02:00
Matteo Bruni a46e47f8d0 wined3d: Implement P8 blits in the GLSL blitter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-30 10:40:17 +02:00
Matteo Bruni 38ed82edab wined3d: Use staging resources to blit from CPU resources in the fixed-function blitter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-30 10:40:14 +02:00
Henri Verbeet 67df305261 wined3d: Make the "args" parameter to glsl_blitter_generate_program() const.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-30 10:40:12 +02:00
Józef Kucia 799719a423 wined3d: Correctly check for absence of precise flags.
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>
2018-04-27 16:33:35 +02:00
Józef Kucia 3d746a6a43 wined3d: Do not check for ARB_fragment_program in arbfp_blit_supported().
ARBfp blitter isn't be created if ARB_fragment_program is not supported.

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>
2018-04-27 16:33:33 +02:00
Józef Kucia 16517e4eea wined3d: Implement copying for 1D textures.
1D textures are handled by raw and CPU blitter.

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>
2018-04-27 16:33:28 +02:00
Józef Kucia 130b6ed876 wined3d: Implement clears for 1D render target views.
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>
2018-04-27 16:33:26 +02:00
Nikolay Sivov cf312011c0 wined3d: Use fewer calls to set viewport data.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-27 16:33:18 +02:00
Nikolay Sivov b2061c8589 wined3d: Invalidate number of viewports set for the context.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-27 16:32:49 +02:00
Matteo Bruni df99c9b9f4 wined3d: Don't attach render targets on clears when unnecessary.
Otherwise we'd limit the cleared area to the size of the render target.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-27 16:32:00 +02:00
Matteo Bruni 56d4de0fde wined3d: Don't clamp viewport coordinates.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-27 16:31:53 +02:00
Józef Kucia f6160d2ae8 wined3d: Disable transform feedback when there are no varyings to record.
In order to avoid GL errors when glBeginTransformFeedback() is called.
This is required only because we do not fully support stream output
component ranges.

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>
2018-04-26 20:30:30 +02:00
Józef Kucia 0322fb69a1 wined3d: Parse SM5 precise instruction modifier.
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>
2018-04-26 20:30:20 +02:00
Nikolay Sivov 3ee3324c2f wined3d: Add support for returning multiple scissor rectangles.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-26 20:30:14 +02:00
Józef Kucia 68e92f31c5 wined3d: Remove redundant size checks before memcpy().
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>
2018-04-25 15:49:19 +02:00
Józef Kucia 9c88870459 wined3d: Reduce number of parameters passed to shader_get_registers_used().
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>
2018-04-25 15:49:15 +02:00
Józef Kucia 45b8eef47a wined3d: Scan output signatures for pass-through geometry shaders.
For shader_glsl_generate_sm4_output_setup().

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>
2018-04-25 15:49:12 +02:00
Józef Kucia 3702e2bc42 wined3d: Avoid using gl_ViewportIndex unnecessarily.
Fixes geometry shaders when ARB_viewport_array is not available.

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>
2018-04-24 00:25:15 +02:00
Józef Kucia ca8e05154e wined3d: Add support for stream output with vertex shaders.
In Direct3D, a stream-output geometry shader can be created from a
vertex shader bytecode. We generate a pass-through geometry shader in
this case. Pass-through geometry shaders are helpful because they can
easily split outputs when rasterization is disabed. We could also add
another codepath in order to avoid geometry shaders when 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>
2018-04-24 00:25:15 +02:00
Józef Kucia 9d70df6a40 wined3d: Simplify geometry_shader_init().
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>
2018-04-24 00:25:15 +02:00
Józef Kucia 319abecc41 wined3d: Introduce helper function to get shader type from byte code.
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>
2018-04-24 00:25:15 +02:00
Nikolay Sivov 409497ee84 wined3d: Add support for setting multiple scissor rectangles.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-24 00:25:15 +02:00
Matteo Bruni f7926c0793 wined3d: Allow context_draw_shaded_quad() to function without immediate mode draws.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 13:29:52 +02:00
Henri Verbeet 8a1a67c431 wined3d: Simplify context_update_stream_sources().
Note that this slightly changes behaviour, in that no loads or unloads happen
anymore when "use_immediate_mode_draw" is set.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 13:29:49 +02:00
Henri Verbeet e93e943ba4 wined3d: Use wined3d_bit_scan() in context_unload_numbered_arrays().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 13:29:47 +02:00
Henri Verbeet 8dc789fe3b wined3d: Handle "namedArraysLoaded" in context_unload_vertex_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 13:29:45 +02:00
Henri Verbeet 437861f1dc wined3d: Move the stream source binding code to context.c.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 13:29:43 +02:00
Nikolay Sivov b67870b7a7 wined3d: Add support for returning multiple viewports.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-18 21:37:04 +02:00
Matteo Bruni 0c2f9a4f34 wined3d: Enable GL_ARB_viewport_array extension in GLSL 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>
2018-04-18 21:36:47 +02:00
Matteo Bruni 993c85050e wined3d: Fix stateblock viewports memcmp() size.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-18 21:36:45 +02:00
Henri Verbeet 70c5dc64fc wined3d: Get rid of the "numberedArraysLoaded" field in struct wined3d_context.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 21:38:15 +02:00
Matteo Bruni 8e1451c510 wined3d: Use staging resources to blit from CPU resources in the ARBfp blitter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 21:38:15 +02:00
Matteo Bruni 29d506939e wined3d: Use staging resources to blit from CPU resources in the GLSL blitter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 21:38:15 +02:00
Matteo Bruni aa59d40a18 wined3d: Implement source fixups in the GLSL blitter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 21:38:15 +02:00
Matteo Bruni 40496c9083 wined3d: Remove unused return values from the YUV shader generation helpers in the ARBfp blitter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 21:38:15 +02:00
Nikolay Sivov 853f6538e4 wined3d: Add support for setting multiple viewports.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 20:42:56 +02:00
Matteo Bruni 2f0777b8aa wined3d: Introduce a GLSL-based blitter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-12 14:14:01 +02:00
Matteo Bruni f1ad8bab51 wined3d: Introduce a function for drawing shaded quads.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-12 14:13:59 +02:00
Matteo Bruni 9100fce2ba wined3d: Move draw_textured_quad() to context.c.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-12 14:13:58 +02:00
Matteo Bruni 4573903c06 wined3d: Disable sRGB writes in context_apply_blit_state().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-12 14:13:55 +02:00
Henri Verbeet 7155c451a5 wined3d: Invalidate the texture's U/V address modes in draw_textured_quad().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-12 14:13:54 +02:00
Henri Verbeet e2a0a939ba wined3d: Select the correct texture level in draw_textured_quad().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-12 14:13:52 +02:00
Józef Kucia 409f32ffa3 wined3d: Do not allocate system memory for resources by default.
Avoids allocating system memory for depth/stencil and 3D textures.

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>
2018-04-10 18:10:49 +02:00
Józef Kucia 13a53aa969 wined3d: Require BPTC compression for SM5.
It's required for feature level 11_0.

At some point, we probably would like to separate shader model checks
from feature level checks.

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>
2018-04-10 12:57:48 +02:00
Henri Verbeet d06740bde7 wined3d: Get rid of the "tex_type" field from struct blt_info.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-10 12:22:20 +02:00
Henri Verbeet acb18ea3b6 wined3d: Get rid of the "binding" field from struct blt_info.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-10 12:22:18 +02:00
Sven Hesse 0e9f94ec1c wined3d: Implement support for 1D textures.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-03 09:38:45 +02:00
Henri Verbeet dcbbddf0cd wined3d: Add some traces to arbfp_blitter_blit().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-30 16:52:05 +02:00
Henri Verbeet 267a154be7 wined3d: Add some traces to fbo_blitter_blit().
For easier debugging.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-30 16:52:05 +02:00
Henri Verbeet e7af1ea387 wined3d: Avoid a FIXME about 0 back-buffer usage in wined3d_device_reset().
Since we use this for ddraw now.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-30 16:52:05 +02:00
Henri Verbeet f93691dca2 wined3d: Get rid of convert_p8_uint_b8g8r8a8_unorm().
Perhaps this made sense when we still pretended to support P8 textures, but
currently this should never get used, and certainly not in the colour-keying
path.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-30 16:52:05 +02:00
Matteo Bruni c830b0706b wined3d: Limit clears to the size of the framebuffer.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-29 16:06:04 +02:00
Henri Verbeet 1567329f91 wined3d: Only create back-buffer views for swapchains with WINED3DUSAGE_RENDERTARGET set.
Since without it the view wouldn't be usable.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-27 16:13:14 +02:00
Józef Kucia b62aa91758 wined3d: Pass fully initialized shader objects to CS.
It shouldn't matter right now, but it might be an issue when we start to
precompile other shader types than compute 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>
2018-03-26 21:04:11 +02:00
Henri Verbeet 1b26c27861 wined3d: Simplify wined3d_device_update_sub_resource() a little.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-26 11:35:45 +02:00
Henri Verbeet 6ea4445cc2 wined3d: Handle 3D textures in wined3d_device_copy_sub_resource_region().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-26 11:35:41 +02:00
Henri Verbeet 9240316552 wined3d: Get rid of the special case for WINED3D_RTYPE_TEXTURE_3D in wined3d_device_update_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-26 11:35:39 +02:00
Józef Kucia 82ffc5b78d wined3d: Avoid superfluous wglSwapIntervalEXT() calls.
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>
2018-03-23 16:23:21 +01:00
Henri Verbeet 1251fe6921 wined3d: Get rid of ARB_vertex_blend support.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-23 14:02:57 +01:00
Henri Verbeet 4aaf9ebe82 wined3d: Get rid of the dst_arg enum.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-23 14:02:53 +01:00
Henri Verbeet 06a4f978ac wined3d: Use upper-case enum elements in the projection_types enum.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-23 14:02:46 +01:00
Henri Verbeet 9cdc8876b0 wined3d: Use upper-case enum elements in the vertexprocessing_mode enum.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-23 14:02:41 +01:00
Józef Kucia 81459fb8a2 wined3d: Remove swap interval from swapchain description.
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>
2018-03-22 18:14:55 +01:00
Józef Kucia 6aeb444e4c wined3d: Implement updating swap interval through wined3d_swapchain_present().
Based on a patch by Michael Müller.

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>
2018-03-22 18:14:52 +01:00
Henri Verbeet 9d2f4cdbdd wined3d: Use gl_info from the wined3d_shader_context in shader_hw_sample().
For simplicity.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 11:42:07 +01:00
Henri Verbeet f31ed9837a wined3d: Simplify device_resource_released() a little.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 11:42:04 +01:00
Henri Verbeet e5ab987d60 wined3d: Simplify context_resource_released().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 11:42:00 +01:00
Henri Verbeet 70f017ac4d wined3d: Get rid of the "StrictDrawOrdering" setting.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 11:41:50 +01:00
Henri Verbeet d6f45dab82 wined3d: Merge texture2d_upload_data() and texture3d_upload_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:40:14 +01:00
Henri Verbeet af47c9406b wined3d: Handle upload conversion in texture2d_upload_data().
For consistency with texture3d_upload_data().

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:40:12 +01:00
Henri Verbeet faf4559a76 wined3d: Don't bother removing PBOs for formats with upload/download conversion in texture2d_load_texture().
We don't use PBOs for those in the first place.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:40:10 +01:00
Henri Verbeet 15d3155e59 wined3d: Always pass a valid source box to texture3d_upload_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:40:08 +01:00
Henri Verbeet a9cf391bed wined3d: Merge wined3d_surface_upload_data() into texture2d_upload_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-20 12:59:02 +01:00
Henri Verbeet 17c7f8e3c3 wined3d: Allow wined3d_texture_upload_data() to upload to WINED3D_LOCATION_TEXTURE_SRGB.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-20 12:59:00 +01:00
Henri Verbeet 8647966e9f wined3d: Pass independent source and destination coordinates to wined3d_texture_upload_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-20 12:58:58 +01:00
Henri Verbeet 37c516c957 wined3d: Pass a format to wined3d_texture_upload_data().
The goal here is to eventually get rid of wined3d_surface_upload_data().

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-20 12:58:55 +01:00
Henri Verbeet d4b0249c48 wined3d: Pass the destination x/y coordinates as separate parameters to wined3d_surface_upload_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 12:09:39 +01:00
Henri Verbeet 89cd64bcb7 wined3d: Pass a wined3d_box structure to wined3d_surface_upload_data().
For consistency with wined3d_texture_upload_data().

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 12:09:37 +01:00
Henri Verbeet 614102c013 wined3d: Merge texture2d_prepare_texture() and texture3d_prepare_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 12:09:35 +01:00
Henri Verbeet d3baf0355a wined3d: Resource size should always be non-zero in resource_init().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 12:09:32 +01:00
Henri Verbeet 549934eeea wined3d: Merge wined3d_texture_init() into texture_init().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-16 16:40:32 +01:00
Henri Verbeet eba15f7042 wined3d: Merge volumetexture_init() and texture_init().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-16 16:40:32 +01:00
Henri Verbeet 0a354365bd wined3d: Merge the surface_created() and volume_created() wined3d_device_parent_ops callbacks.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-16 16:40:31 +01:00
Henri Verbeet 4d4fc7ae34 wined3d: Reject managed/scratch textures with dynamic usage in texture_init().
For consistency with volumetexture_init().

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-15 12:21:52 +01:00
Henri Verbeet 543a199dc3 wined3d: Only store dc_info for textures that require it.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-15 12:21:50 +01:00
Henri Verbeet 082abe4abe wined3d: Rename struct wined3d_surface to struct wined3d_dc_info.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-15 12:21:48 +01:00
Henri Verbeet 47404a7db6 wined3d: Store the destination as texture + sub-resource index in struct wined3d_overlay_info.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-15 12:21:46 +01:00
Henri Verbeet 3abe88f125 wined3d: Get rid of the unused context_get_rt_surface().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 15:27:59 +01:00
Henri Verbeet b7ed6b9b8e wined3d: Get rid of the "container" field from struct wined3d_surface.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 15:27:59 +01:00
Henri Verbeet 50920453b0 wined3d: Pass a resource to context_generate_rt_mask_no_fbo().
Instead of a texture, since rendertarget views operate on resources.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 15:27:59 +01:00
Henri Verbeet f4f20e48cf wined3d: Pass a texture to context_surface_update().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 15:27:59 +01:00
Matteo Bruni c0e49b0e2c wined3d: Do not apply fixed-function state in context_apply_blit_state().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 20:35:26 +01:00
Henri Verbeet 56464f5e07 wined3d: Pass a texture and sub-resource index to texture2d_destroy_dc().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 13:28:36 +01:00
Henri Verbeet a7c0904a10 wined3d: Pass a texture and sub-resource index to texture2d_create_dc().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 13:28:33 +01:00
Henri Verbeet 991b1b77c8 wined3d: Pass a texture and sub-resource index to wined3d_surface_blt().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 13:28:27 +01:00
Henri Verbeet 70a68144c1 wined3d: Pass a texture and sub-resource index to wined3d_blitter_ops.blitter_blit().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 13:28:23 +01:00
Józef Kucia e318f8c825 wined3d: Replace presentation interval flags with enum.
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>
2018-03-12 17:58:16 +01:00
Józef Kucia 0554d17611 wined3d: Remove PresentationIntervals from WINED3DCAPS.
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>
2018-03-12 17:58:14 +01:00
Matteo Bruni 23b4b3cd4c wined3d: Pass a wined3d_context structure to texture2d_depth_blt_fbo().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-12 17:58:07 +01:00
Henri Verbeet 9a00e032b7 wined3d: Pass a texture and sub-resource index to context_apply_fbo_state_blit().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-12 17:58:02 +01:00
Henri Verbeet 72de747c6a wined3d: Pass the depth/stencil view as wined3d_rendertarget_info structure to context_apply_fbo_state().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-12 17:57:59 +01:00
Henri Verbeet 21257be2a9 wined3d: Pass a texture and sub-resource index to context_restore().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-12 17:57:51 +01:00
Henri Verbeet 7cc82c1ea6 wined3d: Recognise AMD RC410 and RV380.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-12 17:57:48 +01:00
Kai Krakow 4b08602d57 wined3d: Recognize GTX 1050 Ti card with NVIDIA driver.
Signed-off-by: Kai Krakow <kai@kaishome.de>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-12 17:57:36 +01:00
Matteo Bruni cca2867b3c wined3d: Restore the correct sub resource in texture2d_load_fb_texture().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-12 17:57:35 +01:00
Matteo Bruni acf8c4b76c wined3d: Only copy the source/destination rectangles when needed in texture2d_blt_fbo().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-09 10:40:41 -06:00
Henri Verbeet 286f4cd2a4 wined3d: Pass a texture and sub-resource index to surface_blt_special().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-09 10:40:40 -06:00
Henri Verbeet 21e6abc8a0 wined3d: Pass a texture and sub-resource index to fb_copy_to_texture_hwstretch().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-09 10:40:40 -06:00
Henri Verbeet 628cd4425b wined3d: Pass a texture and sub-resource index to fb_copy_to_texture_direct().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-09 10:40:39 -06:00
Henri Verbeet 2179e99120 wined3d: Pass a texture and sub-resource index to surface_load_fb_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-09 10:40:39 -06:00
Józef Kucia c114746f6f wined3d: Allow blits from drawable location when loading renderbuffer locations.
Fixes a regression introduced by fb6b3cc872.

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>
2018-03-08 09:24:03 -06:00
Matteo Bruni d2e89d0b99 wined3d: Pass a wined3d_context structure to texture2d_download_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-08 09:23:53 -06:00
Henri Verbeet 40d5908854 wined3d: Pass a texture and sub-resource index to read_from_framebuffer().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-08 09:23:48 -06:00
Henri Verbeet c337a46354 wined3d: Pass a texture and sub-resource index to surface_upload_from_surface().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-08 09:23:46 -06:00
Henri Verbeet 4c1b3978dd wined3d: Pass a texture and sub-resource index to surface_download_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-08 09:23:44 -06:00
Henri Verbeet ca2aa71775 wined3d: Pass a texture and sub-resource index to surface_blt_fbo().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-08 09:23:41 -06:00
Henri Verbeet 243e2ddfde wined3d: Pass a texture and sub-resource index to surface_depth_blt_fbo().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-07 08:48:31 -06:00
Henri Verbeet 433ac881dd wined3d: Pass boxes instead of rectangles to wined3d_surface_blt().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-07 08:48:27 -06:00
Henri Verbeet 92008ec4cf wined3d: Pass a texture and sub-resource index to surface_load_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-07 08:48:24 -06:00
Henri Verbeet 42a9563e43 wined3d: Pass a texture and sub-resource index to surface_load_renderbuffer().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-07 08:48:21 -06:00
Henri Verbeet 798439ba31 wined3d: Pass a texture and sub-resource index to surface_load_drawable().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-06 04:41:11 -06:00
Henri Verbeet 3b47e108a9 wined3d: Pass a texture and sub-resource index to surface_load_sysmem().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-06 04:41:09 -06:00
Henri Verbeet c1f5b9ac67 wined3d: Merge surface_load_location() into texture2d_load_location().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-06 04:41:07 -06:00
Henri Verbeet 3d21ea0807 wined3d: Store the EXT_fbo "renderbuffers" list in the texture instead of the surface.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-06 04:41:04 -06:00
Christian Costa 00b1f69cd2 wined3d: Recognize GTX 560M card with NVIDIA driver.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-06 04:40:39 -06:00
Henri Verbeet c09072e5dd wined3d: Pass a texture and sub-resource index to wined3d_surface_upload_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-05 06:57:07 -06:00
Henri Verbeet 612ceee6a0 wined3d: Pass a texture to surface_translate_drawable_coords().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-05 06:57:05 -06:00
Henri Verbeet 665c8c84c7 wined3d: Explicitly calculate the sub-resource level in wined3d_texture_update_overlay().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-05 06:57:03 -06:00
Henri Verbeet 2eb4d15b13 wined3d: Explicitly calculate the sub-resource level in texture2d_create_dc().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-05 06:57:00 -06:00
Henri Verbeet 6639ce4b09 wined3d: Explicitly calculate the sub-resource level in wined3d_texture_allocate_gl_mutable_storage().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-02 10:54:20 +01:00
Henri Verbeet 365948bf70 wined3d: Explicitly pass the sub-resource level to surface_is_full_rect().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-02 10:54:20 +01:00
Henri Verbeet 97c7b6ae9a wined3d: Explicitly calculate the sub-resource level in raw_blitter_blit().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-02 10:54:20 +01:00
Henri Verbeet 462b6d1bc8 wined3d: Explicitly calculate the sub-resource level in surface_load_renderbuffer().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-02 10:54:20 +01:00
Józef Kucia 53639b04eb wined3d: Fix draw calls when first render target is NULL.
In Direct3D 10+, the render target at index 0 can be set to NULL.

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>
2018-03-02 10:52:04 +01:00
Józef Kucia 544a7daaeb wined3d: Factor out get_viewport() function.
No attachment draw calls are always offscreen.

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>
2018-03-02 10:52:01 +01:00
Józef Kucia 7096e1e02d wined3d: Implement draw calls with no attachments.
Supported when ARB_framebuffer_no_attachments is available.

It was reported that no attachments framebuffers trigger GPU hangs
in The Witcher 3 on some system configurations with radeonsi driver.
MESA_EXTENSION_OVERRIDE=-GL_ARB_framebuffer_no_attachments can be used
as a workaround until it's fixed.

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>
2018-03-02 10:51:59 +01:00
Józef Kucia 4998cea070 wined3d: Remove redundant if statement from device_init_swapchain_state().
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>
2018-03-02 10:51:56 +01:00
Henri Verbeet 4fc70a3b6a wined3d: Explicitly calculate the sub-resource level in surface_load_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-01 19:25:56 +01:00
Henri Verbeet 4d84feb542 wined3d: Explicitly calculate the sub-resource level in surface_load_drawable().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-01 19:25:56 +01:00
Henri Verbeet 28d0ee637a wined3d: Explicitly calculate the sub-resource level in surface_blt_special().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-01 19:25:56 +01:00
Henri Verbeet 6be6bf7d70 wined3d: Explicitly calculate the sub-resource level in fb_copy_to_texture_direct().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-01 19:25:56 +01:00
Józef Kucia beb83eb4ae wined3d: Add ARB_framebuffer_no_attachments extension.
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>
2018-02-28 19:39:29 +01:00
Józef Kucia e27141e015 wined3d: Use wined3d_bit_scan() in find_draw_buffers_mask().
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>
2018-02-28 19:39:28 +01:00
Józef Kucia cae8ebab91 wined3d: Do not call context_validate_onscreen_formats() in context_apply_blit_state().
It does nothing when depth_stencil is NULL.

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>
2018-02-28 19:39:28 +01:00
Henri Verbeet c8120f526e wined3d: Explicitly calculate the sub-resource level in fb_copy_to_texture_direct().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 17:24:38 +01:00
Henri Verbeet 8e7540b602 wined3d: Explicitly calculate the sub-resource level in surface_load_fb_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 17:24:38 +01:00
Henri Verbeet 64ba3ee4a0 wined3d: Explicitly calculate the sub-resource level in read_from_framebuffer().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 17:24:38 +01:00
Henri Verbeet 1cdff1c8a4 wined3d: Explicitly calculate the sub-resource level in surface_set_compatible_renderbuffer().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 17:24:37 +01:00
Józef Kucia 7b62a970e9 wined3d: Try harder to reacquire context.
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>
2018-02-27 18:21:01 +01:00
Józef Kucia d8c0bc8245 wined3d: Do not allocate framebuffer state structures dynamically.
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>
2018-02-27 18:21:01 +01:00
Józef Kucia f234ce16be wined3d: Terminate long debug strings with ellipsis.
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>
2018-02-27 18:21:01 +01:00
Henri Verbeet d635d7e51d wined3d: Explicitly calculate the sub-resource level in surface_upload_from_surface().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 10:28:12 +01:00
Henri Verbeet 78366806a0 wined3d: Explicitly calculate the sub-resource level in wined3d_surface_upload_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 10:28:12 +01:00
Henri Verbeet ec4be4ba40 wined3d: Explicitly calculate the sub-resource level in surface_download_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 10:28:12 +01:00
Henri Verbeet bca2fc4189 wined3d: Explicitly calculate the sub-resource level in device_clear_render_targets().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 10:28:12 +01:00
Józef Kucia 1075b4615b wined3d: Limit number of supported render targets to 8.
Virtually all relatively modern GPUs support 8 render targets.

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>
2018-02-26 16:40:23 +01:00
Józef Kucia 6eb562210c wined3d: Merge drawprim.c into context.c.
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>
2018-02-26 16:40:22 +01:00
Józef Kucia 66cd871060 wined3d: Drop d3d_draw debug channel.
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>
2018-02-26 16:40:22 +01:00
Józef Kucia f8c8498f49 wined3d: Cleanup draw_primitive_arrays() a bit.
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>
2018-02-26 16:40:22 +01:00
Józef Kucia 41717a148e wined3d: Move dispatch_compute() to context.c file.
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>
2018-02-26 16:40:22 +01:00
Henri Verbeet 6e16062532 wined3d: Explicitly calculate the sub-resource level in is_full_clear().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-26 11:40:33 +01:00
Henri Verbeet a9678a1a8c wined3d: Explicitly calculate the sub-resource level in arbfp_blitter_blit().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-26 11:40:33 +01:00
Henri Verbeet c86467bdad wined3d: Explicitly calculate the sub-resource level in arbfp_blit_set().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-26 11:40:33 +01:00
Henri Verbeet b574fab087 wined3d: Pass a wined3d_rendertarget_info structure to context_find_fbo_entry().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-26 11:40:33 +01:00
Józef Kucia fb6b3cc872 wined3d: Use multisample textures by default.
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>
2018-02-23 19:24:02 +01:00
Józef Kucia bd1688af55 wined3d: Implement loading system memory from multisample textures.
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>
2018-02-23 19:24:02 +01:00
Józef Kucia f59fce24ab wined3d: Add helper function to construct debug strings.
Hardcoded buffer sizes are error-prone.

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>
2018-02-23 19:24:01 +01:00
Henri Verbeet daf754cea3 wined3d: Explicitly calculate the sub-resource layer in raw_blitter_blit().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-23 08:59:23 +01:00
Henri Verbeet 34992108bb wined3d: Explicitly calculate the sub-resource layer in wined3d_surface_upload_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-23 08:59:21 +01:00
Henri Verbeet cd53e81a80 wined3d: Explicitly calculate the sub-resource layer in surface_download_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-23 08:59:19 +01:00
Henri Verbeet cb4b757410 wined3d: Pass a texture and sub-resource index to surface_get_blt_info().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-23 08:59:18 +01:00
Henri Verbeet 623ac9fe04 wined3d: Use wined3d_texture_get_sub_resource_target() in surface_load_fb_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-22 09:43:26 +01:00
Henri Verbeet 00badb07bc wined3d: Use wined3d_texture_get_sub_resource_target() in fb_copy_to_texture_hwstretch().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-22 09:43:24 +01:00
Henri Verbeet 1319deec56 wined3d: Use wined3d_texture_get_sub_resource_target() in fb_copy_to_texture_direct().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-22 09:43:22 +01:00
Henri Verbeet c2499e0142 wined3d: Use wined3d_texture_get_sub_resource_target() in draw_textured_quad().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-22 09:43:20 +01:00
Józef Kucia af3a2c751d wined3d: Reduce code duplication in context_dump_fbo_attachment().
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>
2018-02-21 15:31:29 +01:00
Józef Kucia 62c7a351ec wined3d: Dump sample counts for cube maps (Coverity).
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>
2018-02-21 15:31:28 +01:00
Józef Kucia e1d4edab4e wined3d: Fix stack buffer overrun in wined3d_debug_resource_access().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-21 15:31:28 +01:00
Henri Verbeet 29e0230a94 wined3d: Use wined3d_texture_get_sub_resource_target() in wined3d_surface_upload_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-21 09:25:05 +01:00
Henri Verbeet a09edd2446 wined3d: Use wined3d_texture_get_sub_resource_target() in surface_download_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-21 09:25:03 +01:00
Henri Verbeet 4e3cd97d49 wined3d: Use wined3d_texture_get_sub_resource_target() in wined3d_texture_allocate_gl_mutable_storage().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-21 09:25:00 +01:00
Henri Verbeet 4678dac730 wined3d: Introduce a helper to retrieve the texture target in context_set_fbo_key_for_render_target().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-21 09:24:57 +01:00
Henri Verbeet 90696dfe5e wined3d: Store overlay info in textures instead of in surfaces.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-21 09:24:54 +01:00
Henri Verbeet 6ca15e9c13 wined3d: Split WINED3D_RESOURCE_ACCESS_MAP into WINED3D_RESOURCE_ACCESS_MAP_R and WINED3D_RESOURCE_ACCESS_MAP_W.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 13:43:52 +01:00
Henri Verbeet acc0f49aae wined3d: Introduce separate read and write resource map flags.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 13:43:52 +01:00
Józef Kucia de9ebcff70 wined3d: Use renderbuffers when resolving multisample textures with conversion.
Direct3D 9 allows blits from multisample resources to non-multisample
resources with scaling or format conversion. In OpenGL, we resolve
multisample texture to the renderbuffer associated with the texture
before doing the actual blit with scaling/format conversion.

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>
2018-02-16 19:19:44 +01:00
Henri Verbeet dd0ea0a614 wined3d: Enable the multi-threaded command stream by default.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-16 14:25:05 +01:00
Henri Verbeet b6f917b102 d3d11: Set resource access based on usage and CPU access flags.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-16 14:24:55 +01:00
Józef Kucia 1b3b2b2268 wined3d: Introduce structure for dummy textures.
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>
2018-02-15 19:34:52 +01:00
Józef Kucia d9fa6bb6c2 wined3d: Create dummy textures for multisample texture targets.
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>
2018-02-15 19:34:50 +01:00
Józef Kucia a9e3088231 wined3d: Align OpenGL version comments for newer core functions.
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>
2018-02-15 19:34:48 +01:00
Henri Verbeet d612495a72 dxgi: Translate swap effects in dxgi_factory_CreateSwapChainForHwnd().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-15 08:02:14 +01:00
Henri Verbeet 0cf21e85a5 wined3d: Print a fixme for unimplemented swap effects during swapchain (re)creation.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-15 08:02:07 +01:00
Matteo Bruni 9a13d48e4e wined3d: Get rid of legacy mipmap autogeneration support.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-14 20:37:55 +01:00
Matteo Bruni c7ebc8ec32 wined3d: Update feature check for mipmap generation support.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-14 20:37:55 +01:00
Henri Verbeet f08342f573 wined3d: Use the global memory allocation helpers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-14 09:06:58 +01:00
Henri Verbeet 16e54c80c8 wined3d: Get rid of the WINED3D_SWAP_EFFECT_FLIP fixme in swapchain_gl_present().
I think this works about as well as it's going to. There may be a theoretical
issue that GDI draws to the window should end up in the backbuffer after a
flip, but I don't think we have tests showing that to actually be the case,
and generally speaking I'm not all that worried about it.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-14 09:06:53 +01:00
Henri Verbeet 02dc04bcc9 wined3d: Do not implicitly set WINED3D_RESOURCE_ACCESS_MAP for dynamic resources.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-14 09:06:51 +01:00
Henri Verbeet 7772c4fdbf wined3d: Enforce map access on all resources.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-14 09:06:49 +01:00
Matteo Bruni 882742e17a wined3d: Introduce a WINED3DFMT_FLAG_GEN_MIPMAP flag.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-13 20:23:26 +01:00
Henri Verbeet 469dd87899 d3d11: Set WINED3D_RESOURCE_ACCESS_MAP on 2D textures.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-13 20:23:26 +01:00
Józef Kucia ae5d802bda wined3d: Query supported sample counts for multisample textures.
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>
2018-02-13 20:23:26 +01:00
Józef Kucia 2f42f5c911 wined3d: Implement multisample resolve for typed resources.
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>
2018-02-13 20:23:25 +01:00
Józef Kucia 53ddba5305 wined3d: Avoid raw blits when resolving multisample textures.
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>
2018-02-13 20:23:25 +01:00
Józef Kucia b688f6ee34 wined3d: Add STATE_BLEND to debug_d3dstate().
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>
2018-02-09 18:53:13 +01:00
Józef Kucia 220841f33a wined3d: Do not enable GL_ARB_texture_multisample in GLSL.
GLSL 1.50 is required for SM4+.

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>
2018-02-09 18:53:11 +01:00
Józef Kucia 7517d8c2e4 wined3d: Add support for multisample textures in wined3d_texture_update_desc().
This might be called from wined3d_device_reset().

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>
2018-02-09 18:53:07 +01:00
Józef Kucia 2fd86a17bb wined3d: Create multisample textures.
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>
2018-02-09 18:53:06 +01:00
Józef Kucia 11dd0601c5 wined3d: Add registry setting to enable multisample textures.
The registry key helps to add multisample textures support incrementally
without breaking the current support for multisample renderbuffers. It
might be also useful to have a possibility to disable multisample
textures when they are the default code path for multisampling in
wined3d.

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>
2018-02-09 18:53:04 +01:00
Józef Kucia 32e61de282 wined3d: Add support for multisample textures in context_dump_fbo_attachment().
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>
2018-02-09 18:53:02 +01:00
Józef Kucia 7221ccecdd wined3d: Avoid guessing texture target if OpenGL 4.5 is available.
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>
2018-02-09 18:53:00 +01:00