<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dolphin/Source/Core/VideoBackends/OGL/GLExtensions/GLExtensions.cpp, branch stable</title>
<subtitle>GameCube and Wii emulator</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/'/>
<entry>
<title>Pass strings by const reference where possible</title>
<updated>2015-05-29T00:54:55+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2015-05-29T00:28:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=ac26f8e79fbf640ba770a35c1f051c2816f6346f'/>
<id>ac26f8e79fbf640ba770a35c1f051c2816f6346f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update license headers to GPLv2+</title>
<updated>2015-05-25T11:22:31+00:00</updated>
<author>
<name>Tillmann Karras</name>
<email>tilkax@gmail.com</email>
</author>
<published>2015-05-17T23:08:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=cefcb0ace9d363b3679b4e93bcc9ec05f1e5f4f8'/>
<id>cefcb0ace9d363b3679b4e93bcc9ec05f1e5f4f8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>OGL: Add glClipControl support.</title>
<updated>2015-05-22T21:52:20+00:00</updated>
<author>
<name>Jules Blok</name>
<email>jules.blok@gmail.com</email>
</author>
<published>2015-05-18T22:54:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=522e721830615fc9de3e7112fee3cf3c686df3a7'/>
<id>522e721830615fc9de3e7112fee3cf3c686df3a7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>quiet some warnings which appear on vs2015.</title>
<updated>2015-03-16T02:28:47+00:00</updated>
<author>
<name>Shawn Hoffman</name>
<email>godisgovernment@gmail.com</email>
</author>
<published>2015-03-16T02:28:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=ad64336137013a823c212e4e491dbb435aa11e5f'/>
<id>ad64336137013a823c212e4e491dbb435aa11e5f</id>
<content type='text'>
quieted warnings include shadowed variable names and integer extensions.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
quieted warnings include shadowed variable names and integer extensions.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #2092 from Sonicadvance1/gles_occlusion_queries</title>
<updated>2015-03-08T13:44:15+00:00</updated>
<author>
<name>Ryan Houdek</name>
<email>Sonicadvance1@gmail.com</email>
</author>
<published>2015-03-08T13:44:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=70977fd6b163d38e1db875d1e3d303656b071043'/>
<id>70977fd6b163d38e1db875d1e3d303656b071043</id>
<content type='text'>
Implement full occlusion queries for the Nexus 9.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Implement full occlusion queries for the Nexus 9.</pre>
</div>
</content>
</entry>
<entry>
<title>Formatting/Whitespace Cleanup</title>
<updated>2015-02-25T15:48:21+00:00</updated>
<author>
<name>Stevoisiak</name>
<email>Stevoisiak@gmail.com</email>
</author>
<published>2015-02-15T19:43:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=93b16a4a2d5f3e6d467d1315c461aff12852b26c'/>
<id>93b16a4a2d5f3e6d467d1315c461aff12852b26c</id>
<content type='text'>
Various fixes to formatting and whitespace
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Various fixes to formatting and whitespace
</pre>
</div>
</content>
</entry>
<entry>
<title>[GLExtensions] Add support for NV_occlusion_query_samples.</title>
<updated>2015-02-21T23:24:32+00:00</updated>
<author>
<name>Ryan Houdek</name>
<email>Sonicadvance1@gmail.com</email>
</author>
<published>2015-02-21T22:57:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=a5b4ac6faa11201ef90ff2a9881af8b0146f9c1f'/>
<id>a5b4ac6faa11201ef90ff2a9881af8b0146f9c1f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for two new OpenGL ES extensions.</title>
<updated>2015-01-19T05:01:43+00:00</updated>
<author>
<name>Ryan Houdek</name>
<email>Sonicadvance1@gmail.com</email>
</author>
<published>2015-01-18T21:23:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=4551bb6ce676d52391584a8c900d3cf672a3588a'/>
<id>4551bb6ce676d52391584a8c900d3cf672a3588a</id>
<content type='text'>
This adds support for OES_draw_elements_base_vertex and EXT_buffer_storage.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds support for OES_draw_elements_base_vertex and EXT_buffer_storage.
</pre>
</div>
</content>
</entry>
<entry>
<title>Work around broken Android garbage.</title>
<updated>2014-12-20T21:15:57+00:00</updated>
<author>
<name>Ryan Houdek</name>
<email>Sonicadvance1@gmail.com</email>
</author>
<published>2014-12-20T05:57:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=f2d998c93883c42c24eb661c0f86ac27fed08e78'/>
<id>f2d998c93883c42c24eb661c0f86ac27fed08e78</id>
<content type='text'>
This fixes running Dolphin on the Nexus 9.

