Ryan Houdek
ef1e157786
Go back to using glGetString with GL_EXTENSIONS because glew 1.7 is required to check for newer 4.2 extensions that way.
2012-10-09 23:42:40 -05:00
Ryan Houdek
ac77bbd47b
Move the GLSL extension checks over here so it is nicer.
2012-10-09 23:42:40 -05:00
Ryan Houdek
7cb3d86e31
Add a define back so we work without GLEW 1.6, Also I missed a line when I was fixing binding sampler locations last night when I was tired.
2012-10-09 23:42:40 -05:00
Ryan Houdek
1aad2e9e56
There we go, actually found the issue.
2012-10-09 23:42:40 -05:00
Ryan Houdek
6759ee701d
This thing fails when we don't support binding. Not 100% sure why I need to set this multiple times.
2012-10-09 23:42:40 -05:00
Ryan Houdek
c76593f6a2
Looky, OSX found an issue for me.
2012-10-09 23:42:40 -05:00
Ryan Houdek
66a245dd68
Remove this silliness
2012-10-09 23:42:40 -05:00
Ryan Houdek
9c09e1973a
Some shader programs don't come with Vertex shaders attached, don't try to bind a Vertex Uniform block then.
2012-10-09 23:42:40 -05:00
Ryan Houdek
f8d0c28e53
Set Sampler values at program make time instead of every frame. Fix an issue when The user had UBO support but not Binding support.
2012-10-09 23:42:40 -05:00
Ryan Houdek
ddd4360d6d
Only delete this buffer if we support it.
2012-10-09 23:42:39 -05:00
Ryan Houdek
7aad45658e
Add a GUI option to use GLSL shaders. Also fix a small typo.
2012-10-09 23:42:39 -05:00
Ryan Houdek
076c1a5aa7
Make sure not to try and bind UBO locations when it isn't supported
2012-10-09 23:41:49 -05:00
Ryan Houdek
7f12daa014
Looks like we make use of fmod, make a GLSL function for it!
2012-10-09 23:41:49 -05:00
Ryan Houdek
ba12c0b4f5
Instead of querying the vertex attribute location. Let's bind it to where CG expects it to be as well. Was causing problems when we were trying to activate the components below and they weren't available. This fixes cubivore with GLSL shader. Also any other game that uses 3 normal pointers.
2012-10-09 23:41:48 -05:00
Ryan Houdek
04836705b7
Show a bit of information when using GLSL shaders.
2012-10-09 23:41:48 -05:00
Ryan Houdek
a809feae1a
Disable UBO buffer generation if hardware doesn't support it.
2012-10-09 23:41:48 -05:00
Ryan Houdek
a5257c1a0a
Actually have Dual Source blending work for people. Forgot about this change.
2012-10-09 23:41:06 -05:00
Ryan Houdek
a304af75fd
Make this pretty
2012-10-09 23:41:06 -05:00
Ryan Houdek
67687a7b6d
Make sure our UBO buffers are always aligned correctly.
2012-10-09 23:41:06 -05:00
Ryan Houdek
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
Ryan Houdek
5bcbf92f43
Make sure to support everything even if GPU doesn't.
2012-10-09 23:41:06 -05:00
Ryan Houdek
d4a80ca3ec
yay, UBOs work 100% now.
2012-10-09 23:41:05 -05:00
Ryan Houdek
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
Ryan Houdek
904adb9e3d
More for Billiard <3
2012-10-09 23:41:05 -05:00
Ryan Houdek
ce7a54f32a
Firin ma lazer
2012-10-09 23:41:05 -05:00
Ryan Houdek
b105d70339
Firin ma lazer
2012-10-09 23:41:05 -05:00
Ryan Houdek
c82b92bfc2
Fix one error.
2012-10-09 23:41:05 -05:00
Ryan Houdek
2fbca145cb
Remove bSupportsGLSLLocation since it won't work how I expect it.
2012-10-09 23:41:05 -05:00
Ryan Houdek
4a84c6f742
Add in UBOs, doesn't work yet. Still debugging here.
2012-10-09 23:41:05 -05:00
Ryan Houdek
76e5766a1b
Put Vertex Uniforms in to the correct places to get ready for UBOs.
2012-10-09 23:41:04 -05:00
Ryan Houdek
d897491f94
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.
2012-10-09 23:41:04 -05:00
Ryan Houdek
d83ead5914
Support Dual Source Blending in OGL plugin with GLSL.
2012-10-09 23:39:16 -05:00
Ryan Houdek
eff019442f
Playing through SSBM story made me find this.
2012-10-09 23:37:52 -05:00
Ryan Houdek
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
Ryan Houdek
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
Ryan Houdek
081ad949ce
Welp, just fixed that problem.
2012-10-09 23:35:45 -05:00
Ryan Houdek
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
Ryan Houdek
8058f2f32f
Missed one
2012-10-09 23:33:02 -05:00
Ryan Houdek
9064b76deb
Shader Compile fixes. Played SMS for two shines.
2012-10-09 23:33:02 -05:00
Ryan Houdek
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
Ryan Houdek
7cec31dbf3
Almost there.
2012-10-09 23:33:02 -05:00
Ryan Houdek
8123b137aa
This is the terrible bit that can't be removed until we use UBOs in the GLSL shaders.
2012-10-09 23:31:31 -05:00
Ryan Houdek
0fc755c4df
More stuff
2012-10-09 23:31:31 -05:00
Ryan Houdek
66a5334158
moe
2012-10-09 23:30:48 -05:00
Ryan Houdek
7a4c080c70
mah
2012-10-09 23:29:30 -05:00
Ryan Houdek
411357b54a
Compile
2012-10-09 23:29:30 -05:00
Ryan Houdek
34c7b3fd73
meh
2012-10-09 23:29:30 -05:00
Ryan Houdek
3943840d5c
Now CG plays nice with this new stuff.
2012-10-09 23:27:59 -05:00
Ryan Houdek
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
Sonicadvance1
8fed3b76c8
If setting videobackend back to null strings, Just set it to the front of the list. Fixes loading game specific INI files that don't load back the "default" video backend which is nothing.
2012-09-25 00:47:37 +00:00
Ryan Houdek
41266129ba
Should fix issue 5630.
2012-09-24 17:16:34 -05:00
Ryan Houdek
3229bf824c
Should actually load the backend when it changes via game INI
2012-09-23 17:54:23 -05:00
Ryan Houdek
f8f8aea577
Allow the user to set graphics backend from Game INI. Zero GUI option available for setting.
2012-09-23 16:02:11 -05:00
Ryan Houdek
b4ae200d0d
This changes a mmap in MemArena so you don't need 786MB of memory free to actually allocate the 1GB memory space in Linux 32bit. I was also running in to this issue in my development. Kudos to plbl4ster to actually taking the time to research this. Closes issue 5625.
2012-09-23 10:08:13 -05:00
Ryan Houdek
be200074e9
[Linux] Change from using /tmp to /dev/shm in MemArena so we don't cause any disk IO, also unlink file while it is open to allow multiple instances running. This was discussed months ago, but was never implemented for whatever reason.
2012-08-22 23:39:50 -05:00
Ryan Houdek
62e790f109
Have the ability to disable screensaver due to Nvidia + Displayport can cause annoying flickering
...
Bring up to standards guidelines and also support Windows
Switch this around...
2011-08-26 13:29:01 -07:00
Ryan
a5a2562e59
Put this hotfix in since some combination of hardware and drivers returns zero here.
2011-08-25 02:58:37 -05:00
Sonicadvance1
693f276a68
Small update for disabled Fog for older hardware that fails to divide by zero in shaders
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7612 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-20 05:48:12 +00:00
Sonicadvance1
3fceffd8c0
We need to require at least shader 2.0a now
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7590 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-08 03:09:07 +00:00
Sonicadvance1
db0c2bca5b
Allows DX9 shaders to be SM2 compatible again at the loss of accuracy. SM3 is recommended. Fixes issue 4546.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7585 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-04 19:56:18 +00:00
Sonicadvance1
783c89f108
videocommon depends on core for Fifo Recorder
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7430 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-31 20:41:59 +00:00
Sonicadvance1
81f06220ce
Massive Poo storm, had to take shelter. Hacks, fixes, etc etc
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5421 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-29 13:46:20 +00:00
Sonicadvance1
3103b920b6
[OSX] Use spinlocks instead of mutexes since mutexes are really semaphores, gives me a decent speed up.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5420 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-29 12:50:12 +00:00
Sonicadvance1
5cb916e9d1
Fixes wxGL, so it draws correctly in OSX, so Draw to Main works if enabled in OSX. Disabled, it creates a window but with no titlebar
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5341 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-12 02:35:59 +00:00
Sonicadvance1
48533bb3db
Start work of OSX keyboard input, doesn't work, so it's currently disabled, but it's a beginning. Also changed variable 'id' to 'cid' because id is a object type in Obj-C, which I was running in to problems with, kept it that way just in case.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5269 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-02 09:41:43 +00:00
Sonicadvance1
e0b4cbcdae
Another one bites the dust
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5263 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-01 10:06:43 +00:00
Sonicadvance1
9cf7cb6cb8
Don't let ASM test crash and burn if it can't open file
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5262 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-01 05:52:17 +00:00
Sonicadvance1
47f6192004
add two paths to addx in JIT that Crazy Taxi kept hitting, add 'add' and 'add.' tests to the ASM test, although I haven't tested it yet
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5261 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-01 05:10:39 +00:00
Sonicadvance1
4e1719e98b
Fix pad working in OSX
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5259 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-01 03:34:49 +00:00
Sonicadvance1
d2cee0a869
Clean up of new Plugin, get it compiling in Linux/OSX, Linux side, you need to add the Xlib portion to SConscript
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5258 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-01 02:59:40 +00:00
Sonicadvance1
85a1b2af45
This should largely go unnoticed
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5251 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-29 09:26:19 +00:00
Sonicadvance1
9dae690951
Puts an end to my meddling
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5238 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-25 19:46:09 +00:00
Sonicadvance1
1e9fd8e4ad
Disable subfcx because it causes problems with a few games...
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5237 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-25 15:07:06 +00:00
Sonicadvance1
e6f3012604
fix a spelling error in a PanicAlert, drop another x86 instruction from calculateRc, and trying to get subfex working in JIT, currently something wrong, so it's disabled. Once it is fixed it should speed up Super Monkey ball quite a bit
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5236 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-25 03:20:28 +00:00
Sonicadvance1
5cf6ed484b
Make this perdy
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5234 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-24 23:06:23 +00:00
Sonicadvance1
4173cd5876
Disable divwux until we find out what's wrong with it, enable subfcx, and also JIT64 now sets cr[0] correctly.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5233 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-24 22:51:06 +00:00
Sonicadvance1
744167f561
Implement IOCtlV 3 (ReadConfig) for /dev/net/ncd/manage.
...
This fixes an error message when trying to play Mario Kart Wii over WFC, although it still fails when trying to connect now.
Also fix some cosmetic issues (double include and indentation).<NeoBrain Patch>
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5222 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-22 18:19:41 +00:00
Sonicadvance1
3eebd28a6b
Renable Load Store in JIT since I found the problem. Haven't fixed it since I'm not 100% sure why it fails, but that code is disabled in x64 OSX. Still is faster than disabling the entire thing. Only core part left is Load Store Paired
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5207 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-17 11:23:24 +00:00
Sonicadvance1
fa9ae47d02
Woops
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5206 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-17 10:13:58 +00:00
Sonicadvance1
4e9be9aa59
This fixes JIT Loading Store Floating in 64bit OSX
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5205 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-17 09:38:13 +00:00
Sonicadvance1
914cb632fb
Woops! I put subfcx in to subfex on accident, silly me
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5181 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-09 21:32:50 +00:00
Sonicadvance1
3754bf5d06
Add JITTed version of subfex, disabled for now since it requires us to set the CR0 flag correctly, which I currently don't have working with 64bit build. It will improve performance in RE0 which will be nice. Can probably be done more efficiently as well
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5180 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-09 21:22:09 +00:00
Sonicadvance1
2049caa9fc
Fix NoWX build, use a different define in CoreParameter, the one we all know and love, and add a Function call to VertexManager which can boost performance, tells the drivers that we don't care about the current data, because we are putting new data in it anyway. This gives quite a performance boost on OSX since it bypasses a call in the drivers that takes around 24% CPU time
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5179 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-09 21:15:28 +00:00
Sonicadvance1
7cf32053fe
Gah, screw it
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5159 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-05 10:07:49 +00:00
Sonicadvance1
56a1e15f41
Forgot to check the low argument
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5158 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-05 10:01:26 +00:00
Sonicadvance1
529642de99
Woops
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5156 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-05 09:26:10 +00:00
Sonicadvance1
d18ab50520
Add a universal option to the osx flag, does not work yet since scons strips out the -arch flag that it thinks is a duplicate, add to linker flags since cross compiling on OSX was failing since it was trying to link everything as the wrong arch. Re-Enable the loadstores in 32bit Dolphin in OSX, due to the reason described in the comments (Fast 32bit OSX!). Add an alert if the memory space ends up above 32bit in *nix sides, since it will ALWAYS be above in 64bit OSX, Will try to fix.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5155 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-05 09:23:28 +00:00
Sonicadvance1
e79dc93a5c
Fix noWX compiling, Fix OSX crashing when opening options because of dumb code. Fix OSX Wiimote, will fix multi-wiimote in OSX later.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5154 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-05 07:03:44 +00:00
Sonicadvance1
d3923bfc26
~1KB mem leak fix in NANDContentLoader.cpp
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5152 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-03 06:59:37 +00:00
Sonicadvance1
6b2d9ef404
16byte mem leak fix in OSX Wiiuse
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5151 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-03 06:58:57 +00:00
Sonicadvance1
ae945ec90e
More conversions to wxChoice, weee
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5108 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-22 01:08:42 +00:00
Sonicadvance1
1824b5b25a
Remove the AO dependency for DSP LLE, which is silly
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5103 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-22 00:19:27 +00:00
Sonicadvance1
f833cc7601
Convert a few Comboboxes over to choiceboxes. WX OSX doesn't support Comboboxes with Readonly
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5087 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-19 22:56:37 +00:00
Sonicadvance1
227be30f98
Woops
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5086 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-19 20:41:40 +00:00
Sonicadvance1
f9f9b1bc14
No message
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5083 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-19 18:32:40 +00:00
Sonicadvance1
5e5e03daeb
Update Video software plugin with latest cocoaGL.m file
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5076 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-17 21:04:26 +00:00
Sonicadvance1
215f1f74be
Switches to GCC's internal swaps for swap32 and swap64 in OSX. Changes CDIO from using char*** to std::vector<std::string>, which fixes a memory leak I was noticing and also makes it look cleaner. This is not tested much in Windows/Linux, please see if it compiles and doesn't fail out in some mysterious way
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5067 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-16 08:46:21 +00:00
Sonicadvance1
a8793cbe52
うそ!
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5057 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-14 14:33:04 +00:00
Sonicadvance1
5b1d21d1a1
Bunch of tiny memory leaks fixed and cleanup, フウ〜!
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5056 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-14 14:06:33 +00:00
Sonicadvance1
9272d3c628
Actually use the timeout requested in Wiiuse in OSX, and if there is no BT device or it's disabled, catch it so we don't get stuck in an infinite loop
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5049 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-13 20:54:05 +00:00