Robin Kertels
|
d39d879838
|
[d3d9] Add a bunch of missing likely/unlikely to PrepareDraw
PrepareDraw is pretty much the hottest part of the d3d9
frontend, so we take every tiny bit we get.
|
2024-10-09 21:28:59 +00:00 |
|
Robin Kertels
|
395ac38890
|
[d3d9] Fix fixed function texture mask
Fixed function supports 8 textures so we need 8 ones.
|
2024-10-09 21:28:59 +00:00 |
|
WinterSnowfall
|
a1a3800b3f
|
[d3d9] Fix software cursor reset and transitions
|
2024-10-08 20:20:31 +02:00 |
|
Philip Rebohle
|
ad1f70beea
|
[dxvk] Support format conversion in copyImageToBuffer
|
2024-10-08 17:46:18 +02:00 |
|
Philip Rebohle
|
f67c8dd1da
|
[dxvk] Support format conversion in copyBufferToImage
|
2024-10-08 17:46:18 +02:00 |
|
Philip Rebohle
|
c614e537a9
|
[dxvk] Remove alignment parameter from staging buffers
Just align all suballocations to 256 bytes as usual.
|
2024-10-08 17:46:18 +02:00 |
|
WinterSnowfall
|
559398f6a4
|
[d3d9] Check block alignment on texture creation with DXT formats
|
2024-10-08 00:25:55 +02:00 |
|
WinterSnowfall
|
088cf45439
|
[d3d9] Validate 0 valued back buffer dimensions for fullscreen mode
|
2024-10-08 00:25:55 +02:00 |
|
WinterSnowfall
|
6e0c048b88
|
[d3d9] Return D3DERR_DEVICELOST on reset failure due to losable resources
|
2024-10-08 00:25:55 +02:00 |
|
WinterSnowfall
|
912a530d1c
|
[d3d9] Enforce various CheckDeviceMultiSampleType validations
|
2024-10-08 00:25:55 +02:00 |
|
WinterSnowfall
|
980a8d185c
|
[d3d9] Use D24X8 for D3DFMT_UNKNOWN depth stencils
|
2024-10-05 20:03:05 +02:00 |
|
WinterSnowfall
|
bbe82aa534
|
[d3d9] Fix (most) cursor-related Wine tests
|
2024-10-05 18:27:19 +02:00 |
|
WinterSnowfall
|
7ff5321910
|
[d3d9] Implement a software cursor
|
2024-10-05 18:27:19 +02:00 |
|
WinterSnowfall
|
9d19fa18a7
|
[d3d9] Set D3DRS_POINTSIZE_MIN to 0.0f in D3D8 compatibility mode
|
2024-10-05 17:58:04 +02:00 |
|
Philip Rebohle
|
329d9a0bb2
|
[dxvk] Add support for drawing a software cursor
|
2024-10-04 19:10:14 +02:00 |
|
Philip Rebohle
|
2af3fde5f2
|
[d3d9] Remove additional swap chain context
|
2024-10-04 12:58:55 +02:00 |
|
Philip Rebohle
|
63b200f08d
|
[dxvk] Reimplement HUD rendering to use Vulkan directly
And change how rendering works in general so that we emit fewer
draw calls.
|
2024-10-04 12:58:55 +02:00 |
|
Philip Rebohle
|
207e15eb24
|
[dxvk] Refactor swap chain blitter to use plain Vulkan
Temporarily disable the HUD until that is refactored too.
|
2024-10-04 12:58:55 +02:00 |
|
Robin Kertels
|
7d05a99640
|
[d3d9] Fix StretchRect fast-path resolve
|
2024-10-03 00:06:51 +02:00 |
|
Robin Kertels
|
4807af01ad
|
[d3d9] Resolve whole image in StretchRect
Fixes a validation error in Sims 4.
|
2024-10-02 20:22:37 +02:00 |
|
Philip Rebohle
|
b164d6e2a7
|
[d3d9] Do not proactively enable meta copy usage flags
Same as the corresponding D3D11 change, let the backend deal with this
when necessary.
|
2024-09-30 10:29:27 +02:00 |
|
Philip Rebohle
|
67d1285b08
|
[dxvk] Refactor meta blits
|
2024-09-30 10:29:27 +02:00 |
|
Philip Rebohle
|
e6f89062f5
|
[d3d9] Ensure that we stay below the maximum sampler count
|
2024-09-28 20:21:06 +02:00 |
|
Philip Rebohle
|
07dfeeb319
|
[d3d9] Move building sampler key to CS thread
All this bit twiddling is a bit slow. Introduces another structure
containing a minimal amount of sampler parameters taken from the
raw D3D9 state.
|
2024-09-28 20:21:06 +02:00 |
|
Philip Rebohle
|
543b5c7af8
|
[d3d9] Optimize sampler state decoding
This code is rather hot now, so make sure it's fast.
|
2024-09-28 20:21:06 +02:00 |
|
Philip Rebohle
|
c7dab6a442
|
[d3d9] Remove internal sampler pool
We have a sampler pool in the backend now, let's use it.
|
2024-09-28 20:21:06 +02:00 |
|
Philip Rebohle
|
4635397bb1
|
[dxvk] Implement sampler pool
Deduplicates redundant sampler objects and makes sampler creation
as well as lifetime tracking a bit more efficient.
|
2024-09-28 20:21:06 +02:00 |
|
Philip Rebohle
|
b4e69dce76
|
[dxvk] Remove DxvkImageViewCreateInfo
|
2024-09-28 01:50:23 +02:00 |
|
Philip Rebohle
|
8195bea63e
|
[dxvk] Remove DxvkBufferViewCreateInfo
Use the new key struct directly to avoid unnecessary struct conversion.
|
2024-09-28 01:21:07 +02:00 |
|
Philip Rebohle
|
01a7457a6f
|
[dxvk] Remove createImageView function
Use the image's method instead, like we already do for buffers.
|
2024-09-28 00:03:56 +02:00 |
|
Philip Rebohle
|
4ed50ec6be
|
[d3d9] Fix UP buffer allocation
|
2024-09-27 12:55:59 +02:00 |
|
Philip Rebohle
|
25076d9220
|
[dxvk] Rework image view creation
|
2024-09-26 17:37:50 +02:00 |
|
Philip Rebohle
|
713b76bea5
|
[dxvk] Rework image creation
Uses DxvkResourceAllocation to manage image backing storage,
which will allow invalidating images in the future.
|
2024-09-26 17:37:50 +02:00 |
|
Philip Rebohle
|
088ba404a6
|
[dxvk] Rework buffer view creation
|
2024-09-26 17:37:50 +02:00 |
|
Philip Rebohle
|
1fd3c8040d
|
[dxvk] Remove DxvkBufferAllocation
|
2024-09-26 17:37:50 +02:00 |
|
Philip Rebohle
|
6f6e75b4b8
|
[d3d9] Use DxvkBufferAllocation where appropriate
|
2024-09-26 17:37:50 +02:00 |
|
Robin Kertels
|
f5ca3cf5df
|
[d3d9] ResolveZ: Only copy aspects that both images support
|
2024-09-25 00:32:13 +01:00 |
|
Robin Kertels
|
d7c2e3ac76
|
[d3d9] Use correct aspect mask when blitting depth stencil textures
We don't want to blit stencil when the D3D9 format doesn't have
stencil.
|
2024-09-25 00:32:13 +01:00 |
|
Robin Kertels
|
ca3aa2014b
|
[d3d9] Improve comment about synchronization with ProcessVertices
|
2024-09-22 22:53:55 +02:00 |
|
Robin Kertels
|
1d49f247ac
|
[d3d9] Remove incorrect early-exit
The same texture could be bound to
multiple slots and if the shader doesn't
use the lower index texture, we'd never
end up uploading it.
|
2024-09-22 22:53:55 +02:00 |
|
Robin Kertels
|
ef8bad33a5
|
[d3d9] Optimize late buffer uploads
... similar to what we're doing for textures.
|
2024-09-22 22:53:55 +02:00 |
|
Robin Kertels
|
04ad98690b
|
[d3d9] Add SWVP HUD item
|
2024-09-22 21:03:23 +02:00 |
|
Robin Kertels
|
033104f335
|
[d3d9] Cleanup buffer memory flag selection
|
2024-09-22 21:03:23 +02:00 |
|
Robin Kertels
|
5bb8d09a96
|
[d3d9] Always use per-draw buffer uploads on pure SWVP devices
|
2024-09-22 21:03:23 +02:00 |
|
WinterSnowfall
|
97fb6e4f6d
|
[d3d9] Clean up supported formats from GetUnsupportedFormatInfo
|
2024-09-22 20:51:15 +02:00 |
|
WinterSnowfall
|
7985ac9cdb
|
[d3d9] Add R16 and AL16 as known unsupported formats
|
2024-09-22 20:51:15 +02:00 |
|
Robin Kertels
|
07e7781c0b
|
[d3d9] Only add meta image usage after determining layout
|
2024-09-22 15:48:18 +02:00 |
|
WinterSnowfall
|
c7cf0a7368
|
[d3d8] Respect D3DCREATE_MULTITHREADED and make d3d8 thread safe
|
2024-09-21 16:05:25 +02:00 |
|
Robin Kertels
|
c8791a6ba5
|
[d3d9] Don't emit 1-sized vector type in SWVP Emu
Fixes a validation error.
|
2024-09-20 12:57:11 +02:00 |
|
Robin Kertels
|
900edf55b5
|
[d3d9] Only create sampling image views if the image supports sampling
Fixes validation error
|
2024-09-20 12:57:11 +02:00 |
|