Commit Graph

6716 Commits

Author SHA1 Message Date
David Turner
e5dfc06819 Merge "Translator 1.1 conformance: fix ARRAY related gets" 2011-07-03 04:59:38 -07:00
David Turner
24af5e0a4a Merge "Translator: fix eglGetProcAddress() on Linux" 2011-07-03 04:58:59 -07:00
Yochai Shefi Simchon
2da542b598 1.1 Translator conformance: fix texture issues
This fixes three issues:

1. glGet(GL_2d_TEXTURE_BINDING) should be handled by the translator rather
than by OpenGL.

2. glIsTexture shoud return GL_TRUE only if the texture was bound at some
point - add a wasBound member to the TextureData and maintain it.

3. glTexParameter(GL_GENERATE_MIPMAP) did not work. The first problem was
that it was not allowed by our validator - fixed. The next issue is that
this enum is not necessarily supported by the OpenGL implementation - it
is in OpenGL 2.x, but was replaced by an extension in 3.x. So in case the
extension does not exist, and GL_GENERATE_MIPMAP is required, save this info
in a new requiresAutoMipmap member of TextureData and call glGenerateMipmapExt
whenever glTex(Sub)Image2D is called.
There is a theoretical case where neither GL_GENERATE_MIPMAP nor glGenerateMipmap
is supported by the OpenGL implementation - this is not likely to happen, but
if we find such an implementation it might require implementing a mipmap
generation software algorithm (which is bad).
2011-07-03 14:56:13 +03:00
Stas Gurtovoy
635e929c44 opengl translator: fixed glGetString(GL_EXTENSIONS) for GLESv2
fixed query of GL_EXTENSIONS in glesv2.
Also fixed EGL surface desruction when there is
no current context.
2011-07-03 14:56:13 +03:00
Yochai Shefi Simchon
d18e93ba4c Translator 1.1 conformance: fix ARRAY related gets
There is a set of glGets which query the client state of the
binded arrays. The data exists in the translator context and is not
passed to GL, so the glGets should be handled internaly.
This is done by implementing four glGet*v methods in GLEScontext, which
return a boolean value indicating whether we have set the return value
or not, and are called by the glGet*v functions in GLEScmImp.
Two of the glGets are handled by GLEScontext, and the other 15 by
GLEScmContext since they are specific to GLES 1.1. The same should be
done for 2.0 specific glGets in a later patch.
Also. bufferName is now saved in GLESPointer in to allow the
GL_*_ARRAY_BUFFER_BINDING get.
2011-07-03 14:56:13 +03:00
Yochai Shefi Simchon
b241f904f0 Translator: fix eglGetProcAddress() on Linux
Our implementation of eglGetProcAddress() resolves the function addresses
in run time. Typically this is not an issue, but when a gl function is
also implemented by the calling app the address was resolved to the calling
app's version of the function rather than ours. This is the case with the
glDrawTex{isfx}OES functions in the 1.1 conformance test.
The solution is to add the -Bsymbolic switch when linking our libraries,
so all symbol resolution is done internaly.
The same fix should probably be done for Mac.
2011-07-03 14:56:12 +03:00
David Turner
b2cbc35350 Merge "Translator 1.1 - fix glGetPointer" 2011-07-03 04:54:31 -07:00
Yochai Shefi Simchon
83132ab0a2 Translator 1.1 - fix glGetPointer
getPointer is implemented both in GLEScmContext and its parent GLEScontext,
but was not declared virtual amd hence didn't work.
2011-07-03 14:52:28 +03:00
David Turner
64d0e9d5d4 Merge "Fix segfault when destroying context" 2011-07-03 04:50:35 -07:00
David Turner
3209e85a7e Merge "glDrawTex- GL_INVALID_VALUE if width/height <= 0" 2011-07-03 04:49:40 -07:00
David Turner
0e5889df52 Merge "opengl translator: extending ConversionArrays class" 2011-07-03 04:49:02 -07:00
Yochai Shefi Simchon
6a40d94db4 Fix segfault when destroying context
m_texCoords was not initialized in the GLEScontext constructor, so when
destructing it resulted in an illegal free.
2011-07-03 14:47:12 +03:00
Yochai Shefi Simchon
03da50800f glDrawTex- GL_INVALID_VALUE if width/height <= 0 2011-07-03 14:47:12 +03:00
Amit Feller
772de2edde opengl translator: extending ConversionArrays class
inserting some of the logic which was scattered over some parts
of the GLESContext class to be encpsulated inside the ConversionArrays
so that the code will be more clea and organized.
2011-07-03 14:47:12 +03:00
David Turner
0e47516139 Merge "opengl translator: add vertex attrib index validation." 2011-07-03 04:42:48 -07:00
David Turner
8d2dc2a430 Merge "opengl translator: conformance fixes" 2011-07-03 04:42:19 -07:00
David Turner
617c7a184b Merge "validateing client's arrays type" 2011-07-03 04:41:16 -07:00
David Turner
b4cbe3de38 Merge "opengl translator: supporting GL_BYTE type" 2011-07-03 04:40:45 -07:00
Liran
166f3cb3c6 opengl translator: add vertex attrib index validation.
Fixed conformance test issue.
2011-07-03 14:32:43 +03:00
Liran
3c15de2f2e opengl translator: conformance fixes
fix shader and program names in glDeleteShader/Program
fix object name manager to accept objects with name 0
fix unbinding of buffers,framebuffers and renderbuffers
separate getPointer to have specific implementation for gles 1 and 2
fix number of supported texture images to match GL
fix incorrect optimization that skips draw on false conditions
2011-07-03 14:32:43 +03:00
Amit Feller
61d845731a validateing client's arrays type 2011-07-03 14:32:43 +03:00
Amit Feller
2ca84fb34a opengl translator: supporting GL_BYTE type
support GL_BYTE in glvertexpointer & glTexCoordPointer,
Desktop OpenGL does not support GL_BYTE in those calls
so we convert the data into GL_SHORT.
2011-07-03 14:32:43 +03:00
David Turner
08bc92ed62 am 78250d2b: am b97e9575: Merge "emulotor gralloc: fixed HAL_PIXEL_FORMAT_RGB_565"
* commit '78250d2bfc95ce8db6071547efe88471e75eb8d6':
  emulotor gralloc: fixed HAL_PIXEL_FORMAT_RGB_565
