Commit Graph
103 Commits
Author SHA1 Message Date
Henrik Rydgård a71fbccfbc Warning fixes for new LLVM on mac (warns on inconsistent usage of override) 2015-09-17 20:29:37 +02:00
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
Henrik Rydgård a9be90229a Merge pull request #7140 from AbandonedCart/master
use libc++ for iOS to avoid additional directives
2014-12-18 22:38:14 +01: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
xebra 7577a49832 [spline/bezier]Fix huge bezier patch issue related to #5500 2014-12-14 01:49:48 +09:00
xebra 43e3028add [spline/bezier]Writing vertices to the buffer directly. 2014-12-14 01:08:00 +09:00
TwistedUmbrella 3f4d58b0b2 use libc++ for iOS to avoid additional directives 2014-12-05 19:47:02 -05:00
xebra fe051f30a2 [spline/bezier]Fix surface normal at flat shading. 2014-11-29 21:58:11 +09:00
Unknown W. Brackets c0804427ef Merge remote-tracking branch pull/7047.
And fix the whitespace + optimize the pngs.
2014-11-04 01:46:00 -08:00
TwistedUmbrella 07f0478425 Xcode 6 / iPhone 6 compatibility updates 2014-11-04 03:37:40 -05: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
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
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 c8e6a809c3 Use a more frequent mini hash in the vertex cache. 2014-09-13 14:03:12 -07:00
Unknown W. Brackets 37b9af75b1 Refactor vertex caching a little. 2014-09-13 14:03:12 -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 19a9c4481f Move GLES' SoftwareTransform to Common 2014-09-13 13:27:42 +02:00
Henrik Rydgard 4212bbb51e Cleanup SoftwareTransform a bit more 2014-09-13 13:15:18 +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 37e3cf362f Move vertexdecoder files into GPU/Common 2014-09-12 02:00:32 +02:00
Henrik Rydgard 7cf05e44a2 Add option to vertexdecoder to expand UVs to floats 2014-09-12 02:00:31 +02:00
Unknown W. Brackets 33ac30218a Bind the alphatest tex after we know vert alpha.
Before we sometimes thought alpha test was trivially true when it wasn't.
2014-09-10 23:43:48 -07:00
Unknown W. Brackets 94c1271761 Add an experiment with using a texture for tests.
Using an option for now so it's easy to test, if it works well we can
maybe remove the option.
2014-09-07 10:04:57 -07:00
Unknown W. Brackets 39ee5bb6b7 Support stencil incr/decr even without blending. 2014-08-24 10:24:30 -07:00
Unknown W. Brackets 1c3b60a8ee Allow changing software skinning at runtime. 2014-06-28 21:46:43 -07:00
Unknown W. Brackets 640c58a892 Reorganize alphablend state mapping logic. 2014-06-17 00:20:05 -07:00
Unknown W. Brackets fdd759909b Auto-disable shader blending after 48 per frame.
Should prevent possible massive slowdowns from log reporting.
2014-06-15 13:48:06 -07:00
Unknown W. Brackets 5f521bcfb0 Reuse buffer objects when possible.
glBufferData() recreates anyway.
2014-06-07 16:20:12 -07:00
Unknown W. Brackets 4971206e92 Allocate vertexcache buffer names in chunks.
Partially implements #6045.
2014-06-07 16:15:37 -07:00
Unknown W. Brackets 8f9a2b9882 Unbind the fbo texture when it's not used.
Just in case there are problems with decimating it or etc.
2014-05-27 01:45:20 -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 bb2fb12edd Inline SetupVertexDecoder() in SubmitPrim().
Everything SubmitPrim() calls is expensive...
2014-04-05 01:25:04 -07:00
Unknown W. Brackets e7639f666c Ensure stuff run on every prim are inlined.
These both get a ton of calls and show up on profiles.
2014-03-30 00:42:26 -07:00
Unknown W. Brackets a4327702f1 Reduce some includes under GPU/. 2014-03-29 16:51:38 -07:00
Henrik Rydgard 2c76e6d023 Correctly keep track of "full alpha" in vertices (x86 jit only). 2014-03-24 11:19:44 +01:00
Henrik Rydgard 20d480a374 Minor GPU code cleanups 2014-03-23 16:32:38 +01:00
Henrik Rydgard 8b92dcea47 Transform: Compute the "DCID" (draw call ID) incrementally instead of an extra pass. 2014-03-23 01:51:51 +01:00