Commit Graph

11345 Commits

Author SHA1 Message Date
degasus 38fe05b1df OpenGL: attributeless rendering in emulate format changes
only cleanup
2013-11-25 12:27:54 +01:00
degasus dd0b74ac15 OpenGL: cleanup efb2tex
Also use attributeless rendering. But we need the src rect, so set it by uniform.
If there is a slowdown here (I doubt as the driver likely has a fast path to update uniforms)
then we should check if this rect changes and only then update the uniform.
2013-11-25 12:19:34 +01:00
degasus b93756df87 OpenGL: drop texture_rect hack
Everything is moved to texture2d (but often in a hacky way), so we don't need this global hack any more.
2013-11-25 09:05:50 +01:00
degasus afcf0e65d1 OpenGL: fix emulate format changes for texture2d 2013-11-25 08:59:04 +01:00
degasus 146e435009 OpenGL: fix efb2ram for texture2D
This was hacky as hell. Our efb2ram shader generator is just freaked out.
2013-11-25 08:56:01 +01:00
degasus b904d56036 OpenGL: fix efb2tex for texture2d 2013-11-25 08:43:55 +01:00
degasus 1a3e790d9e OpenGL: fix xfb for texture2d 2013-11-25 08:38:00 +01:00
degasus e8f23af10b OpenGL: always use texture2d as efb 2013-11-25 08:32:41 +01:00
degasus 230e12ae8c OpenGL: also remove VAO from xfb convertion
We use attributeless rendering, so officially we have to bind _any_ VAO.
As the state of this VAO doesn't matter, we don't have to switch it.

Also fix an AMD issue as they don't like to render from an empty VAO.
2013-11-25 07:38:20 +01:00
Ryan Houdek 7ed8e6a29c [Android] Fix the check for the Qualcomm graphics driver version for v53 drivers with the screen being rotated 90 degrees. Initialize the OpenGL information grabbing only once. Check for v14 Qualcomm drivers and spit out an error if the user tries selecting OpenGL ES 3. 2013-11-24 22:45:48 -06:00
Ryan Houdek da3eef1019 Fix the issue with COLOROUT not being defined anymore. Fix a issue where Mali shader compiler is idiotic in finding an overload for the mix function. 2013-11-25 00:06:29 +00:00
Ryan Houdek 2c09e8fc5a [Android] Enable hard-float support. Requires Android NDK r9b. 2013-11-24 16:43:53 -06:00
Ryan Houdek 13578dc0b3 [Android] Enable the ability to find OpenMP on Android...which isn't used in the generic texture decoder so no win. 2013-11-24 16:28:20 -06:00
Ryan Houdek f292819ff5 [Android] Due to recent changes in code breaking Tegra 4 support, and also the upcoming code which will be breaking GLES2 support entirely. Taking the initiative to drop the remaining support code from the codebase in preparation for the upcoming changes. For a look at how Dolphin on Tegra 4 looked like prior and would not have been able to be fixed at all due to Tegra 4 not supporting the precision we need in our shaders; Look at this Youtube video http://youtu.be/Ga7Jc_Ote7U 2013-11-24 15:49:23 -06:00
degasus d410fe7c96 OpenGL: cleanup yuv2rgb (real xfb) workflow
We neither scale nor render from subimages, so we by using gl_Position, we don't have to generate _any_ vertices for this converting.

Also remove the glTexSubImage optimization as every driver does it when needed. But there are some workflows (eg on APU) where it's better to realloc this texture instead of a second memcpy or stall.
2013-11-24 15:56:50 +01:00
Scott Mansell 12741f6406 Add comments for anybody attempting accuracy improvements in the future. 2013-11-25 01:30:53 +13:00
Scott Mansell b5bd2ba847 OpenGL: Enable filtering for EFB to Real XFB copies.
This fixes Real XFB Jaggies in OpenGL on games which use yscaling, such
as most PAL games.