2011-07-01 03:21:55 -07:00
David Turner
c35b6f7225 am 5a757de2: am 23839223: Merge "emulator gralloc: Make the cb_handle_t::validate static"
* commit '5a757de276415f6c61fb47265375b36bf3da8ee7':
  emulator gralloc: Make the cb_handle_t::validate static
2011-07-01 03:21:53 -07:00
David Turner
737db05fe4 am b62e461e: am 580a5748: Merge " opengl translator: Fix windows runtime problems"
* commit 'b62e461ec46d8252b3fbca61bb63eb25aba2e5a8':
  opengl translator: Fix windows runtime problems
2011-07-01 03:21:41 -07:00
David Turner
78250d2bfc am b97e9575: Merge "emulotor gralloc: fixed HAL_PIXEL_FORMAT_RGB_565"
* commit 'b97e9575770187643379979a016d93772cc181f8':
  emulotor gralloc: fixed HAL_PIXEL_FORMAT_RGB_565
2011-07-01 03:17:43 -07:00
David Turner
5a757de276 am 23839223: Merge "emulator gralloc: Make the cb_handle_t::validate static"
* commit '23839223b97e2bba2091627a90bbc2a9454545c1':
  emulator gralloc: Make the cb_handle_t::validate static
2011-07-01 03:17:42 -07:00
David Turner
b62e461ec4 am 580a5748: Merge " opengl translator: Fix windows runtime problems"
* commit '580a57485345cda018df4c63f65d3a9a8a61ce5b':
  opengl translator: Fix windows runtime problems
2011-07-01 03:17:40 -07:00
David Turner
99acb819bf am fbfb73b4: am 0c074ddb: Merge "Setting Renderer default libs to use translator libs"
* commit 'fbfb73b40593389ea91c147da5ee374c841009dd':
  Setting Renderer default libs to use translator libs
2011-07-01 03:10:53 -07:00
David Turner
94d4f55f1c am 0c06eaf3: am ebc56952: Merge "emulator opengl: fix windows build"
* commit '0c06eaf38c9982bc3ede0c351f4f0165f59283b0':
  emulator opengl: fix windows build
