Commit Graph

1285 Commits

Author SHA1 Message Date
d70726b035 glMapBuffer was slow, go back to glBufferSubData, single combined ps/vs ubo now 2012-10-09 23:41:48 -05:00
d9117ab6a1 try combining vs/ps ubo 2012-10-09 23:41:48 -05:00
e641ede232 make use of glMapBuffer to set ubo data 2012-10-09 23:41:48 -05:00
04836705b7 Show a bit of information when using GLSL shaders. 2012-10-09 23:41:48 -05:00
8e80771670 fix stupid indentation 2012-10-09 23:41:48 -05:00
73a29bf6a1 have separate variables/functions for VS/PS ubo stuff, array was confusing. 2012-10-09 23:41:48 -05:00
a809feae1a Disable UBO buffer generation if hardware doesn't support it. 2012-10-09 23:41:48 -05:00
3bcec51334 More coding style fixes because I suck at sed 2012-10-09 23:41:48 -05:00
3c6d0fc710 8 spaces indentation -> tabs 2012-10-09 23:41:48 -05:00
a5257c1a0a Actually have Dual Source blending work for people. Forgot about this change. 2012-10-09 23:41:06 -05:00
a304af75fd Make this pretty 2012-10-09 23:41:06 -05:00
67687a7b6d Make sure our UBO buffers are always aligned correctly. 2012-10-09 23:41:06 -05:00
5b06bbf87d Use UBOs in every shader. I had missed a few. Only cache Uniform locations if we aren't using UBOs. 2012-10-09 23:41:06 -05:00
5bcbf92f43 Make sure to support everything even if GPU doesn't. 2012-10-09 23:41:06 -05:00
d4a80ca3ec yay, UBOs work 100% now. 2012-10-09 23:41:05 -05:00
1f75ee49bf UBO works for Pixel Shaders if Binding for UBO is zero, otherwise fails. Probably why Vertex shader UBO is failing. Too tired to investigate right now. 2012-10-09 23:41:05 -05:00
904adb9e3d More for Billiard <3 2012-10-09 23:41:05 -05:00
ce7a54f32a Firin ma lazer 2012-10-09 23:41:05 -05:00
b105d70339 Firin ma lazer 2012-10-09 23:41:05 -05:00
c82b92bfc2 Fix one error. 2012-10-09 23:41:05 -05:00
2fbca145cb Remove bSupportsGLSLLocation since it won't work how I expect it. 2012-10-09 23:41:05 -05:00
4a84c6f742 Add in UBOs, doesn't work yet. Still debugging here. 2012-10-09 23:41:05 -05:00
d83ead5914 Support Dual Source Blending in OGL plugin with GLSL. 2012-10-09 23:39:16 -05:00
b24990ca28 Bit of cleanup. Clean up my massive hack in the ShaderManagerFiles. Almost feature parity with Nvidia CG now I think. Just need to do Alpha test with Dual source blending now. 2012-10-09 23:37:52 -05:00
cf68cc0c61 Add support for GL_ARB_shading_language_420pack so we don't have to binding sampler locations. Also add support for GL_ARB_separate_shader_objects which doesn't currently work for some reason....investigating. 2012-10-09 23:37:52 -05:00
081ad949ce Welp, just fixed that problem. 2012-10-09 23:35:45 -05:00
3c9c5de722 Missed a spot. Most games work now, Still have a problem with viewtiful joe. Destination Alpha pass doesn't work yet, going to use Dual source blending on that. 2012-10-09 23:35:45 -05:00
3160da1289 This lets us see stuff with GLSL shaders. Just need to take care of some compile errors now. 2012-10-09 23:33:02 -05:00
7cec31dbf3 Almost there. 2012-10-09 23:33:02 -05:00
0fc755c4df More stuff 2012-10-09 23:31:31 -05:00
7a4c080c70 mah 2012-10-09 23:29:30 -05:00
411357b54a Compile 2012-10-09 23:29:30 -05:00
34c7b3fd73 meh 2012-10-09 23:29:30 -05:00
3943840d5c Now CG plays nice with this new stuff. 2012-10-09 23:27:59 -05:00
a357c77257 Add in GLSL setting again.
PS and VS making. Untested and won't work for now.

