xebra
159aa1415d
[spline/bezier]Add some gpu features flags for Instanced Tessellation.
2017-01-31 23:37:06 +09:00
xebra
ce27f7b0b5
Expand gpu features flags to 64-bit.
2017-01-31 23:37:06 +09:00
Henrik Rydgard
9c55e1e0de
Only enable RAM Clears for the SOCOM games that require it.
...
Should remove the performance impact of #8994 which is bigger than
expected, it seems (cache pollution?)
2017-01-28 10:11:43 +01:00
Henrik Rydgard
e4cb44c243
Merge the texture flags into the dirty flags
2017-01-24 18:12:20 +01:00
Henrik Rydgard
c289a2c7bf
Split TextureChanged into two bools, so we can later convert to dirtyflags
2017-01-24 18:12:20 +01:00
Henrik Rydgard
7d60ec73be
Move framebufChanged into the dirty flag field
2017-01-24 18:12:20 +01:00
Henrik Rydgard
b423998c36
Move uniform dirty-flag to gstate_c, opening up for other uses.
2017-01-24 18:12:20 +01:00
Henrik Rydgard
bd4436c6eb
Centralize EstimatePerVertexCost and Execute_BlockTransferStart
2017-01-23 17:22:17 +01:00
xebra
b78e184c51
[spline/bezier]Add some variables in gpu state cache for hardware tessellation.
2017-01-23 14:12:02 +01:00
Unknown W. Brackets
82f3df1e06
Vulkan: Initial support for aniso filtering.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
a995dd2ff4
Get rid of strange offset in Vulkan matrix converter
2016-03-20 19:31:02 +01:00
Henrik Rydgard
4063f7e0db
Fill out GPU_Vulkan.cpp with what's mostly a copy of GLES_GPU.cpp
2016-03-20 19:30:11 +01:00
Unknown W. Brackets
0e85225e29
Bring back the depth range hack.
2016-02-06 20:28:45 -08:00
Unknown W. Brackets
f1c06d25ea
Switch to old-style depth in OpenGL.
...
Some devices really aren't handling the new method well. There seem to be
accuracy problems when specifying the values to OpenGL.
2016-02-06 20:21:14 -08:00
Unknown W. Brackets
79750ed1ad
Add a config setting to control depth quality.
...
For those who want 1x PSP like behavior.
2016-01-20 22:11:00 -08:00
Unknown W. Brackets
b80c02c272
Simulate depth clamping.
...
We'll allow extra space in both directions. It's not exactly right, but
it's a fast approximation.
2016-01-19 07:12:58 -08:00
Henrik Rydgard
e11d0a7e1c
Minor GPU interface cleanup
2016-01-06 23:49:02 +01:00
Unknown W. Brackets
529abd7db4
Correct clamped depth range from [0, 65535].
...
This changes a few things:
* All backends clamp the depth range and keep it positive.
* The depth rounding uniform is now properly dirtied.
* Projection is updated to translate and scale appropriately.
* Depth rounding is halved on OpenGL to account for [-1, 1] range.
Fixes Phantasy Star Portable 2 without the need for a game-specific hack.
2016-01-03 12:29:43 -08:00
Unknown W. Brackets
18cdf9f352
Remove the depth range hack.
...
Ths removes the game-specific hack to workaround depth issues.
2016-01-03 12:05:59 -08:00
Unknown W. Brackets
164594b044
Use a VAO for all drawing, and VBOs throughout.
2015-12-19 09:18:34 -08:00
Unknown W. Brackets
fbc4b4e7a1
Use glCopyImageSubData() when it's available.
...
There's 4 different extensions providing this functionality. NV is
supported on desktop and mobile, EXT/OES on mobile, and ARB on desktop.
Mostly these are only supported by desktop cards and NVIDIA mobile.
Good improvement in performance on NVIDIA when blit is called a lot, since
it doesn't need to rebind anything or change state. Example is in desert
city in Tales of Phantasia.
2015-12-06 10:39:21 -08:00
Henrik Rydgard
4b360a571c
Remove the depth range hack option, turning it into an ugly game specific compatibility hack.
...
I hate doing this, but it's not really better off as an option.
See #8171
2015-11-15 23:00:25 +01:00
Henrik Rydgard
067431b35b
Region is not used in the viewport calculations - remove wrong commented out code
2015-11-04 11:04:47 +01:00
Henrik Rydgard
f4248cb550
Remove a whole lot of flipping special cases
2015-11-02 20:07:30 +01:00
Henrik Rydgard
65b78b18ea
Only enable fragment shader depth rounding for Heroes Phantasia, should reduce flicker.
...
Doens't fix but helps #6485
2015-10-11 20:52:00 +02:00
Henrik Rydgard
b07b002040
Introduce "Compatibility Flags".
...
These should be used very restrictively, see comment in Compatibility.h.
Should help #8004 , by disabling depth rounding in Fight Night round 3.
2015-09-27 01:23:20 +02:00
Unknown W. Brackets
dff4aeb30f
Correct uv bound pointers in arm vertexjit.
2015-09-13 14:55:10 -07:00
Unknown W. Brackets
5c233fa545
Add initial decoding check for uv bounds.
2015-09-13 10:00:33 -07:00
Henrik Rydgard
0237b84efd
Reduce use of #ifdef USING_GLES2 some more
2015-09-05 23:09:06 +02:00
Henrik Rydgard
186d624ef3
Cleanup of FBO+blit flags. Requires the change in native to stop lying.
2015-09-05 22:40:45 +02:00
Henrik Rydgard
5b2ffd1434
Fix some naming, remove NV_draw_texture, move decisions out
2015-09-05 22:11:28 +02:00
Henrik Rydgard
f524049277
Move more GPU feature checks upfront. Re-check when exiting settings menu.
2015-09-05 21:23:58 +02:00
Henrik Rydgard
a71be3f75f
Start moving GPU feature compatibility decisions to startup
...
(and a single, cache-friendly flag field)
2015-09-05 19:58:47 +02:00
Henrik Rydgard
1e8a1b801f
Rename viewportX1/X2 etc to scale + center, which is what they actually are.
2015-08-26 15:24:35 +02:00
Henrik Rydgard
d7f4c47c22
Refactor: Even more getting rid of gstate access in the framebuffer manager.
2015-08-05 12:13:14 +02: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
Henrik Rydgard
aae254254b
Fix bad cleanup change, thanks to tapcio for pointing it out in 07b17560f
2015-07-28 01:09:48 +02:00
Henrik Rydgård
07b17560f4
Add some useful accessors to GPUState (backported from a work-in-progress branch)
2015-07-26 12:24:16 +02:00
Henrik Rydgård
0726912f09
sceDisplay, GPUState cleanup and comments
2015-07-25 09:46:11 +02:00
Unknown W. Brackets
425ff3d78f
Track bone matrix updates for future morph usage.
...
This makes them upload later, if/when they're needed.
Fixes #7746 , Shadow of Destiny artifacts when software skinning is
enabled.
2015-05-16 21:49:25 -07:00
Unknown W. Brackets
5822faabf9
Make sure to wrap clut indexes at 1024 bytes.
...
So that's 256 for 32-bit and 512 for 16-bit.
2015-04-26 00:42:58 -07:00
Unknown W. Brackets
5b61c03b7f
Avoid accidental sign ext for > 24 bit clut shift.
2015-04-26 00:26:24 -07:00
Unknown W. Brackets
67662ee23f
Force clut address to align to 16.
...
Hardware seems to ignore the lower bits when loading.
2015-04-12 22:39:49 -07:00
Unknown W. Brackets
0fc311a319
dx9: Compensate for viewport w/h adjustments.
...
Fixes text in Final Fantasy 4, world map in Star Ocean, etc.
2014-12-18 22:24:47 -08:00
Lioncash
a962bc5a6c
Mark some functions as const
2014-12-07 17:08:13 -05:00
Henrik Rydgard
01a1438dce
Improve depth buffering in D3D by computing a depth-flipped proj matrix but only when needed.
2014-09-08 23:10:23 +02:00
Unknown W. Brackets
1f51fe7843
d3d: Avoid rewriting textures, just swizzle.
...
Luckily A is in the same place and the same width, so we can do this for
all but framebuffers easily.
Technically we could do it in OpenGL as well.
Small (1-2%) performance improvement in FF2.
2014-08-28 01:20:21 -07:00
Unknown W. Brackets
a43c3771a3
More correctly blend when hitting the frame cap.
...
If we hit too many blits per frame, fall back correctly in the shader.
2014-08-18 23:20:48 -07:00
The Dax
8a78f5e814
Pause rendering when minimized, when appropriate (hopefully? This is sort of hard to test.).
2014-07-21 10:30:51 +02:00
Unknown W. Brackets
2883988f22
Ignore the high bits of the framebuffer address.
...
And depth buffer. On a PSP, these bits don't affect where it renders to
even slightly.
2014-06-21 08:29:38 -07:00
Unknown W. Brackets
2038bc5527
Support alpha / color test masks on desktop/gles3.
...
Won't work on GLES 2, though...
2014-06-16 00:33:48 -07:00
Unknown W. Brackets
f6649794df
Respect max texture level in GE debugger preview.
2014-06-15 10:31:16 -07:00
Unknown W. Brackets
030b562eb9
Support render-to-offset within a framebuffer.
...
Fixes #6324 .
2014-06-14 17:08:41 -07:00
Unknown W. Brackets
1d9f7b04fc
Implement in-shader blending on gles2 / gl2.
...
I'm sure it'll be slow, though...
2014-06-13 23:42:59 -07:00
Unknown W. Brackets
acab898be0
Keep track of x/y offset for render-to-tex.
...
Fixes intro in Valkyrie Profile now that we're wrapping correctly.
2014-06-08 14:27:05 -07:00
Unknown W. Brackets
cc841bbe4c
Apply tex wrap/clamp in shader for render-to-tex.
...
Fixes graphical artifacts in Wild Arms XF (which depends on how you get
there, because it's based on the size of the framebuffer.)
2014-06-07 13:13:58 -07:00
Unknown W. Brackets
580143e5e2
Disable vertex arrays before depal as well.
2014-05-31 22:07:42 -07:00
Unknown W. Brackets
29a9ff369e
Make a note when we need to reset the shader.
...
Hmm, not sure this is the cleanest way.
2014-05-27 22:12:25 +02:00
Unknown W. Brackets
f660c04983
Optimize double alpha blending for 1/0 textures.
...
If the blend is 2*a / 1-a, and the alpha is either 1 or 0, we can still
use color doubling instead. Fixes #3379 (Persona 2.)
2014-05-11 14:17:19 -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
raven02
abc5c86339
Split out texture level
2014-04-19 06:45:17 +08:00
Unknown W. Brackets
6cfc61665d
Switch to a bitmask instead.
2014-04-13 14:45:55 -07:00
Unknown W. Brackets
4c1c694d4b
Use flags to avoid hashing textures when unchanged.
...
If only parameters change (like wrapping or clut, etc.) we don't need to
rehash the data - we know it hasn't changed.
Should reduce the distance between lazy texture hashing on and off.
2014-04-13 14:22:39 -07:00
Henrik Rydgard
b174996c1c
Add a conservative check that prevents alpha testing in a few cases.
...
This will become really powerful if we add some code to the vertex decoder
to check for non-full alpha in the vertices, and set gstate_c.vertexFullAlpha if none
is found (probably want to do the reverse, set it to true and clear if any non-255 alpha is found).
Alpha testing is a performance killer on many mobile GPUs so big efforts to
avoid it can be worth it.
2014-03-23 16:32:38 +01:00
Unknown W. Brackets
678237aa6c
Improve SSE usage in software transform.
...
It's actually already pretty decent (unlike the softgpu), but there were a
few places it could use a bit of help. Speeds up things with hardware
transform off, or areas that need to use software transform.
2014-03-17 23:05:48 -07:00
raven02
04f31c5e8e
Add gstate.isSkinningEnabled()
2013-12-16 20:42:45 +08:00
Unknown W. Brackets
a2d91ee26d
softgpu: Don't mask out so much of fb stride.
...
Seems like anything from 4 is supported in 8888, most likely it just needs
to align to 16 bytes. Values above 1024 work, but e.g. 2044 seems buggy.
Fixes the map on Hexyz Force (rendered at 80 stride.)
2013-12-15 11:59:24 -08:00
raven02
2e7609b084
Cleanup ClearmodeDepthMask
2013-12-10 20:48:20 +08:00
Henrik Rydgård
e14f17b430
isClutSharedForMipmaps: This was presumably inverted by accident?
2013-12-09 12:46:13 +01:00
Unknown W. Brackets
c6a441965e
Move shared clut check to gstate.
2013-12-08 23:11:56 -08:00
Unknown W. Brackets
435115441d
Reinitialize the GE on sceKernelLoadExec().
...
Mostly, reset the lists and draw completion, etc.
May be required for Capcom Classic Collection Reloaded to work.
2013-11-28 15:35:12 -08:00
Unknown W. Brackets
7a86ca2890
Mask block transfer stride correctly per tests.
...
1024 is valid, but nothing higher.
May help graphics in some games.
2013-11-25 01:53:33 -08:00
Henrik Rydgard
8c562a615f
Bone matrix loading speedup. Bit of a hack but seems reliable enough.
2013-11-14 14:02:31 +01:00
Henrik Rydgard
7e67476b00
Simple unoptimized software skinning.
...
Does not take advantage of the possible reduction in state changes yet.
2013-11-13 18:10:57 +01:00
Henrik Rydgard
4b98e0d6d6
Optimize LoadClut a little
2013-11-12 17:06:03 +01:00
Unknown W. Brackets
21deaef35a
Invert gstate.getClearModeColorMask().
...
It makes more sense matching gstate.getColorMask().
2013-11-10 03:20:58 -08:00
Henrik Rydgard
80702109f5
Move gpu vendor detection to native with the rest of the gl init.
...
Also disable vertical layout for mainscreen entirely.
2013-10-16 00:48:44 +02:00
Unknown W. Brackets
d49ad5f114
Use an accessor for depth/frame addresses.
2013-10-06 22:17:53 -07:00
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
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