Stefan Dösinger
723cd0a4ae
wined3d: Make video memory accounting a per-resource flag.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54701
2023-03-28 11:43:38 +02:00
Zebediah Figura
f3e381d1c9
d3d9: Upload the relevant texture in d3d9_texture_gen_auto_mipmap().
...
Instead of uploading all currently bound textures. Besides being redundant, this
would generate mipmaps for an uninitialized texture, and subsequently trying to
render from nonzero mipmap levels would yield uninitialized data.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54170
2022-12-21 18:24:39 +01:00
Zebediah Figura
9b3742bebb
d3d9: Build without -DWINE_NO_LONG_TYPES.
2022-11-09 21:23:48 +01:00
Zebediah Figura
5f1cbb1b85
d3d9: Use a separate draw texture for managed resources.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52954
2022-09-27 18:14:34 +02:00
Zebediah Figura
2091bb34c2
d3d9: Add reference counting helpers for textures.
2022-09-27 18:14:33 +02:00
Zebediah Figura
d5bb570542
d3d9: Introduce a d3d9_texture_preload() helper.
2022-09-27 18:14:33 +02:00
Zebediah Figura
46c9897bdf
d3d9: Factor out d3d9_texture_init().
2022-09-27 18:14:33 +02:00
Zebediah Figura
a3c4410fea
d3d9: Introduce a wined3d_usage_from_d3d() helper.
2022-08-16 22:27:53 +02:00
Zebediah Figura
5a8b35c8f0
wined3d: Pass a wined3d_device_context to wined3d_shader_resource_view_generate_mipmaps().
...
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>
2021-04-09 20:37:14 +02:00
Zebediah Figura
d4be20ac0d
d3d9: Store the texture's parent device as a d3d9_device pointer.
...
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>
2021-04-08 18:51:20 +02:00
Chip Davis
5b70e3321a
d3d9: Introduce helpers to convert between d3d9 and wined3d multisample types.
...
Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 12:57:17 +02:00
Matteo Bruni
d7eba2a9cb
d3d9: Fix RTV refcounting in d3d9_texture_cube_AddRef().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-18 16:53:02 +01:00
Zhiyi Zhang
f2a850c844
wined3d: Pass a struct wined3d_adapter pointer to wined3d_check_device_format().
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-11 15:55:13 +01:00
Akihiro Sagawa
c90d34178d
wined3d: Record dirty regions for d3d9 textures.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 22:15:05 +01:00
Alexandre Julliard
19f177360e
d3d9: Build with msvcrt.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 10:00:29 +02:00
Matteo Bruni
665fe4f1a4
d3d9: Refuse to create D3DUSAGE_WRITEONLY textures.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-05 19:27:03 +01:00
Józef Kucia
b51bc84338
wined3d: Move wined3d_bit_scan() to public header.
...
wine/port.h is required for ffs().
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>
2019-01-25 23:09:07 +01:00
Henri Verbeet
d511b67da3
d3d9: Disallow creating managed 2D textures on d3d9ex devices.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 20:17:44 +01:00
Henri Verbeet
4d6dfd5d19
d3d9: Disallow creating managed cube textures on d3d9ex devices.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 20:17:44 +01:00
Henri Verbeet
8d567bc9e2
d3d9: Disallow creating managed 3D textures on d3d9ex devices.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-22 23:55:58 +01:00
Henri Verbeet
0ffaf5c28a
d3d9: Do not add map access indiscriminately in cubetexture_init().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-21 17:06:34 +01:00
Henri Verbeet
949dbbd31f
d3d9: Do not add map access indiscriminately in texture_init().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-21 17:06:32 +01:00
Henri Verbeet
c3c98ed4a9
d3d9: Disallow rendertarget and depth/stencil usage on 3D textures.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-20 16:26:04 +01:00
Henri Verbeet
4ef181df6d
d3d9: Do not specify WINED3D_TEXTURE_CREATE_MAPPABLE in cubetexture_init().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-09 21:08:09 +01:00
Henri Verbeet
ee4c5bb3e3
d3d9: Do not specify WINED3D_TEXTURE_CREATE_MAPPABLE in texture_init().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-09 21:08:09 +01:00
Henri Verbeet
03c1422a71
wined3d: Get rid of WINED3DUSAGE_TEXTURE.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-06 11:14:36 +01:00
Henri Verbeet
ae6553bd0b
wined3d: Pass bind flags to wined3d_check_device_format().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-31 16:17:36 +01:00
Henri Verbeet
7cba915710
wined3d: Pass correct bind flags to texture creation functions.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-31 16:17:36 +01:00
Matteo Bruni
ec74a30a18
d3d9: Create single-level textures if the format doesn't support AUTOGENMIPMAP.
...
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
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
Matteo Bruni
280ea40aab
d3d9: Introduce a d3d9_texture_cleanup() function.
...
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-16 19:04:40 +01:00
Matteo Bruni
3d6eb8cf1d
d3d9: Handle D3DUSAGE_AUTOGENMIPMAP textures entirely in d3d9.
...
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
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
5ceaf934de
d3d9: 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
Henri Verbeet
31250d6d4d
d3d9: Use the global memory allocation helpers.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-07 10:05:51 +01:00
Henri Verbeet
9275b06cc0
wined3d: Replace the pool in struct wined3d_resource_desc with resource access flags.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-02 18:36:45 +01:00
Henri Verbeet
916c13c6c1
wined3d: Replace the pool in struct wined3d_sub_resource_desc with resource access flags.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-02 18:36:42 +01:00
Henri Verbeet
2abf1dd323
wined3d: Get rid of WINED3D_POOL_SCRATCH.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-29 20:29:00 +01:00
Matteo Bruni
dfba903bb2
d3d9: Stop calling wined3d_texture_generate_mipmaps().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 20:30:05 +01:00
Henri Verbeet
df6120274d
wined3d: Introduce a helper function to assign wined3d_box values.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-07 11:37:28 +02:00
Nikolay Sivov
1a7ddf8dd9
dxgi: Added support for DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-09 13:16:57 +01:00
Nikolay Sivov
53b7a2a1a1
wined3d: Add texture flag to indicate GetDC() capability.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-02 23:34:25 +09:00
Henri Verbeet
53165034ba
wined3d: Unify resource preloads.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 12:08:58 +09:00
Józef Kucia
64014ae3ed
wined3d: Add "layer_count" parameter to wined3d_texture_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>
2016-04-26 21:35:31 +09:00
Henri Verbeet
9f51e8f77e
d3d9: Use wined3d_texture_get_sub_resource_desc() in d3d9_texture_3d_GetLevelDesc().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-03 13:00:47 +09:00
Henri Verbeet
63256e31b3
d3d9: Use wined3d_texture_get_sub_resource_desc() in d3d9_texture_cube_GetLevelDesc().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-02 12:08:16 +09:00
Henri Verbeet
47c20218b7
d3d9: Use wined3d_texture_get_sub_resource_desc() in d3d9_texture_2d_GetLevelDesc().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-02 12:08:14 +09:00
Henri Verbeet
17ce029f55
d3d9: Use wined3d_texture_get_sub_resource_parent() in d3d9_texture_3d_GetVolumeLevel().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-26 18:38:56 +09:00
Henri Verbeet
6f98e85783
d3d9: Use wined3d_texture_get_sub_resource_parent() in d3d9_texture_3d_UnlockBox().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-26 18:38:52 +09:00
Henri Verbeet
9c280ddc84
d3d9: Use wined3d_texture_get_sub_resource_parent() in d3d9_texture_3d_LockBox().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-26 18:38:48 +09:00