1020 Commits

Author SHA1 Message Date
Henrik Rydgard
bc00a7e302 Process frame timing on frame boundaries instead of flips. Frameskipping works better in many games. 2013-08-07 23:32:28 +02:00
Henrik Rydgard
51ffdfa132 Rename gpuStats.numFrames to numVBlanks. Switch to using numFlips for things like cache expirations. 2013-08-07 22:34:00 +02:00
Henrik Rydgård
41f90303b2 Merge pull request #3069 from raven02/patch-10
Logic Ops: code cleanup
2013-08-07 02:08:02 -07:00
Henrik Rydgård
b8978e49d2 Merge pull request #3075 from unknownbrackets/gpu-thread
Prep work for GE and CPU on separate threads
2013-08-07 01:00:26 -07:00
Henrik Rydgård
75b3d78694 Merge pull request #3029 from unknownbrackets/render-fb
Use a null texture for incorrect render-to-texture + delete better
2013-08-07 00:34:38 -07:00
Unknown W. Brackets
00fc5ec40e Enable interrupts as a property of the list.
This way there's no behavior change when enqueue is async.
2013-08-07 00:32:30 -07:00
Unknown W. Brackets
0dc6bab9ff Shouldn't be necessary to flush on drawsync. 2013-08-07 00:32:27 -07:00
Henrik Rydgard
773115bb6d GPU: tiny optimization and log fix 2013-08-06 19:08:38 +02:00
raven02
6798762eaa May fix Vsync broken previously 2013-08-06 23:08:57 +08:00
raven02
6465402283 Logic Ops: code cleanup 2013-08-06 22:14:30 +08:00
Henrik Rydgard
2f1e6f81bb Android buildfix 2013-08-06 11:24:48 +02:00
raven02
ecf43c7ea9 Fix lookup table 2013-08-06 16:46:35 +08:00
raven02
1fb77f5fec Use lookup table 2013-08-06 16:30:58 +08:00
raven02
6992eba90a Add remaining opcodes 2013-08-06 16:25:33 +08:00
raven02
c9c1a75869 Fix opcode/glLogicOp type 2013-08-06 16:14:36 +08:00
raven02
5c4af8908e Add context for logicOps 2013-08-06 16:03:27 +08:00
raven02
f1473ba1fb Add remaining GE_LOGI in enum GELogicOp 2013-08-06 16:01:31 +08:00
Unknown W. Brackets
3aa2db9a8e Simplify ProcessDLQueue() slightly. 2013-08-04 16:31:54 -07:00
Unknown W. Brackets
f7a39d1b12 Move ReapplyGfxState() to GPUCommon.
This way it can be overridden, and simplifies some other things.
2013-08-04 15:15:50 -07:00
raven02
c4a3638183 Add gstate.isClearModeDepthWriteEnabled/ColorMask/AlphaMask() 2013-08-03 14:56:37 +08:00
raven02
fd40bf7ada Use gstate.isClearModeDepthWriteEnabled/ColorMask/AlphaMask() 2013-08-03 14:55:45 +08:00
Unknown W. Brackets
f35b4a6159 Don't use render-to-texture with format mismatch. 2013-08-02 22:45:35 -07:00
Unknown W. Brackets
8e512c926e For now, don't bind mismatched FBs at all.
But still don't create a garbage texture either.
2013-08-02 22:45:34 -07:00
Unknown W. Brackets
ab1c20f509 Detach textures and fbs using a range check.
This is more compatible with the attach logic, and might also be faster.
Although, framebuffer destroys should not be that common.
2013-08-02 22:45:34 -07:00
Henrik Rydgard
61d419b2ec Don't scan for something to decimate every frame. Actually costs perf. 2013-08-01 00:13:58 +02:00
raven02
08a315b7db Fix typo 2013-07-31 02:35:03 +08:00
raven02
635def582c Fix readIndexedTex() to use texture level for width/height 2013-07-31 01:52:29 +08:00
raven02
271171dbe3 Use getUVGenMode() 2013-07-31 01:44:03 +08:00
raven02
0daa550538 Add getWeightMask() 2013-07-30 23:55:11 +08:00
raven02
50f98fe498 Add texture level parameter 2013-07-30 23:23:02 +08:00
raven02
75c9ce2498 GPUstate :Add getTextureWidth() & getTextureHeight()
and
2013-07-30 23:09:22 +08:00
Unknown W. Brackets
676702071d Correctly rebind textures after an fbo tex.
This is the right fix for Tactics Ogre, and makes sense.  May fix other
games too.
2013-07-30 01:06:33 -07:00
Henrik Rydgård
abdeda590e Merge pull request #2991 from unknownbrackets/gpu-minor
Get rid of GLES references outside GLES / UI code
2013-07-30 00:42:55 -07:00
Unknown W. Brackets
ebe68a5d00 Don't bind odd render-to-texture when copying mem. 2013-07-30 00:09:33 -07:00
Unknown W. Brackets
0a9315d0e2 Cut down the scan range to avoid perf hit.
Probably no perf hit anyway.  Should have the same functionality.
2013-07-30 00:02:34 -07:00
Unknown W. Brackets
04dc4ac19b Detect tex subarea renders and palette renders.
But right now, just drawing the original, which isn't really correct.
2013-07-30 00:02:34 -07:00
Unknown W. Brackets
797027779e Log when render to texture formats differ. 2013-07-30 00:02:33 -07:00
Unknown W. Brackets
c31859021c Check the entire FB range for textures.
Using lower_bound/upper_bound should not be very slow.
2013-07-30 00:02:33 -07:00
Unknown W. Brackets
5f5048ca04 Save the bufw for textures as well, to match fbs. 2013-07-30 00:02:32 -07:00
Unknown W. Brackets
89349eae7e Consistently use a proper type for GE fb format. 2013-07-29 23:05:59 -07:00
Unknown W. Brackets
4dde7276c6 Don't use PspDisplayPixelFormat at all. 2013-07-29 22:58:37 -07:00
Unknown W. Brackets
2f94977efe Don't include gfx/gl* outside the OpenGL GE. 2013-07-29 22:47:38 -07:00
Henrik Rydgård
d8cdf37815 Merge pull request #2986 from neobrain/math3d-extensions2
Math3d extensions2
2013-07-29 15:16:16 -07:00
neobrain
2228ff1cd0 GPU/Math3D: Add a 4x4 matrix class. 2013-07-29 22:49:19 +02:00
neobrain
9f73789c22 GPU/Math3D: Add a 3x3 matrix class. 2013-07-29 22:26:42 +02:00
neobrain
d3e33c527e GPU/Math3D: Replace VecX::Lerp methods with more general and clearer Lerp and LerpInt template functions. 2013-07-29 22:26:42 +02:00
neobrain
f080abc9e9 GPU/Math3D: Add methods for casting vectors. 2013-07-29 22:26:42 +02:00
neobrain
4ab080d083 GPU/Math3D: Support converting Vec3 and Vec4 objects to u32 color values. 2013-07-29 22:26:42 +02:00
neobrain
97f4318ce5 GPU/Math3D: Rename VecXRef::Mul to the star operator. 2013-07-29 22:26:42 +02:00
neobrain
878550ec68 GPU/Math3D: Add component swizzlers for Vec2, Vec3 and Vec4. 2013-07-29 22:26:42 +02:00