Commit graph

229 commits

Author SHA1 Message Date
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
raven02
c4a3638183 Add gstate.isClearModeDepthWriteEnabled/ColorMask/AlphaMask() 2013-08-03 14:56:37 +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
2f94977efe Don't include gfx/gl* outside the OpenGL GE. 2013-07-29 22:47:38 -07:00
raven02
adf0680897 gstate code cleanup 2013-07-29 17:25:07 +08:00
Henrik Rydgard
50a2d1b87f More work on prescaled UV 2013-07-28 00:33:51 +02:00
Unknown W. Brackets
4cfa074546 Use GE state accessors in the texcache. 2013-07-21 19:45:05 -07:00
Unknown W. Brackets
b2927213c7 Use stencil GE state accessors. 2013-07-21 19:45:04 -07:00
Unknown W. Brackets
46805b37cb Use the texture-related GE accessors. 2013-07-21 19:45:04 -07:00
Unknown W. Brackets
abd9dc6137 Use the light computation/type GE accessors. 2013-07-21 19:44:30 -07:00
Unknown W. Brackets
c0da6b97c5 Add and use some color/alpha test accessors. 2013-07-21 19:44:30 -07:00
neobrain
3ca0c5397f Add logic op/color masking GE state accessors. 2013-07-21 19:44:29 -07:00
neobrain
e6e7dd66d0 Implement some stencil test GE state accessors. 2013-07-21 19:44:29 -07:00
Florent Castelli
cc180fa204 Add type safe getter for texture and clut format fields. 2013-07-21 19:44:28 -07:00
neobrain
a70220a1d5 Add clut GE state accessors. 2013-07-21 19:44:28 -07:00
neobrain
01824e44ae Add some texture-related GE accessors. 2013-07-21 19:44:23 -07:00
neobrain
4c74cafa51 Add some more lighting related accessors. 2013-07-21 19:43:34 -07:00
neobrain
abca8f6c87 Add some more GE state accessors for light/etc. 2013-07-21 19:43:34 -07:00
neobrain
a40741798c Add accessors for several lighting related values. 2013-07-21 17:43:08 -07:00
raven02
7ac496529b Vendor Based Alpha and Color Testing 2013-07-21 01:14:36 +08:00
Henrik Rydgard
4c913c097e new attempt at sizing the framebuffers, similar to what raven02 said 2013-07-10 21:59:43 +02:00
PGGB
eaa8813d44 Remove relative gl_common.h include directives 2013-07-10 19:28:15 +02:00
Sacha
b39a572043 Buildfixes.
Fix C++11 usage.
Remove redundancy.
Fix st_*time re-usage.
2013-06-02 13:26:39 +10:00
Unknown W. Brackets
9c85bd92e4 Show statistics for GPU cycles executed per frame. 2013-05-31 10:40:16 -07:00
Unknown W. Brackets
cb217189c5 Keep track of whether a texture has alpha.
This way we know what sorts of blending we even have to do.  Commonly,
textures don't have any real alpha.

Not yet used for anything.
2013-05-08 23:14:19 -07:00
Unknown W. Brackets
85a23dac63 Avoid framebuffer lookups for repeated prims.
There are usually many prims per framebuffer.  This cuts time spent in
SetRenderFramebuffer() from 1% to 0.13% (although a bit more time in
ExecuteOp, not much.)
2013-04-22 22:04:27 -07:00
BeaR
8cc3f01b7b Use correct state for lmode 2013-04-16 19:22:18 +02:00
Henrik Rydgard
ea11c36091 Fix a vshader id bit collision, avoid color test when set to 'ALWAYS', zeroinitialize dls. 2013-04-15 22:57:54 +02:00
BeaR
fa3a1fbd52 Add support for spotlights 2013-04-09 18:26:06 +02:00
raven02
6396324f57 Add few isEnabled() in GPUState for Alpha/Color/Lighting/Texture Test 2013-03-27 18:35:54 +08:00
Henrik Rydgard
d96c588288 Cache vertex decoders. No big boost now, but opens for optimizing them more, and lets us keep stats of the most common ones. 2013-03-24 12:28:42 +01:00
Henrik Rydgard
b1108f3290 Respect the size of the current FBO when drawing. Some cleanup. 2013-03-16 00:40:37 +01:00
Henrik Rydgard
bc15617392 Make un-buffered rendering much smarter, removing flicker.
This turns it into a very viable option for many games. You do lose some FX
but it can as a result even be used as a workaround for the massive glow
in Wipeout...
2013-03-03 13:00:21 +01:00
raven02
e15df27c4a New isAlphaBlendEnabled() & isDitherEnabled() 2013-02-27 22:37:17 +08:00
Henrik Rydgard
28979e9250 Some work toward better FBO handling. Fixes some things, breaks some things.. 2013-02-21 21:37:19 +01:00
Henrik Rydgard
7c91802e3c Add some infrastructure to be used for frameskipping 2013-02-19 00:45:26 +01:00
Henrik Rydgard
2301a3b49e Flip texcoord vertically when texturing from FBO to compensate for OpenGL coordinate systems 2013-02-15 00:31:39 +01:00
Henrik Rydgard
0982a29293 Some texturecache code cleanup. Fix missing DIRTY_AMBIENT.
The latter fixes the blinking caustics in the tunnel in Vineta K in Wipeout Pure.
And surely other things.
2013-02-12 21:01:53 +01:00
Henrik Rydgard
ca347da99c Depth range should not be applied in through mode. Fixes sky in Wipeout Pure. 2013-02-09 20:53:32 +01:00
Henrik Rydgard
bf7e5a4115 Mipmapping! Fixes issue #614 2013-02-08 00:04:34 +01:00
Henrik Rydgard
5c5f6ef165 Fix error in vertex shader compiler - no uniform called u_matambient 2013-02-04 23:33:14 +01:00
Henrik Rydgard
00f9c97479 Seems vertex/index addresses should be computed through the same mechanism as jumps.
Gets rid of bad vertex address messages in Sol Trigger.
2013-02-02 23:48:22 +01:00
Henrik Rydgard
510f1ac3f4 Some misc GE constant renames / disasm 2013-02-02 13:40:26 +01:00
Henrik Rydgard
0769a1d3e8 I think I finally understood how origin-relative GE jumps are supposed to work. 2013-02-02 13:38:34 +01:00
Henrik Rydgard
8a32779150 Misc GPU stats etc changes 2013-01-25 18:29:14 +01:00
Henrik Rydgard
8ff96bbcd8 Defer vertex decoding until flush. Track draw calls so that they can be cached later. 2013-01-19 17:05:50 +01:00
Henrik Rydgard
590d94da9f Add basic stencil test functionality, shadows work in Wipeout. update native.
This is not the whole story though, the PSP is being tricky by sharing the dest alpha and stencil.
2013-01-12 17:21:07 +01:00
Henrik Rydgard
60f9da3926 Add support for color masking. Improves the look of Wipeout greatly. 2013-01-12 12:52:00 +01:00