This fixes the last of the "Real XFB Macroblocking" issues for opengl,
see issue #6503
2013-11-25 01:11:42 +13:00
Ryan Houdek 6f73162df4 [ARM] Implement the Acid test in the JIT core. This test is currently broken in JIT64 since it uses cr instead of cr_fast. 2013-11-24 10:51:07 +00:00
Scott Mansell e6b35642df Fix Desktop GLSL versions in the recent changes.
Seems OpenGL ES 3 Requires you must have an lod argument, while Desktop
versions require you must not have a lod argument if you are using a
Sampler2DRect (which doesn't do Mipmapping).
2013-11-24 22:48:10 +13:00
Ryan Houdek 531f840720 Fix OpenGL ES 3 in the recent changes. texelFetch doesn't require the lod argument in desktop GLSL versions, but in GLSL ES 3 it is a required argument. 2013-11-24 07:45:42 +00:00
degasus 994426b3dc Opengl: fix real XFB sample positions
(0,0) and (1,0) aren't accurate xfb sample positions. This fixes the image shift to the left and some blocking on higher IR.
2013-11-24 05:39:40 +01:00
Scott Mansell eef2cddfd7 Opengl: Fix opengl realxfb "macroblocking"/bluring issue.
YUYV textures should NEVER be interpolated/filtered in RGB colour space.
Use TexelFetch to always fetch an actual texture sample.

issue 6503
2013-11-24 17:15:11 +13:00
degasus 09f4439d0c VideoCommon: reorder cbufid in orderer. We've used once two times 2013-11-24 04:43:54 +01:00
degasus 7d58278b67 Merge branch 'efb2tex_alpha' 2013-11-24 04:02:38 +01:00
degasus 2bf7379a7f D3D: also fix MAX_COPY_BUFFERS
the D3D backend caches the colmat buffers. As we've created more different colmats, the maximum of this matrices must also be updated.
2013-11-24 04:00:12 +01:00
Matthew Parlane 0a31255943 Unused arguments removed from XFBSource::Draw
Thanks neo.
2013-11-24 11:33:43 +13:00
Tony Wasserka 672fa65ee7 OpenGL: Enable pinned memory even for index buffers (works for me). Big-ish speedup on AMD GPUs for streaming intensive games. 2013-11-22 18:09:52 +01:00
kostamarino@hotmail.com 1763dc2076 Gameini database update. Beyond Good and Evil (gc), Hunter: The Reckoning (gc), MARIO SUPERSTAR BASEBALL (gc), Heavy Fire Special Operations (wiiware), Tiger Woods PGA TOUR 2005 (gc), Tiger Woods PGA TOUR 06 (gc), Midway Arcade Treasures (gc), Midway Arcade Treasures 2 (gc), Midway Arcade Treasures 3 (gc), FINAL FANTASY Crystal Chronicles (gc), Freestyle Metal X (gc), Hunter: The Reckoning (gc), Finding Nemo (gc), Tony Hawk's Pro Skater 4 (gc), Yogi Bear (wii), Ghost Mansion Party (wiiware) are updated/added.
Fixes issue 6773.
Fixes issue 6774.
Thanks nash67 for his help.
2013-11-22 14:03:12 +02:00
skidau efeb0096c9 Changed the DSP ROM warning from a panic alert to an on-screen message. 2013-11-22 14:55:25 +11:00
degasus b0a83c9aaa VideoCommon: don't read alpha from efb which don't have alpha
This fixes issue 6788
2013-11-22 04:50:33 +01:00
Ryan Houdek ea9ac07ec9 Merge branch 'master' into jit_exit_addresses 2013-11-21 21:17:58 -06:00
Tillmann Karras ff91789773 Jit64: really fix fmrx regression
This is more tricky than I thought!
2013-11-21 05:31:55 +01:00
degasus 011fe86d01 jit64: add regcache option IsBound
Lots of x86 instructions are different on memory vs registers.
So to generate code, we often have to check if a ppc register is already bound to a x86 register.
2013-11-21 05:16:58 +01:00
Tony Wasserka 286b6110f1 Revert "Handle BP mask register better to avoid useless BP writes (causing flushes)"
This reverts commit 954be9e2d9.

Fixes issue 6826.
2013-11-20 22:53:10 +01:00
Tillmann Karras bcefa880e4 Jit64: fix fmrx regression
Revision ddaf29e039 introduced a register
corruption bug (#6825). Since fmrx/MOVSD only modifies ps0 but we save
both ps0 and ps1 in one xmm register, not loading the previous value
when binding to a x64 register trashed ps1.

But hey, a good opportunity to shave off one more instruction ;)
2013-11-20 21:30:49 +01:00
comex 4f13f6ecaa "warning fixes" commit introduced warnings; fix them. (And I refuse to use PRI macros.) 2013-11-18 14:34:21 -05:00
Tillmann Karras b863e40677 Merge branch 'ppc_fp' 2013-11-18 19:31:09 +01:00
Matthew Parlane e805bf6068 Only add real HID devices to HID list. 2013-11-17 21:14:22 +13:00
Matthew Parlane b372f97675 Imagewrite.cpp had same problem.
I hate windows :(
2013-11-17 11:30:05 +13:00
Matthew Parlane f4a1f183b9 std::string can't be passed to ... format. 2013-11-17 11:28:11 +13:00
Matthew Parlane ea3990a41b Don't pass char* to std::string.
Windows was fine with this :(
2013-11-17 11:25:12 +13:00
Matthew Parlane 33d8166620 Use IOFile for TextureToPng to support non-ascii
Changed save texture/screenshot uses to std::string
Removed unneeded new/delete calls when dealing with temp data.
2013-11-17 11:14:38 +13:00
Lioncash cce869ae01 [Core] Fix a mismatched dealloc in Render.cpp in the OGL backend. Should be delete[] 2013-11-16 17:05:51 -05:00
Lioncash c46aabc853 Merge branch 'master' of https://code.google.com/p/dolphin-emu 2013-11-16 16:53:22 -05:00
Ryan Houdek 4a9c8e6f55 Change software rasterizer screenshot code due to change in api just now. 2013-11-16 15:37:40 -06:00
Matthew Parlane 71d70d896f Api was too confusing for people. 2013-11-17 10:34:34 +13:00
Lioncash ee32c8b4e9 [Android] Remove accidental fragment tag in GameListActivity (it was useless, since it's an empty string) 2013-11-16 15:17:37 -05:00
Ryan Houdek 2025f00f88 Woops, vim copy and paste issue with a double include. 2013-11-16 09:41:01 -06:00
Lioncash 11a156615f [Android] Like the previous commit (but for the GameListFragment), don't constantly create a new adapter when filling the game list. 2013-11-16 05:30:58 -05:00
Lioncash d98664b053 [Android] Simplify the FolderBrowserAdapter a little, as well as the Fill method within FolderBrowser.java. Previously the fill method would create an entire new adapter and assign it to the backing ListView. This is pretty unnecessary, so what it now does is, when the function is called, it clears out the adapter, then simply fills it in again with the new directory's contents. Simple, and doesn't require a reference to the actual ListView to be used. 2013-11-16 04:36:22 -05:00