Commit Graph

9039 Commits

Author SHA1 Message Date
Józef Kucia dcc608168a wined3d: Expose viewport array index capability in wined3d_caps.
For viewport array indices in shader stages other than geometry.

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-10-01 19:12:31 -07:00
Andrew Wesie 580ea44bc6 wined3d: Use query buffer objects for occlusion queries.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45723
Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 20:30:42 +02:00
Francois Gouget a659194ebd wined3d: Modernize the macOS spelling.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 18:53:31 +02:00
Andrew Wesie 504380a2b3 wined3d: Remove extraneous flush from EndScene.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45724
Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 01:12:10 +02:00
Henri Verbeet fbcdf8c698 ddraw: Only do asynchronous clears when the application asked for them.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 01:12:04 +02:00
Henri Verbeet a6d640e866 wined3d: Do not create DCs for all textures on WINED3D_NO3D adapters.
WINED3DFMT_D16_UNORM for example doesn't have a corresponding ddi_format.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 01:12:02 +02:00
Henri Verbeet a470045506 wined3d: Move "texture_size" from struct wined3d_gl_limits to struct wined3d_d3d_limits.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-26 16:50:43 +02:00
Henri Verbeet 8aa30cd793 wined3d: Get rid of the "pointsize_min" and "pointsize_max" fields from struct wined3d_gl_limits.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-26 16:50:41 +02:00
Henri Verbeet b04220a21d wined3d: Set a feature level for NO3D adapters.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-26 16:50:39 +02:00
Henri Verbeet c4ae8973b1 wined3d: Support NPOT textures on NO3D adapters.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-26 16:50:37 +02:00
Józef Kucia dbaaee8e4d wined3d: Add GL_ARB_shader_viewport_layer_array 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-09-25 21:45:04 +02:00
Józef Kucia 937f4897fd wined3d: Derive allowed shader versions from the current feature level.
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-09-25 21:45:04 +02:00
Józef Kucia c83a47004a wined3d: Cleanup fallback cards list.
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-09-25 21:45:04 +02:00
Henri Verbeet b1d6d47c0c wined3d: Store the wined3d creation flags for NO3D adapters as well.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-25 12:29:08 +02:00
Henri Verbeet 9efa178ee6 wined3d: Do not report WINEDDSCAPS_VIDEOMEMORY for WINED3D_NO3D adapters.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-25 12:29:04 +02:00
Józef Kucia 29533a6cba wined3d: Introduce wined3d_device_get_feature_level().
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-09-24 22:41:30 +02:00
Józef Kucia 7b2ff90404 wined3d: Pass feature levels to wined3d_device_create().
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-09-24 22:41:30 +02:00
Józef Kucia 13ec617654 wined3d: Add remaining feature levels.
We still don't have proper and exhaustive checks for feature levels
capabilities.

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-09-24 22:41:30 +02:00
Józef Kucia 0fbac19e60 wined3d: Make feature level enum compatible with Direct3D 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-09-24 22:41:30 +02:00
Henri Verbeet 1606dd39e2 wined3d: Move the OpenGL texture format to struct wined3d_format_gl.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-24 10:24:31 +02:00
Henri Verbeet 3ad933d5e6 wined3d: Introduce WINED3DFMT_FLAG_BLIT.
To indicate whether a particular format can be used for "off-screen plain"
surfaces.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-24 10:24:29 +02:00
Henri Verbeet 723e62ab99 wined3d: Accept "renderer" in addition to "DirectDrawRenderer".
Even though the "gdi" renderer is mainly used for ddraw, wined3d itself has no
knowledge of ddraw.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-24 10:24:27 +02:00
Henri Verbeet e6076c8def wined3d: Move the OpenGL view class to struct wined3d_format_gl.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-21 23:58:56 +02:00
Henri Verbeet 62ef751633 wined3d: Move the OpenGL vertex format to a separate structure.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-21 23:58:56 +02:00
Józef Kucia d3da2400e6 wined3d: Store max_clip_distances in struct d3d_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>
2018-09-20 16:37:30 +02:00
Józef Kucia 6d543d237c wined3d: Allocate memory for formats in wined3d_adapter_init_format_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>
2018-09-20 16:37:28 +02:00
Józef Kucia ff6d7de8ca wined3d: Add support for variable-sized format structures.
In order to move GL-specific fields into their own structure.

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-09-20 16:37:27 +02:00
Józef Kucia 6a38579d0f wined3d: Introduce separate function for OpenGL formats initialisation.
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-09-20 16:37:25 +02:00
Józef Kucia a84dad34ae wined3d: Introduce get_format_by_idx() helper function.
In preparation for variable-sized format structures.

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-09-20 16:37:22 +02:00
Henri Verbeet 859c1d26ce wined3d: Disallow creating devices without adapters in wined3d_device_create().
These days, we have an adapter even with WINED3D_NO3D.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-20 12:34:27 +02:00
Henri Verbeet 8f9a2165e9 wined3d: Rename "wined3d_adapter_opengl" to "wined3d_adapter_gl".
For consistency with the filename.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-20 12:34:24 +02:00
Józef Kucia e1dc8a6d64 wined3d: Apply legacy format swizzles only when requested.
We do not want to apply legacy format swizzles for D3D10+.

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-09-18 20:59:38 +02:00
Józef Kucia a4bcee5dcc wined3d: Implement vCoverage register.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45848
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-09-18 20:59:38 +02:00
Henri Verbeet 07dad9b150 wined3d: Store the NPOT texture capabilities in struct wined3d_d3d_info.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 12:29:25 +02:00
Henri Verbeet 2e34d2e457 wined3d: Reorder the formats in debug_d3dformat() to match the enum order.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 12:29:23 +02:00
Henri Verbeet 14cda07a9f wined3d: Properly initialise the driver info in wined3d_adapter_no3d_init().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 12:29:21 +02:00
Henri Verbeet d76c027ef7 wined3d: Get rid of the "format_count" field from struct wined3d_adapter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 12:29:19 +02:00
Henri Verbeet db5f14e411 wined3d: Make the resource parameter to wined3d_resource_get_decompress_format() const.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-17 15:40:08 +02:00
Józef Kucia f9d14d6713 wined3d: Cleanup get_flexible_vertex_size().
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-09-17 15:39:13 +02:00
Józef Kucia 51db33ca07 wined3d: Move get_flexible_vertex_size() to device.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-09-17 15:39:12 +02:00
Józef Kucia 454f87980a wined3d: Initialise typeless formats after all formats properties are initialised.
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-09-17 15:39:10 +02:00
Józef Kucia 34b7e19cdb wined3d: Initialise typeless_id for typeless formats early.
Allows us to use wined3d_format_is_typeless() while initialising
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>
2018-09-17 15:39:08 +02:00
Józef Kucia 15e594ae47 wined3d: Store additional flags directly in wined3d_format_block_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>
2018-09-17 15:39:07 +02:00
Józef Kucia e1c59f12c5 wined3d: Add missing formats to debug_d3dformat().
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-09-17 15:39:05 +02:00
Józef Kucia 62d1b64333 wined3d: Use get_format_internal() to get WINED3DFMT_UNKNOWN.
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-09-17 15:39:03 +02:00
Józef Kucia ea8a88047c wined3d: Set WINED3DFMT_FLAG_COMPRESSED based on format block 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>
2018-09-14 19:09:50 +02:00
Józef Kucia 2b56410081 wined3d: Use >= for shader model checks in feature_level_from_caps().
Spotted by Matteo Bruni.

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-09-14 19:09:47 +02:00
Henri Verbeet a220669f33 wined3d: Introduce WINED3DFMT_FLAG_VERTEX_ATTRIBUTE.
To indicate a format can be used for vertex attributes.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-14 12:48:31 +02:00
Henri Verbeet 39e19d2d21 wined3d: Use a table for colour fixups in apply_format_fixups().
This ends up being slightly more code, but I think the table is much more
readable.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-13 19:17:12 +02:00
Henri Verbeet cff217f9fc wined3d: Handle lack of ARB_half_float_vertex in format_vertex_info[].
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-13 19:17:11 +02:00