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