Android's EGL stack has internal arrays that they use for tracking OpenGL function usage. Probably has something to do with their OpenGL profiling
garbage that used to be in ADT.

Android has three of these arrays, each statically allocated.
One array is for all GLES 1.x functions
One array is for all GLES 2.0/3.0/3.1 and a couple of extensions they deem worthy of being in this array.
The last array is for all function pointers grabbed via eglGetProcAddress that isn't in the other two arrays.

The last array is the issue that we are having problems with. This array is 256 members in length.
So if you are pulling more than 256 function pointers that Google doesn't track in their internal array, the function will return NULL and yell at you
in logcat.

The Nvidia Shield Tablet gets around this by replacing part of the EGL stack with their own implementation that doesn't have this garbage.
The Nexus 9 on the other hand doesn't get away with this. So we pull &gt;100 more function pointers than the array can handle, and some of those we need
to use.

The workaround for this is to grab OpenGL 1.1 functions last because we won't actually be using those functions, so we get away with not grabbing the
function pointers.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes running Dolphin on the Nexus 9.

Android's EGL stack has internal arrays that they use for tracking OpenGL function usage. Probably has something to do with their OpenGL profiling
garbage that used to be in ADT.

Android has three of these arrays, each statically allocated.
One array is for all GLES 1.x functions
One array is for all GLES 2.0/3.0/3.1 and a couple of extensions they deem worthy of being in this array.
The last array is for all function pointers grabbed via eglGetProcAddress that isn't in the other two arrays.

The last array is the issue that we are having problems with. This array is 256 members in length.
So if you are pulling more than 256 function pointers that Google doesn't track in their internal array, the function will return NULL and yell at you
in logcat.

The Nvidia Shield Tablet gets around this by replacing part of the EGL stack with their own implementation that doesn't have this garbage.
The Nexus 9 on the other hand doesn't get away with this. So we pull &gt;100 more function pointers than the array can handle, and some of those we need
to use.

The workaround for this is to grab OpenGL 1.1 functions last because we won't actually be using those functions, so we get away with not grabbing the
function pointers.
</pre>
</div>
</content>
</entry>
<entry>
<title>Enables stereo rendering with OpenGL ES 3.1 + AEP.</title>
<updated>2014-12-07T11:14:35+00:00</updated>
<author>
<name>Ryan Houdek</name>
<email>Sonicadvance1@gmail.com</email>
</author>
<published>2014-12-07T05:29:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=ce7c52eca0bb54fc6b1085c329a6fd42faac3aee'/>
<id>ce7c52eca0bb54fc6b1085c329a6fd42faac3aee</id>
<content type='text'>
If the host device supports GLES 3.1 and AEP we can have stereo rendering.
Just need to make sure to grab the correct function pointer that GL_EXT_geometry_shader provides, and enable AEP in the shaders.

We can't just check if AEP is in the extension list for support because Qualcomm has failed once more.
With the Nexus 6 it reports support for AEP but doesn't support OpenGL ES 3.1, which is an impossible combination.
From reports on their forum it seems that attempting to use any AEP things results in nothing happening, seems like a stub implementation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If the host device supports GLES 3.1 and AEP we can have stereo rendering.
Just need to make sure to grab the correct function pointer that GL_EXT_geometry_shader provides, and enable AEP in the shaders.

We can't just check if AEP is in the extension list for support because Qualcomm has failed once more.
With the Nexus 6 it reports support for AEP but doesn't support OpenGL ES 3.1, which is an impossible combination.
From reports on their forum it seems that attempting to use any AEP things results in nothing happening, seems like a stub implementation.
</pre>
</div>
</content>
</entry>
</feed>