2011-07-01 03:10:51 -07:00
David Turner
c6f4edf37e am 391237dd: am 89a74292: Merge "emulator GLESv2: fixed (#16) NenaMark crashes on exit"
* commit '391237dda869e27a0d5e82888dfed0dfa87c3241':
  emulator GLESv2: fixed (#16) NenaMark crashes on exit
2011-07-01 03:10:49 -07:00
David Turner
3206de396d am a42a3deb: am ece2077b: Merge "emulator opengl: add GLESv2 support to driver + renderer"
* commit 'a42a3deb874a1be0fb27656367efc749a875884e':
  emulator opengl: add GLESv2 support to driver + renderer
2011-07-01 03:10:46 -07:00
David Turner
b97e957577 Merge "emulotor gralloc: fixed HAL_PIXEL_FORMAT_RGB_565" 2011-07-01 03:07:00 -07:00
Stas Gurtovoy
33e95e85fd emulotor gralloc: fixed HAL_PIXEL_FORMAT_RGB_565
set its glFormat to GL_RGB since GL_RGB565_OES is not supported on the host.
This also fixes the wallpaper issue, making it visible.

Change-Id: Icf616e70d8f41ca0d01e7cdeb9585107dc8ebc31
2011-07-01 12:06:07 +02:00
David Turner
fbfb73b405 am 0c074ddb: Merge "Setting Renderer default libs to use translator libs"
* commit '0c074ddb09f23682bde109aaa1bb201967ad892e':
  Setting Renderer default libs to use translator libs
2011-07-01 03:05:03 -07:00
David Turner
0c06eaf38c am ebc56952: Merge "emulator opengl: fix windows build"
* commit 'ebc56952c7d34754c334fdeb1ecef5622ef258b9':
  emulator opengl: fix windows build
2011-07-01 03:05:01 -07:00
David Turner
391237dda8 am 89a74292: Merge "emulator GLESv2: fixed (#16) NenaMark crashes on exit"
* commit '89a74292b331514a7e54e9971258b8ad99d31965':
  emulator GLESv2: fixed (#16) NenaMark crashes on exit
2011-07-01 03:04:59 -07:00
David Turner
a42a3deb87 am ece2077b: Merge "emulator opengl: add GLESv2 support to driver + renderer"
* commit 'ece2077bdd97f42247c022ed9ee87742ef0d1756':
  emulator opengl: add GLESv2 support to driver + renderer
2011-07-01 03:04:57 -07:00
David Turner
23839223b9 Merge "emulator gralloc: Make the cb_handle_t::validate static" 2011-07-01 03:03:47 -07:00
David Turner
580a574853 Merge " opengl translator: Fix windows runtime problems" 2011-07-01 03:02:31 -07:00
David Turner
0c074ddb09 Merge "Setting Renderer default libs to use translator libs" 2011-07-01 03:00:26 -07:00
David Turner
ebc56952c7 Merge "emulator opengl: fix windows build" 2011-07-01 02:59:35 -07:00
David Turner
89a74292b3 Merge "emulator GLESv2: fixed (#16) NenaMark crashes on exit" 2011-07-01 02:57:17 -07:00
David Turner
ece2077bdd Merge "emulator opengl: add GLESv2 support to driver + renderer" 2011-07-01 02:56:33 -07:00
Stas Gurtovoy
8793e54e60 emulator gralloc: Make the cb_handle_t::validate static
This is nicer, since it checks the handle itself, not counting on the caller to check it

Change-Id: I7eba6292dee8e0832a8c0074f508c07c3bc43ff2
2011-06-30 09:14:16 +03:00
Amit Feller
87363ca283 opengl translator: Fix windows runtime problems
fixed functions calling conventions in dispatch tables,
added link flag to translator libraries to produce an alias
function for all exported functions with stdcall name mangling.

Change-Id: I4360f26da1f897764ba6d4dd02c365ed00420b51
2011-06-30 09:14:16 +03:00
Amit Feller
a20ba0e4de Setting Renderer default libs to use translator libs
Change-Id: I853a30ce1aa7325d01a30b30c18f4e0bd5a5702f
2011-06-30 09:14:16 +03:00
Amit Feller
efcbbc3f28 emulator opengl: fix windows build
Change-Id: I145c7bf3a664fdb2c9e113cd977b4b2431d0668d
2011-06-30 09:14:16 +03:00
Stas Gurtovoy
118af85051 emulator GLESv2: fixed (#16) NenaMark crashes on exit
The GL2Encoder::m_compressedTextureFormats  member wasn't initialized, so the d'tor
would sometimes crash trying to delete it. Also init m_num_compressedTextureFormats.

Change-Id: Iae423c16a84a4e454e0e1167f7478f9e2f6183c0
2011-06-30 09:14:16 +03:00
Stas Gurtovoy
62d074d9f8 emulator opengl: add GLESv2 support to driver + renderer
Added GLESv2 library to system.
Made fixes to the host libOpenGLRender to
compile and support GLESv2 (defined WITH_GLES2).
Other fixes required to make GLESv2 to work.

Change-Id: I9eb198e6092e7fa3550342c50929dd1714282cb3
2011-06-30 09:14:12 +03:00