Commit Graph

11640 Commits

Author SHA1 Message Date
60632fda6f OpenGL: remove small optimization
This one was introduced to reduce the glBindTexture and glActiveTexture calls. But it was quite a bit of logic and only an improvment on uploading/creating a texture, which is done rarely.
2014-01-21 10:34:48 +01:00
fe02833f13 OpenGL: fix our ubo workaround when blend_func_extended is missing 2014-01-21 10:03:05 +01:00
0dc437e94d [Android] Finally check if regular OpenGL is possible on devices and display/hide it's fragment based upon this in AboutActivity.java.
Also added another constructor to EGLHelper which can be used to quickly query for information.
2014-01-21 00:12:40 -05:00
8b2c540544 Finally Merge branch 'videosoftware-xfb'
This adds xfb support to the videosoftware backend, which increases it's
accuracy and more imporantly, enables the usage of many homebrew apps
which write directly to the xfb on the videosoftware backend.

Conflicts:
	Source/Core/VideoBackends/Software/SWRenderer.cpp
	Source/Core/VideoBackends/Software/SWmain.cpp
2014-01-21 00:10:00 +13:00
2c8340e1dc Move GLInterface.h into GLInterface directory 2014-01-20 00:46:21 -07:00
4b3c338930 Merge Platform.h into GLInterface.h 2014-01-20 00:32:01 -07:00
75020b9b51 Automatic translation resources update from Transifex 2014-01-20 00:00:51 +00:00
f8abdbf91a [Android] Initial introduction of the EGLHelper utility class. Should simplify all interop with the EGL/GL APIs. Not hooked up yet. However it is entirely functional. 2014-01-19 18:29:43 -05:00
f28bf81db1 Revert "Modified project settings"
This reverts commit 6ad4c0efa6.

Get out of my tree Matt_P!
2014-01-19 15:07:40 -06:00
683dbc09ac Stop building GLExtensions.cpp twice(One in GL, one in software). We don't need to build it twice, this'll save a bit of time in the build process.
Also a bit of spacing cleanup.
2014-01-19 11:37:37 -06:00
6ad4c0efa6 Modified project settings 2014-01-19 11:37:37 -06:00
84aa98a5a4 wayland: Add bits required to run as a wayland client. 2014-01-19 10:36:20 -07:00
3b25bf2f14 Readme: Windows XP is not supported anymore.
Cf. issue 6785. The decision had been made weeks ago but no one thought of updating the readme.
2014-01-19 18:00:20 +01:00
21b0252e27 Jit64: disable non-IEEE mode emulation
I give up. Merging the ppc_fp branch has caused issues in numerous games
and I can't find the bug. I'm leaving this merged to enable easy
recompilation for people who would like to play games that benefit from
non-IEEE mode emulation (e.g. Starfox Assault).
2014-01-19 09:36:08 +01:00
4a81baff3f Reenable vsync after releasing tab even if frame limit is disabled. 2014-01-19 02:48:59 -05:00
287ac90dc3 Automatic translation template update 2014-01-18 16:43:14 +00:00
127e78d846 Change the gettextize to not update .po files (Transifex will do that) 2014-01-18 16:40:28 +00:00
a39be49c55 Automatic translation resources update from Transifex 2014-01-18 16:17:24 +00:00
5d26bf6d9d Rename our GLInterface class function 'GetProcAddress' in order to not have clashing function names due to Windows. 2014-01-18 14:18:32 +00:00
bea484e12f Move Win32 specific function grabbing fallback to WGL.cpp. Fixes issue 6964. 2014-01-18 14:10:24 +00:00
839df31347 Merge of GL-AutoChoose.
This branch is the final step of fully supporting both OpenGL and OpenGL ES in the same binary.
This of course only applies to EGL and won't work for GLX/AGL/WGL since they don't really support GL ES.
The changes here actually aren't too terrible, basically change every #ifdef USE_GLES to a runtime check.

This adds a DetectMode() function to the EGL context backend.
EGL will iterate through each of the configs and check for GL, GLES3_KHR, and GLES2 bits
After that it'll change the mode from _DETECT to whichever one is the best supported.
After that point we'll just create a context with the mode that was detected
2014-01-18 04:11:59 +00:00
0a5bd83af2 Gameini database update for Mega Man Anniversary Collection (gc), Tony Hawk's Pro Skater 3 (gc) and WarioWare, Inc. Mega Party Games (gc).
Fixes issue 6959.
2014-01-17 18:14:10 +02:00
5a599d472e Merge branch 'GLExtensions' 2014-01-17 16:49:51 +01:00
355df60abd Merge branch 'index_buffer_cleanup' 2014-01-17 16:35:54 +01:00
304adc6e0d IndexGenerator: inline all variables
As we do lots of writes to *Iptr, the compiler isn't allowed to cache any shared variable (neither index nor Iptr itself).
This commit inlines Iptr + index into the index generator functions, so the compiler know that they are const.
2014-01-17 16:34:53 +01:00
1d6425bd5e IndexGenerator: drop unused variable 2014-01-17 16:34:53 +01:00
6b01839525 VideoCommon: merge triangle+list+point index buffers
We are used to render them out of order as long as everything else matches, but rendering order does matter, so we have to flush on primitive switch. This commit implements this flush.
Also as we flush on primitive switch, we don't have to create three different index buffers. All indices are now stored in one buffer.

