Commit Graph
38 Commits
Author SHA1 Message Date
Unknown W. Brackets 5360422310 Defer bind of shader blend copy until after verts. 2015-09-13 06:52:47 -07:00
Henrik Rydgard 2430c283a5 More GPU cleaning, removing uses of GPUState.h where not needed.
Want to get rid of direct accesses to GPUState in modules that may be reused in
my future next-gen backends, that will reformat display lists into command lists that will
then be optimized and executed, out of sync with the real GPUState.

Candidate modules that may be reused in full are Framebuffer and Depal, possibly TextureCache to some degree.
2015-07-29 12:37:49 +02:00
Unknown W. Brackets 7f8cf7f800 arm64: Use XXH64 for vertex hashing, etc.
Based on benchmarks, it performs better than XXH32 on an A57.
2015-07-22 21:38:01 -07:00
Henrik Rydgard 058499e5bf De-dupe the spline code 2015-04-08 21:44:54 +02:00
Henrik Rydgard 2002576e9d DrawEngineCommon: Make it possible to call Flush from shared code. 2015-04-08 21:37:54 +02:00
Henrik Rydgard ed8a3eaf6d Move the vertex decoder cache into DrawEngineCommon 2015-04-08 21:35:00 +02:00
Unknown W. Brackets 6b26e1a591 Read pending vertex data before exiting gpu loop.
Fixes save pictures in Crimson Gem Saga.
2015-03-14 18:11:24 -07:00
xebra 51afbdd490 [spline/bezier]Fix the remains of differences between dx9 and opengl. 2014-12-16 22:27:45 +09:00
Unknown W. Brackets 31ba44bc5d dx9: Clean up some differences in spline code.
Hmm, the spell effects look wrong.  Maybe a separate bug.
2014-12-14 09:26:12 -08:00
Henrik Rydgard 1fe2af3421 Fix D3D NFSU crash #7030 in a cleaner way than #7033 :) 2014-10-29 23:51:23 +01:00
Unknown W. Brackets 2b16b5b79b Use XXH64 on 64-bit systems.
I'm not able to reproduce any real performance difference, but I know
there are some games which do more hashing and it may help there.
2014-10-26 17:49:24 -07:00
Henrik Rydgard e22fed8b9f Use unordered_map where it makes sense. Very tiny speed boost?
Also some microoptimizations.
2014-10-19 21:12:25 +02:00
Unknown W. Brackets c88b66b308 d3d9: Emulate some logic ops with blending.
This makes Brave Story's intro visible.  Also add for GLES2/GLES3, but
doesn't seem to work on GLES2.
2014-09-23 21:13:47 -07:00
Unknown W. Brackets 856154a5f9 d3d9: Replace alpha and premultiply blend.
Unfortunately they are fairly tied together.
2014-09-21 12:01:49 -07:00
Henrik Rydgard 07c7687052 More code deduplication. Also normalized some line endings. 2014-09-18 00:45:11 +02:00
Henrik Rydgard 6c313385ab Reduce the diff between the two draw engines 2014-09-18 00:40:25 +02:00
Henrik Rydgard 5e2c30c640 Move GetCurrentSimpleVertices to DrawEngineCommon 2014-09-17 21:37:53 +02:00
Henrik Rydgard cef5f5be40 Fix DX9 bbox crash (DrawEngine::decoded wasn't initialized, because it also existed in the DX9 draw engine) 2014-09-17 21:31:22 +02:00
Unknown W. Brackets 01bdb6e160 Cleanup some minor vertex cache stuff. 2014-09-15 07:08:55 -07:00
Unknown W. Brackets 64d955ea49 d3d: Share the bounding box code. 2014-09-14 14:04:09 -07:00
Unknown W. Brackets f0c37e3f61 d3d: Use minihashing in the vertex cache. 2014-09-14 13:50:57 -07: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 63e3e95d58 Replace the DX9 software transform code with the new common one 2014-09-13 13:53:04 +02:00
Henrik Rydgard ca3ed34b44 Move most GL code out of GLES/SoftwareTransform.cpp 2014-09-13 13:03:37 +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 Rydgard 38b803aba4 DX9: Enable vtxdec JIT, buildfix 2014-09-12 02:00:34 +02:00
Henrik Rydgard 37e3cf362f Move vertexdecoder files into GPU/Common 2014-09-12 02:00:32 +02:00
Henrik Rydgard 1f9c1719e3 Delete the DX9 vertex decoder, use the "GL" one instead (now common) 2014-09-12 02:00:32 +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 02a3ebcb8a d3d: Add vertex full alpha detection. 2014-09-09 01:03:08 -07:00
Unknown W. Brackets 34b1d13c29 d3d: Release vertex decls on shutdown. 2014-09-07 13:07:12 -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
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
Unknown W. Brackets 1e65a691f4 Cap the number of vertexes per flush.
Might not be realistic, but we crash if we go over.  Pretty unlikely to
happen in real games, but I suppose not impossible.  Happens in the vertex
speed demo (#3106.)
2013-10-27 14:43:58 -07:00
Unknown W. Brackets f55b6a0dbc Put the DirectX9 stuff into a namespace.
This makes it almost build on Windows, but not quite.  Some required files
excluded from build, still.
2013-09-15 08:56:12 -07:00
Henrik Rydgard cc6681cd0b Compile Ced's DX9 GPU on Windows. Not hooked up yet.
This needs work, has several problems that must be fixed to run on Windows.

Ced, you'll have to fix up your xb project file a bit, sorry.
2013-09-15 12:52:44 +02:00