Unknown W. Brackets
3787471791
Add some initial methods to GPUDebugInterface.
2013-09-22 10:22:33 -07:00
Henrik Rydgard
d7ae3f88a1
Do Beziers more correctly (although still not tesselating properly).
...
Snow now visible in SSX.
2013-09-22 09:52:46 +02:00
Henrik Rydgard
01def3b6cc
Missed these
2013-09-21 23:44:11 +02:00
Henrik Rydgard
82e5787bbe
Preparation for proper spline/bez: Convert control points to a simple format.
...
The bezier/spline code will no longer need to handle morph and splines,
when it's finally written. This is done by pre-skinning in software and
pre-decoding to get rid of the morph.
2013-09-21 23:37:14 +02:00
Unknown W. Brackets
a1f3591960
Android buildfix.
2013-09-20 09:51:43 -07:00
Unknown W. Brackets
7906de26f7
Try to match especially the size of ge contexts.
...
But also some of the actual data, most of it matches like this.
2013-09-20 00:33:32 -07:00
Unknown W. Brackets
ad4bd8ed74
softgpu: small optimization, precompute tex info.
2013-09-15 21:39:28 -07:00
Unknown W. Brackets
68f61e5071
Remove some unused gstate_c values.
2013-09-14 14:36:06 -07:00
Unknown W. Brackets
7b2dea4429
Use accessors for offsetx/y.
2013-09-14 11:06:48 -07:00
Unknown W. Brackets
40e3e8e930
Use a gstate enum, report unhandled blend mode.
2013-09-14 07:36:43 -07:00
raven02
f6c41bfa13
Add u16 getTextureDimension(int level)
2013-09-08 16:09:40 +08:00
Unknown W. Brackets
bbf714c361
Provide for GPU init failure, kill a warning.
2013-09-07 22:30:30 -07:00
raven02
e834b1b80d
Use GEComparison for getDepthTestFunction()
2013-09-05 13:59:09 +08:00
raven02
7f080b9958
Add isAntiAliasEnabled()
2013-08-30 20:46:36 +08:00
Henrik Rydgard
711d3ff52c
Speedup a few 2D games on mobile by eliminating the alpha test in some conditions
...
That is, if there's no depth testing/writing, and the alpha equation will produce the same result as the alpha test (when the alpha test is >= 0 or != 0 and the blend func is safe), we turn off the alpha test.
2013-08-27 21:48:03 +02:00
Henrik Rydgard
6360fcb0ae
Add some stats to get some idea of much alpha tested drawing we do.
...
Turns out it's one hell of a lot and we really should fix this by
checking both vertices and textures to deduce when we can just skip
alpha testing safely, probably quite often.
I care about this because alpha testing drawing is very expensive
on some mobile chips.
2013-08-27 21:01:17 +02:00
Unknown W. Brackets
cd70250d8c
Use more accessors, simplify softgpu colortest.
2013-08-24 11:34:38 -07:00
Unknown W. Brackets
5ab04a3076
Centralize CLUT handling form gstate values.
2013-08-24 11:34:37 -07:00
Unknown W. Brackets
7f6cf3ec29
Add a few gstate accessors for texture type stuff.
2013-08-24 11:34:37 -07:00
Unknown W. Brackets
0a217a1254
Use accessors better for block transfers.
2013-08-24 11:34:36 -07:00
Unknown W. Brackets
c141e94fe9
Use gstate.* accessors in a few more places.
2013-08-24 11:34:35 -07:00
Henrik Rydgard
dfb91d4532
Track number of GPU commands executed per call level.
...
This is to get an idea if it would be beneficial to compile and cache display lists. Looks like it would be for some games, for example in GTA it's often 20k/80k/20k commands per frame - that is 100k executed commands per frame that could potentially just be executed instead of interpreted. Likewise in Wipeout. Of course, this means yet another cache with invalidation issues etc..
2013-08-23 11:29:55 +02:00
raven02
282d072793
Add isTextureAlphaUsed()
2013-08-20 21:28:16 +08:00
Tony Wasserka
2962d242cb
softgpu: Implement skinning.
2013-08-16 23:49:14 +02:00
Tony Wasserka
11a94e1d14
softgpu: Implement spline surface drawing (without patch subdivision).
2013-08-16 23:49:13 +02:00
Tony Wasserka
d2f30961af
softgpu: Make perspective correct uv mapping code more readable and implement projection mapping.
2013-08-16 23:49:12 +02:00
Tony Wasserka
62b384e052
softgpu: Lots of clearmode fixes.
2013-08-16 23:49:11 +02:00
Tony Wasserka
e1216e91cc
softgpu: Implement texture scaling, texture offset and texture coordinate wrapping/clamping.
2013-08-16 23:49:10 +02:00
Tony Wasserka
d91d5c087b
GPUState: Fix depth buffer stride getter.
2013-08-16 23:49:09 +02:00
Tony Wasserka
a013aad6f1
softgpu: Fix incorrect depth buffer write base address.
...
softgpu: Implement framebuffer pixel formats different than RGBA8888.
softgpu: Move texel decoding functions to a separate header.
2013-08-16 23:49:09 +02:00
Tony Wasserka
0e1e8fe331
softgpu: Clean up depth testing code.
2013-08-16 23:49:02 +02:00
Henrik Rydgard
96373132bb
Android buildfix
2013-08-14 20:42:13 +02:00
raven02
fad8b77044
Merge remote-tracking branch 'upstream/master' into patch-13
2013-08-14 07:29:56 +08:00
raven02
c2a86d647f
Fix wrong size generated of FBO for some games which uses it as render-to-texture
2013-08-12 02:20:55 +08:00
Unknown W. Brackets
e7c7c5b3db
Add a setting to launch a separate CPU thread.
2013-08-09 22:41:30 -07:00
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
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