Commit Graph
100 Commits
Author SHA1 Message Date
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