Unknown W. Brackets
64d955ea49
d3d: Share the bounding box code.
2014-09-14 14:04:09 -07:00
Henrik Rydgård
2b4ff04c32
Merge pull request #6902 from unknownbrackets/gpu-convergence
...
d3d: Handle block transfers
2014-09-14 11:06:15 +02:00
Unknown W. Brackets
d332452077
d3d: Track memory copies/uploads/downloads.
2014-09-13 17:59:21 -07:00
Unknown W. Brackets
9d24de3269
d3d: Oops, switch over block transfer logic.
2014-09-13 17:28:35 -07:00
Unknown W. Brackets
b9d7ffe484
d3d: Support the Danganronpa hack.
2014-09-13 16:47:23 -07:00
Henrik Rydgard
170e88838f
Slightly improve GPU disassembly
2014-09-13 23:51:07 +02:00
Unknown W. Brackets
6f991a1042
d3d: Add FlushBeforeCopy().
2014-09-13 14:23:18 -07:00
Unknown W. Brackets
dc5afe9b38
d3d: Converge DrawPixels() logic.
...
This makes render to offset actually work properly.
2014-09-13 13:09:26 -07:00
Henrik Rydgard
0818d8ea8d
dx9: More execute functions
2014-09-13 20:55:29 +02:00
Henrik Rydgard
21545e31c6
More convergence (tex stuff)
2014-09-13 17:20:55 +02:00
Henrik Rydgard
a4ae0f951a
Move spline generation to SplineCommon, make SplineDX9.cpp identical to Spline.cpp (merge later somehow)
2014-09-13 15:13:34 +02:00
Henrik Rydgard
2f569533f3
Fix burnout depth issue by dirtying the proj matrix on viewport change
2014-09-13 14:08:07 +02:00
Henrik Rydgard
b4690b23d6
Make D3D TransformDrawEngine more similar to GL
2014-09-13 12:27:20 +02:00
Henrik Rydgard
9b587bb144
Make the D3D backend cmd processing work more similar to the GL backend
2014-09-13 12:11:34 +02:00
Henrik Rydgård
405f67fbef
Merge pull request #6870 from hrydgard/vtxdec-centralize
...
Centralize the vertex decoder
2014-09-13 01:03:22 +02:00
Unknown W. Brackets
ca33ddd4db
d3d: Fix some missing Releases() in debug code.
2014-09-11 23:52:06 -07:00
Henrik Rydgard
38b803aba4
DX9: Enable vtxdec JIT, buildfix
2014-09-12 02:00:34 +02:00
Henrik Rydgard
7b66059ae0
D3D: Assorted cleanup. Add a missing register specification.
2014-09-10 15:20:57 +02:00
Henrik Rydgard
163f81e5be
DX9: "Linked" shaders are now pointless, so remove them.
2014-09-10 14:07:30 +02:00
Unknown W. Brackets
8c229e00b4
d3d: Begin centralizing framebuffer management.
2014-09-09 08:12:42 -07:00
Unknown W. Brackets
d59aa06a3b
d3d: Improve GE debugger with render-to-tex.
...
Also fix a crash in oddly sized framebuffers.
2014-09-09 01:42:21 -07:00
Unknown W. Brackets
9af40cb14f
d3d: Update the texture cache to mostly match.
...
Now we can reduce the differences down.
2014-09-09 00:53:01 -07:00
Unknown W. Brackets
52c1b37465
d3d: Handle texture swizzling in ge preview.
2014-09-08 21:25:37 -07: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
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
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
Henrik Rydgard
dcd8753ee1
Cherry-pick a tiny part of cf41d2af29633146e5b07c8851382efe72491091
2014-08-24 09:56:01 +02:00
Unknown W. Brackets
0a33eb4c42
Fix missing log semicolons only affecting logging.
2014-06-29 19:09:39 -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
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
Unknown W. Brackets
4c1c694d4b
Use flags to avoid hashing textures when unchanged.
...
If only parameters change (like wrapping or clut, etc.) we don't need to
rehash the data - we know it hasn't changed.
Should reduce the distance between lazy texture hashing on and off.
2014-04-13 14:22:39 -07:00
Unknown W. Brackets
d2108a962e
Switch from USING_GLES2 to MOBILE_DEVICE.
...
Still using USING_GLES2 for, well, GLES2. But for things that are really
about mobile, we need a new define. Devices are coming that don't use
GLES2.
2014-02-08 16:37:58 -08:00
Unknown W. Brackets
60cf5df571
Consider the texture changed when framebuf changes.
...
Needed to properly consider render to self (should rebind if the
framebuffer is later used with a separate target.)
2014-01-20 07:52:09 -08:00
Unknown W. Brackets
db77dcd149
Fix some includes on Windows/etc.
2013-12-29 15:59:36 -08:00
Henrik Rydgard
ca1d4172ca
Tiny optimization in block copies
2013-12-04 11:34:54 +01:00
Henrik Rydgard
eea8413a82
Make the texcoord speedhack a bit less aggressive at eliminating uvscaleoffset uniform updates.
...
Should fix #4688 and the new problem in #2919 while keeping Frontier Gate Boost working.
2013-11-30 15:54:20 +01:00
Henrik Rydgard
bd8cb4b02d
Start work on implementing bbox, add a comment with some thoughts..
2013-09-24 14:14:05 +02:00
Henrik Rydgard
424b4cbd5f
Move GE_CMD_BJUMP to GPUCommon. Add the flag. (no actual bbox impl yet)
2013-09-24 14:14:04 +02:00
Unknown W. Brackets
eabd8b5302
Add GPU debugging hooks to Host, not yet in use.
2013-09-22 08:14:55 -07:00
Henrik Rydgard
82e5787bbe
Preparation for proper spline/bez: Convert control points to a simple format.
...
The bezier/spline code will no longer need to handle morph and splines,
when it's finally written. This is done by pre-skinning in software and
pre-decoding to get rid of the morph.
2013-09-21 23:37:14 +02:00
Henrik Rydgard
fce5067279
Show a warning message on game start if Chainfire3D is installed.
2013-09-17 10:27:42 +02:00