Add in program shader cache files.

Readd NativeVertexFormat stuffs.

Add in PS and VS cache things.

SetShaders in places.

Fixed EFB cache index computations in OpenGL renderer.

The previous computation was very likely to go out of array bounds,
which could result in crashes on EFB access.

Also, the cache size was rounded down instead of up. This is a problem
since EFB_HEIGHT (528) is not a multiple of EFB_CACHE_RECT_SIZE (64).
2012-10-09 23:23:37 -05:00
8cefcaa94c Implement a simple benchmarking mode which logs FPS to a file
Very useful to compare performance between two builds, check the impact of
a configuration option, etc. FPS log is stored in User/Logs/fps.txt and is
reset each time you launch a game. Only enabled if you check the "Log FPS
to file" option in your graphics settings.

Could be improved a bit: currently logs only every 1s (so you can't really
see small variations), maybe output more infos to the fps.txt like
average/stddev (but Excel/Libreoffice/Google Docs can compute that easily
too).
2012-10-04 05:41:02 +02:00
94e49c5044 Fix frame skipping on non-win32 systems missing libav
Fixes issue 4097.
2012-08-28 12:29:51 +02:00
08a9c66037 Revert the recent zcomploc changes including the Graphic_Fixes merge.
Reason:
- It's wrong, zcomploc can't be emulated perfectly in HW backends without severely impacting performance.
- It provides virtually no advantages over the previous hack while introducing lots of code.
- There is a better alternative: If people insist on having some sort of valid zcomploc emulation, I suggest rendering each primitive separately while using a _clean_ dual-pass approach to emulate zcomploc.

This reverts commit 0efd4e5c29.
This reverts commit b4ec836aca.
This reverts commit bb4c9e2205.
This reverts commit 146b02615c.
2012-08-10 20:12:02 +02:00
0efd4e5c29 Skipped the ZCompLoc pass if the result can be determined at compile time. Brings back the speed lost by r146b02615c07. 2012-08-06 09:29:01 +10:00
d33e48319f Fix accesses to the 16 lower pixels of the EFB with OpenGL
The GL EFB cache did not clamp correctly the coordinates when computing
the rectangle it needed to cache, leading to negative values being used
as indexes and often crashes.

Fixes issue 5510.
2012-07-23 22:35:51 +02:00
1c8cdebc22 Set g_texture_cache to NULL upon shutdown. Fixes a crash introduced in previous commits. 2012-06-21 14:21:16 +02:00
cc0523e55b TextureCache: Properly assign texture hashes when EFB to RAM is used without caching.
Fixes issue 5472.
2012-06-20 18:18:21 +02:00
8d30ac462a Instead of invalidating texcache whenever the graphics configuration dialog gets opened, clean up textures on configuration changes. 2012-06-20 18:18:05 +02:00
227580d1a5 Remove "Disable Textures". 2012-06-11 23:35:46 +02:00
1dd6b978c1 Remove "Disable Lighting". 2012-06-11 23:30:20 +02:00
b5ad382b07 Fast mipmaps deserves to die!! 2012-06-08 00:22:57 +02:00
372e00632d Fix changing internal resolution via hotkeys (settings above 1.5x weren't accessible anymore before). 2012-05-29 13:11:28 +02:00
146b02615c Merge rodolfoosvaldobogado's zcomploc code (Graphic_Fixes branch) 2012-05-26 13:47:07 +10:00
54aeec7a8f Dump the redundant "save textures" function. Use TextureCache's dumping feature instead. 2012-05-13 17:48:23 +02:00
a5e68ab10e TextureCacheBase: Support dumping individual mipmaps. 2012-05-13 17:41:04 +02:00