Henrik Rydgard
eea8413a82
Make the texcoord speedhack a bit less aggressive at eliminating uvscaleoffset uniform updates.
...
Should fix #4688 and the new problem in #2919 while keeping Frontier Gate Boost working.
2013-11-30 15:54:20 +01:00
raven02
4d14f88455
Alternative consistent fix
2013-11-26 11:34:33 +08:00
raven02
a8d9796010
Fix texture cord in HW T&L
2013-11-25 21:07:30 +08:00
Henrik Rydgard
e3d471f590
Fix issues with texturing from render targets with prescaled UV (texcoord speed hack)
2013-11-19 23:38:36 +01:00
Henrik Rydgård
67ca4419fe
Fix minor bug where we didn't clear dirtyUniforms if early-outing from UpdateUniform.
2013-11-13 10:02:58 +01:00
Henrik Rydgard
54217deb16
Speed up UpdateUniforms a little
2013-11-12 17:06:03 +01:00
Henrik Rydgård
0471a8c886
Only set fogdepth to highp on PowerVR. May fix #4333
2013-10-28 15:38:25 +01: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
85c013c5b6
Fix a crash in OpenGL on game shutdown.
2013-10-12 01:39:50 -07:00
Henrik Rydgård
ae94e5c078
Must reset lastShader after swtiching shaders outside the "framework".
2013-10-10 20:11:57 +02:00
Henrik Rydgard
4c2c015774
Expose the experimental "bPrescaleUV" as "Texture Coord Speedhack"
...
It's actually quite beneficial in some games, can substantially reduce
glUniform4fv calls.
Also throw in a second shot at glDrawRangeElements.
2013-10-08 22:59:40 +02:00
Henrik Rydgard
7a0b1e40c6
Update native (making GLES3 features possible on desktop). Minor optimization.
2013-10-08 21:50:43 +02:00
Henrik Rydgård
0a4750909e
Try to avoid unnecessary calls to glEnable/DisableVertexAttribArray
2013-10-08 17:47:47 +02:00
Henrik Rydgård
4b019bfcbb
Remove '_' from attribute names as Adreno hates them in glBindAttribLocation.
...
Sigh.
Also remove some logging.
2013-10-08 17:26:33 +02:00
Henrik Rydgård
0ecac31abd
Use glBindAttribLocation to simplify shader usage a little.
2013-10-08 17:18:59 +02:00
Henrik Rydgard
f645988b8f
More precision annotations in shader generators, other microoptimizations
2013-10-07 20:15:00 +02:00
Henrik Rydgard
9dc9c89918
Possible fix to bezier texture coordinate problem reported by CPkmn
2013-09-23 22:02:58 +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
abe805b62a
Prevent a buffer overflow on bad shader.
2013-09-17 08:40:20 -07:00
Unknown W. Brackets
ca1168df3c
Enable the G3D log on Windows by default.
2013-09-07 13:43:07 -07:00
Henrik Rydgard
8c88dff5a4
More log categories, use them (and existing ones). Improve log config.
2013-09-07 22:02:55 +02:00
Henrik Rydgard
55aa3d13c7
Win32: Switch to a UNICODE build. This took quite a bit of fixing.
2013-08-26 19:00:16 +02: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
12c5f5e1e6
Use constants for other uv gen mode usages.
...
And also change them to treat 3 as coords as well.
2013-08-19 00:43:54 -07:00
Henrik Rydgard
4d4b2990ec
GPU ShaderManager: Naming convention, inline a function
2013-08-10 18:39:27 +02:00
raven02
08a315b7db
Fix typo
2013-07-31 02:35:03 +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
b46ab5f5a4
Always defined WIN32_LEAN_AND_MEAN.
...
Might as well, less mess everywhere else.
2013-07-28 21:04:20 -07:00
Unknown W. Brackets
7b7801d59a
Switch to including Windows.h from an intermediate.
...
This makes it easier for Xbox which uses a separate header.
2013-07-28 21:04:19 -07:00
Henrik Rydgard
50a2d1b87f
More work on prescaled UV
2013-07-28 00:33:51 +02:00
Henrik Rydgard
8602c276ca
Remove that silly factor 2 for floating point texcoords and weights.
...
No longer needed since we treat the various vertex formats separately.
2013-07-27 22:14:34 +02:00
Henrik Rydgard
e36e976877
Collapse skinning shaders with #bones < 4 to a single one.
...
Significant perf win for skinned characters in FF:CC and maybe other games.
2013-07-27 20:09:22 +02:00
Henrik Rydgard
bccfd9f2d7
Don't set the projection matrix twice, check for -1 bone matrices (seen in logs..)
2013-07-27 17:32:24 +02:00
Unknown W. Brackets
abd9dc6137
Use the light computation/type GE accessors.
2013-07-21 19:44:30 -07:00
Unknown W. Brackets
988614f6d0
Use lightning GE state accessors where appropriate.
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
raven02
7ac496529b
Vendor Based Alpha and Color Testing
2013-07-21 01:14:36 +08:00
Henrik Rydgard
3e24949f8a
Try different approach to rounding the inputs to the alpha test. Appears to fix some problems on PowerVR.
2013-07-17 23:03:21 +02:00
Henrik Rydgard
81411a74ed
Experimental: Make orientation change possible on Android.
2013-07-16 22:51:25 +02:00
Henrik Rydgard
bf1e07661a
Cheap HW transform solution for raven02's texture scaling fix.
2013-07-10 01:23:35 +02:00
Unknown W. Brackets
9608067ca2
Cleanup initialization order.
2013-07-07 20:31:04 -07:00
Unknown W. Brackets
386d51081c
Optimize linked shader lookup in ApplyShader().
...
We already iterate all (skipping that with an if helps, though), and the
list of shaders in most games is pretty small. Using a map is not gaining
much, and actually makes the whole thing slower.
Cuts from 9.84% time in Tales of Phantasia X (lots of flushes) to 1.85%.
2013-06-30 20:33:50 -07:00
Henrik Rydgard
8aca797f21
Fix silly light direction math bug (probably no effect mostly).
2013-06-24 20:48:31 +02:00
Henrik Rydgard
916184d2f4
Optimize the most common light type, directional, by doing the normalization beforehand. May shorten some shaders below Mali's limit with luck.
2013-06-20 23:30:21 +02:00
Henrik Rydgard
e7097ca95a
Fall back to software transform when hardware transform fails. Should help Mali devices.
...
This is done per shader so the speed hit should not be as bad as turning hw transform off entirely.
Displays a red error at the top of the screen so that we don't trigger this accidentally.
2013-06-06 10:09:37 +02:00
raven02
a945cf0e13
Fix incorrect texture in Dragon Ball Z Shin Budokai 2
2013-05-31 23:00:35 +08:00