Ryan Houdek
2907ffd72c
Make this pretty
2011-12-10 15:58:44 -06:00
Ryan Houdek
c678172f32
Make sure our UBO buffers are always aligned correctly.
2011-12-10 15:52:20 -06:00
Ryan Houdek
97c3c156e6
Use UBOs in every shader. I had missed a few. Only cache Uniform locations if we aren't using UBOs.
2011-12-10 15:40:10 -06:00
Ryan Houdek
c72a244809
Make sure to support everything even if GPU doesn't.
2011-12-10 14:35:37 -06:00
NeoBrainX
3d9c35f58e
VideoCommon: Fix upper and lower depth bytes being switched when performing Z16L EFB copies (EFB to texture only).
...
Fixes issue 4989.
Fixes issue 5056.
2011-12-10 16:08:26 +01:00
Ryan Houdek
5925feb6e0
yay, UBOs work 100% now.
2011-12-10 08:07:13 -06:00
Ryan Houdek
7ab38cff68
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.
2011-12-10 07:38:30 -06:00
Ryan Houdek
49664bff61
More for Billiard <3
2011-12-10 02:02:22 -06:00
Ryan Houdek
24336171f1
Firin ma lazer
2011-12-10 01:57:27 -06:00
Ryan Houdek
126dfa073b
Firin ma lazer
2011-12-10 01:56:37 -06:00
Ryan Houdek
54a90d08ce
Fix one error.
2011-12-09 21:15:15 -06:00
Ryan Houdek
e8087aa1a9
Remove bSupportsGLSLLocation since it won't work how I expect it.
2011-12-09 19:14:02 -06:00
Ryan Houdek
4fe9792760
Merge branch 'GLSL-master' of https://code.google.com/p/dolphin-emu into GLSL-master
2011-12-09 17:30:50 -06:00
Ryan Houdek
8e5bb59cb6
Add in UBOs, doesn't work yet. Still debugging here.
2011-12-09 17:30:05 -06:00
LPFaint99
87c3c37ba7
add ProgramShaderCache.* to visual studio project files
2011-12-09 14:28:59 -08:00
Ryan Houdek
9119399547
Put Vertex Uniforms in to the correct places to get ready for UBOs.
2011-12-09 16:13:04 -06:00
Ryan Houdek
c89c484dd0
Few compiler errors that got exposed once I got Dual Source Blending working. Seems it isn't working quite 100% either. Good chance I missed something anyway.
2011-12-08 05:32:17 -06:00
Ryan Houdek
0ccba2b581
Support Dual Source Blending in OGL plugin with GLSL.
2011-12-08 05:09:48 -06:00
Ryan Houdek
62b9a779c1
Playing through SSBM story made me find this.
2011-12-08 04:11:30 -06:00
Ryan Houdek
cecc3c3873
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.
2011-12-08 03:20:31 -06:00
Ryan Houdek
1201988fe4
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.
2011-12-08 01:51:08 -06:00
Ryan Houdek
f77d54ff52
Welp, just fixed that problem.
2011-12-07 23:23:00 -06:00
Ryan Houdek
4c136c4efc
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.
2011-12-07 23:20:55 -06:00
Ryan Houdek
b01c973689
Missed one
2011-12-07 23:01:14 -06:00
Ryan Houdek
bf4ef054d3
Shader Compile fixes. Played SMS for two shines.
2011-12-07 22:47:13 -06:00
Ryan Houdek
ed18b82d2f
This lets us see stuff with GLSL shaders. Just need to take care of some compile errors now.
2011-12-07 22:11:41 -06:00
Ryan Houdek
33c24f0a15
Almost there.
2011-12-07 22:04:34 -06:00
Maarten ter Huurne
f9133a7376
Link to the required OS X frameworks.
...
Previously, there was just one list of frameworks regardless of which part
of the code depended on which frameworks. Now we keep separate lists for
the Dolphin core, the Dolphin GUI and internal use by wxWidgets.
2011-12-07 08:26:44 +01:00
Maarten ter Huurne
c04c3bd9d3
Use "unsigned int" instead of "unsigned".
...
By request of hrydgard.
See commit 045eb924d93b4532d5a91c8eab55e292e3a997ae.
2011-12-07 07:10:31 +01:00
Maarten ter Huurne
8a75351674
Link against OpenGL using the info gathered by the FindOpenGL module.
2011-12-05 06:18:04 +01:00
Maarten ter Huurne
2621d89a41
Link OS X version of wxWidgets against libpng and libiconv.
2011-12-05 06:07:10 +01:00
Maarten ter Huurne
958891b4eb
Compile with OpenAL support on OS X.
2011-12-05 05:49:08 +01:00
Maarten ter Huurne
24dcb7922c
On OS X, compile only against standard system libs and Externals.
...
Libraries from MacPorts, Fink or manually installed stuff in /usr/local
will be ignored. This ensures the binary will work on other machines as well.
2011-12-05 05:44:35 +01:00
Maarten ter Huurne
54ea98b0a9
Refer to the wxWidgets libary as "wx" instead of its full path name.
...
This ensures that additional library dependencies declared for "wx"
using target_link_libraries() are applied.
2011-12-05 05:39:41 +01:00
Maarten ter Huurne
d440dfe9b2
Link against systemwide LZO using the info gathered by check_lib().
2011-12-05 05:33:35 +01:00
Maarten ter Huurne
bb182d88b7
Link against systemwide OpenCL on OS X.
2011-12-05 05:26:28 +01:00
Maarten ter Huurne
7ebb0e526f
Added CMakeLists.txt for libpng.
...
The vast majority of the changes in this commit were originally done
by Shawn Hoffman in commit c86846cf9c995d8e0463419bd9477b0dae884929.
2011-12-05 05:10:21 +01:00
Maarten ter Huurne
8c3775ee6f
Under OS X, link GL plugin against Cg framework instead of Cg library.
2011-12-05 01:12:09 +01:00
Maarten ter Huurne
20fa8bb9f2
Fixed linking to wxWidgets built from Externals under OS X.
2011-12-05 01:10:45 +01:00
Maarten ter Huurne
7417ecf67f
Tell the linker to not treat its input as Objective C/C++ source.
...
Flags in CMAKE_CXX_FLAGS are passed to both compile and link commands.
A cleaner solution would be to use set_source_files_properties().
However, currently there are headers (StdThread.h, maybe more) that contain
Objective syntax. So it is not easy to determine exactly which source files
should be compiled as Objective C/C++ and that set can quickly change when
certain #include directives are modified. The solution for that would be to
move all uses of Objective syntax to implementation (.cpp) files and then
apply set_source_files_properties() to those.
2011-12-05 00:57:51 +01:00
Maarten ter Huurne
d249ee599a
Added CMakeLists.txt for wxWidgets under OS X.
...
The vast majority of the changes in this commit were originally done
by Shawn Hoffman in commit c86846cf9c995d8e0463419bd9477b0dae884929.
2011-12-04 15:43:52 +01:00
Maarten ter Huurne
7f578ce1ae
Use Externals/wxWidgets3 instead of Externals/wxWidgets under OS X.
...
The "3" variant has some extra stuff merged that helps under OS X.
This split should not last longer than until the wxWidgets 3.0 release.
2011-12-04 15:34:23 +01:00
Maarten ter Huurne
ffb06c23ac
Added version check for wxWidgets.
...
If the systemwide wxWidgets is too old, we can fall back to the version
from Externals instead of letting the build fail.
Note that while the version in Externals appears to be wxWidgets 2.8,
it has post-2.8 features manually added to it (wxAuiToolBar), so the
version check only accepts 2.9 or higher.
2011-12-04 03:37:02 +01:00
Maarten ter Huurne
7c92b94bc1
Use Cg from Externals if it is not found systemwide.
2011-12-04 02:48:01 +01:00
Pierre Bourdon
252093295b
Do not fail with strict drivers when compiling a not SM2.0 shader
...
To enforce SM2.0 compatibility, the OpenGL plugin was made to crash when
compiling a shader which does not fit in the SM2.0a limits. However, on some
combinations of OS/drivers/GPU, our shaders already do not fit in these limits,
causing artificial failures only to try to keep a non existant SM2.0a compat.
Basically, this sucks.
This commit increases the artificial limit to SM3.0. If you're using a GPU
which does not support SM3.0 and Dolphin works properly, this should not cause
any problem at all.
2011-12-03 23:24:10 +01:00
Ryan Houdek
164b56ff73
This is the terrible bit that can't be removed until we use UBOs in the GLSL shaders.
2011-12-02 20:20:53 -06:00
Ryan Houdek
804938e9fc
More stuff
2011-12-02 20:17:26 -06:00
Ryan Houdek
ae6ac5b439
moe
2011-12-02 19:04:37 -06:00
Ryan Houdek
8a18a110b7
mah
2011-12-02 18:46:07 -06:00
Ryan Houdek
6882e00d5e
Compile
2011-12-02 18:31:06 -06:00