This will slow down games which switch often primitive types (eg ztp), but it should be more accurate.
2014-01-17 16:34:53 +01:00
e932a349e8 [GLExtensions] fixup for missing changes on rebase 2014-01-17 16:10:10 +01:00
29e0a90b88 [GLExtensions] Rename internal GetProcAddress function since it clashes with the global Windows function. Fix Windows function pointer grabbing. 2014-01-17 16:06:46 +01:00
cd145cb63e [GLExtensions] Refix GLES3 build. Until we clean up the platform detection this'll need to be here. 2014-01-17 16:06:40 +01:00
c744aca323 [GLExtensions] Move the include directory location for Externals/GL so no other library includes global GL folder first. 2014-01-17 16:06:35 +01:00
3d4d3f6b11 [GLExtensions] Remove a bunch of unneeded headers. Fix Linux+EGL compiling. Move include to glx.h around to work around it including global GL/gl.h 2014-01-17 16:06:29 +01:00
6cdb05b633 [GLExtensions] OpenGL 3.0 also added GL_ARB_map_buffer_range to core. 2014-01-17 16:06:23 +01:00
a5ffe9932a [GLExtensions] Future proof ourself by putting the default: instance on the top, so we'll grab extensions if they support something newer. Handle older GLVersions in the case they get that far. 2014-01-17 16:06:18 +01:00
2a11fead5c [GLExtensions] Populate the extension list for OpenGL implementations that don't show core extensions. 2014-01-17 16:06:13 +01:00
0ea6718d99 [GLExtensions] Fix OS X build. 2014-01-17 16:06:08 +01:00
34c9a33807 [GLExtensions] Remove AGL GetProcAddress. Change dlsym to using RTLD_NEXT. Enable dlsym fallback for OS X 2014-01-17 16:06:03 +01:00
ca96274936 [GLExtensions] Make sure to link against libdl since we use it to grab GL function pointers in Linux/Android in the case the GLInterface->GetProcAddress fails. 2014-01-17 16:05:57 +01:00
45dfa3a481 [GLExtensions] Missed a couple USE_GLES3 compile time differences. 2014-01-17 16:05:52 +01:00
95ab2380c9 [GLExtensions] wxWidgets expects to statically link in to GL 1.1 functions like any sane project. Let them do this. 2014-01-17 16:05:47 +01:00
97dc20d1be [GLExtensions] Pull in all the function pointers for OpenGL 1.1, This removes the need for a couple compile time differences between GL and GLES3 mode. 2014-01-17 16:05:40 +01:00
f308b878b2 [GLExtensions] Oops. Don't just outright disable these helper functions. 2014-01-17 16:05:34 +01:00
cfb8b43b4a [GLExtensions] Don't fail out loading funciton pointers in both ES2 and ES3 modes. 2014-01-17 16:05:25 +01:00
fc1f8291d6 [GLExtensions] Make sure to initialize our function pointers with VideoSoftware as well. 2014-01-17 16:05:07 +01:00
eba0c21b5a [GLExtensions] Fix Windows build.
Conflicts:
	Source/VSProps/Base.props
2014-01-17 16:04:05 +01:00
17955fa025 [GLExtensions] Still had a GLEW lib hanging out in the CMake file for the software renderer. 2014-01-17 16:01:49 +01:00
2a8ee1a7ff [GLExtensions] Hopefully fix OS X build. 2014-01-17 16:01:35 +01:00
f4bd7bdef0 fix windows build
add the GL include (back) to Base.props
use a similar technique to GLX.cpp (by Sonic) in WGL.cpp to get
wglSwapIntervalEXT without the WGLEW check

Conflicts:
	Source/Core/VideoBackends/OGL/OGL.vcxproj
	Source/Core/VideoBackends/OGL/OGL.vcxproj.filters
	Source/VSProps/Base.props
2014-01-17 16:01:17 +01:00
10bd61a9d2 [GLExtensions] Dynamically pull in the GL 1.3 and 1.4 functions as well. 2014-01-17 15:56:54 +01:00
d5a7ea2041 [GLExtensions] KHR_debug on OpenGL ES 3 has a KHR suffix on their function pointers. In Desktop OpenGL there is no suffix. So handle this correctly. Make the GrabFunction macro slightly less evil, so update the init_* to reflect it. Thanks Bh44L for the suggestion. 2014-01-17 15:56:28 +01:00