Henrik Rydgård
94ee0c5a01
Merge pull request #6815 from unknownbrackets/gpu-minor
...
Eat cycles during GE block transfers
2014-08-31 09:29:09 +02:00
Unknown W. Brackets
337b34ef6a
Eat cycles during block transfers.
...
Tests show this takes a number very close to 1.9 times the number of bytes
in cycles @222.
Using that value caused a tiny fps drop in one area of the God of War
demo, which may be correct but might also cause complaints. A lot of our
other timing is not accurate, so using a lower value (1.6) to be on the
safer side.
This may cause things to reschedule more accurately when games drawsync,
and improves the gpu/commands/blocktransfer test.
2014-08-30 22:02:28 -07:00
Unknown W. Brackets
9ce5c49978
d3d: Add basic stencil mask handling.
...
Mostly so we have it in dxstate, will probably reorganize stuff later.
2014-08-30 11:18:18 -07:00
Unknown W. Brackets
4e5778d714
d3d: Correctly disable stencil testing.
2014-08-28 01:21:29 -07:00
Unknown W. Brackets
1f51fe7843
d3d: Avoid rewriting textures, just swizzle.
...
Luckily A is in the same place and the same width, so we can do this for
all but framebuffers easily.
Technically we could do it in OpenGL as well.
Small (1-2%) performance improvement in FF2.
2014-08-28 01:20:21 -07:00
Unknown W. Brackets
140eb82821
d3d: Don't flip render-to-tex.
...
Fixes flipped screens and objects in a bunch of games.
2014-08-27 07:19:41 -07:00
Unknown W. Brackets
2191382a7a
d3d: Scale positions by 128/32768.
2014-08-26 08:18:24 -07:00
Unknown W. Brackets
d987cfea37
d3d: Cache sampler/render state like in GL.
...
Small 3% performance improvement. Also, would prefer to have the bugs
from this now rather than later.
2014-08-26 08:08:02 -07:00
Unknown W. Brackets
5e528f673d
d3d: Set the lod bias for textures.
...
Why aren't these caching?
2014-08-26 07:58:09 -07:00
Unknown W. Brackets
b8e768066f
d3d: Remove another use of D3DCOLOR.
...
Fixes more colors.
2014-08-26 07:46:22 -07:00
Unknown W. Brackets
2448386e8a
d3d: Specify clamping incr/decr of stencil.
2014-08-26 00:23:34 -07:00
Unknown W. Brackets
a34bf158e3
d3d: Clean up some normal handling.
...
So hardware and software transform match gles.
2014-08-25 07:43:19 -07:00
Unknown W. Brackets
170036e171
d3d: Fix another shader compile error.
2014-08-25 07:31:10 -07:00
Unknown W. Brackets
78c342889e
d3d: Prevent crash on Release() of render-to-tex.
...
Might be safer to do as we do in GLES and always have a texture...
2014-08-25 02:15:02 -07:00
Unknown W. Brackets
a533d76c8e
d3d: Convert DXT texture colors.
...
Doesn't seem like this is 100% correct though, not sure.
2014-08-25 02:00:55 -07:00
Unknown W. Brackets
5e829f06e8
d3d: Fix a shader compiler error.
2014-08-25 01:39:04 -07:00
Unknown W. Brackets
41d699ba98
d3d: Unbreak hardware transform, oops.
...
This was broken by my earlier commit. Now we can send colors directly.
2014-08-25 01:16:49 -07:00
Henrik Rydgård
64100dc642
Merge pull request #6780 from unknownbrackets/ge-debugger
...
Welcome Direct3D9 to the GE debugger family
2014-08-25 09:59:46 +02:00
Unknown W. Brackets
c65f9603bd
d3d: Fix some RGBA / ARGB color issues.
...
I wonder if we should just send floats here? We denormalize and then
renormalize in software...
2014-08-24 23:34:48 -07:00
Unknown W. Brackets
d2018f4aea
d3d: Copy over the vertex preview stuff.
...
Really need to just centralize, I know. But want a debugger that works
first.
2014-08-24 22:19:59 -07:00
Unknown W. Brackets
4a615dc46c
Support BGRA formats in the debugger previews.
2014-08-24 22:08:28 -07:00
Unknown W. Brackets
42aa494aeb
d3d: Get some initial GE previews working.
...
Wrong colors.
2014-08-24 21:52:47 -07:00
Henrik Rydgard
1d7642fa48
Remove most mentions of the "_XBOX" define
2014-08-24 14:21:35 +02:00
Henrik Rydgard
6011255e6f
D3D: Don't display buffered rendering upside down. Support screen scaling filter setting
2014-08-24 14:04:55 +02:00
Ced2911
fdc5d02e27
[Gpu] Various speedup (texture cache not tested ...)
2014-08-24 13:43:34 +02:00
Ced2911
ef54989598
[Gpu] update code, cleanup shaders generation: fixes rr2 lighting !
...
Conflicts:
GPU/Directx9/PixelShaderGeneratorDX9.cpp
GPU/Directx9/ShaderManagerDX9.cpp
GPU/Directx9/VertexDecoderDX9.cpp
2014-08-24 13:43:09 +02:00
Ced2911
9caa783137
[Gpu] Sync with gles
...
Conflicts:
GPU/Directx9/GPU_DX9.cpp
2014-08-24 10:46:41 +02:00
Ced2911
49cc8e7312
[Gpu] Sync with gles
...
Conflicts:
GPU/Directx9/FramebufferDX9.cpp
GPU/Directx9/FramebufferDX9.h
GPU/Directx9/TransformPipelineDX9.cpp
2014-08-24 10:40:16 +02:00
Ced2911
6ee39c9abd
[Gpu] Update
...
Conflicts:
GPU/Directx9/FramebufferDX9.cpp
GPU/Directx9/FramebufferDX9.h
GPU/Directx9/VertexDecoderDX9.cpp
GPU/Directx9/helper/fbo.cpp
2014-08-24 10:29:47 +02:00
Ced2911
e0c3b5a112
[Gpu] somes fixes, monster hunter 2 run between 140 and 200% with vertex cache enabled
...
Conflicts:
GPU/Directx9/FramebufferDX9.cpp
GPU/Directx9/GPU_DX9.cpp
GPU/Directx9/VertexDecoderDX9.cpp
GPU/Directx9/helper/global.cpp
2014-08-24 10:21:08 +02:00
Ced2911
ace1e71456
[Misc] Windows fixes
...
Conflicts:
GPU/Directx9/TransformPipelineDX9.cpp
GPU/Directx9/VertexDecoderDX9.cpp
GPU/Directx9/helper/fbo.cpp
GPU/Directx9/helper/global.cpp
2014-08-24 10:17:11 +02:00
Henrik Rydgard
dcd8753ee1
Cherry-pick a tiny part of cf41d2af29633146e5b07c8851382efe72491091
2014-08-24 09:56:01 +02:00
Ced2911
d4adc3abb8
[dx9] don't do alpha test in pixel shader, use state mapping
...
hrydgard: Cleaned up a bit, disabled by default
Conflicts:
GPU/Directx9/TextureCacheDX9.cpp
2014-08-24 09:52:34 +02:00
Henrik Rydgard
1556234825
Bit more d3d stuff. Can't get depth right, pretty sure it's the projection matrix calc.
2014-08-23 01:52:46 +02:00
Henrik Rydgard
a758917919
D3d cleanups and improvements
2014-08-22 22:16:46 +02:00
Henrik Rydgard
00d5793f7d
D3D9: Don't crash on bad vertex formats.
2014-08-22 21:27:27 +02:00
Henrik Rydgard
e2ecbb7a4d
Convert more UI code to Thin3D
2014-08-22 20:55:18 +02:00
Henrik Rydgard
e539c7009f
Hook up DX9 backend. Not really working though, it seems.
2014-08-22 20:55:12 +02:00
Unknown W. Brackets
602daf5f8a
Add some missing algorithm includes.
2014-07-01 00:26:22 -07:00
Unknown W. Brackets
0a33eb4c42
Fix missing log semicolons only affecting logging.
2014-06-29 19:09:39 -07:00
Unknown W. Brackets
5db79dcf11
Fix some missing semicolons on log statements.
2014-06-29 19:09:37 -07:00
Unknown W. Brackets
2038bc5527
Support alpha / color test masks on desktop/gles3.
...
Won't work on GLES 2, though...
2014-06-16 00:33:48 -07:00
Unknown W. Brackets
f6649794df
Respect max texture level in GE debugger preview.
2014-06-15 10:31:16 -07:00
Unknown W. Brackets
adee76cd62
Add a matching PerformMemoryUpload().
...
Just so we have both Download and Upload to use later.
2014-06-10 00:45:03 -07:00
Unknown W. Brackets
089ee41d9c
Implement a very basic stencil upload.
...
This is not fast or efficient, but works.
2014-05-31 21:48:09 -07:00
Unknown W. Brackets
1433b98c46
Clean up the framebuffer force downloads.
2014-05-31 10:03:03 -07:00
Unknown W. Brackets
8dcc09c9e1
Use a separate func for gpu memset().
2014-05-27 07:50:01 -07:00
Unknown W. Brackets
8275f613ce
UpdateMemory() now returns whether to skip the cpy.
...
This way it can do it itself as necessary in the right order.
2014-05-25 21:48:41 -07:00
Unknown W. Brackets
4cc4cfed4c
Note that VADDR/IADDR are not updated on PRIM.
...
Even though they do increase the addresses, they don't affect the CMD
registers.
Also, make sure not to use a crazy bytesRead for a zero-sized prim.
2014-05-04 18:24:49 -07:00
Henrik Rydgard
16f4622ac7
Remove cached light variables to reduce work when parsing DLs.
...
Also removes some duplication between GL and the inactive D3D code.
2014-04-21 12:51:19 +02:00