56513f5ff4f3e851c5f0cb38dc8851d18616b3c0 |
|
30-May-2012 |
Jesse Hall <jessehall@google.com> |
Move emugl system code to development.git Because of the way the SDK and Android system images are branched, host code that goes into the SDK tools can't live in the same repository as code that goes into the system image. This change keeps the emugl host code in sdk.git/emulator/opengl while moving the emugl system code to development.git/tools/emulator/opengl. A few changes were made beyond simply cloning the directories: (a) Makefiles were modified to only build the relevant components. Not doing so would break the build due to having multiple rule definitions. (b) Protocol spec files were moved from the guest encoder directories to the host decoder directories. The decoder must support older versions of the protocol, but not newer versions, so it makes sense to keep the latest version of the protocol spec with the decoder. (c) Along with that, the encoder is now built from checked in generated encoder source rather than directly from the protocol spec. The generated code must be updated manually. This makes it possible to freeze the system encoder version without freezing the host decoder version, and also makes it very obvious when a protocol changes is happening that will require special backwards-compatibility support in the decoder/renderer. (d) Host-only and system-only code were removed from the repository where they aren't used. (e) README and DESIGN documents were updated to reflect this split. No actual source code was changed due to the above. Change-Id: I2c936101ea0405b372750d36ba0f01e84d719c43
|
80d4ba77162126cfb60f9ca75f8a1d3a458ed31f |
|
18-Apr-2012 |
Jesse Hall <jessehall@google.com> |
Move emulator GLES from development.git to sdk.git The emulator GLES support has two interfaces: a host shared library interface used by QEMU, and a protocol between the platform and the host. The host library interface is not versioned; QEMU and the GLES renderer must match. The protocol on the other hand must be backwards compatible: a new GLES renderer must support an older platform image. Thus for branching purposes it makes more sense to put the GLES renderer in sdk.git, which is branched along with qemu.git for SDK releases. Platform images will be built against the protocol version in the platform branch of sdk.git. Change-Id: Ie73fce12815c9740e27d0f56caa53c6ceb3d30cc
|
b62e28ddde79314f9d556f8755b1c08dff9cdabd |
|
16-Apr-2012 |
Jesse Hall <jessehall@google.com> |
Move emulator GLES from development.git to sdk.git The emulator GLES support has two interfaces: a host shared library interface used by QEMU, and a protocol between the platform and the host. The host library interface is not versioned; QEMU and the GLES renderer must match. The protocol on the other hand must be backwards compatible: a new GLES renderer must support an older platform image. Thus for branching purposes it makes more sense to put the GLES renderer in sdk.git, which is branched along with qemu.git for SDK releases. Platform images will be built against the protocol version in the platform branch of sdk.git. Change-Id: Ibe2cf8de13520aa3fcbaf72328a15ece261d7b86
|
a3b1c787672074f90807f57266c7044955813e38 |
|
25-Feb-2012 |
Mathias Agopian <mathias@google.com> |
remove dependency on android_natives_priv.h Change-Id: If06ea9aeb836d6ceb09745770956a25211f428d3
|
d6bd1843ce6ffd18b8dd7105052572b2c3af876a |
|
23-Nov-2011 |
Jesse Hall <jessehall@google.com> |
EmuGL: GLESv2 support for OES_EGL_image_external Change-Id: I8911328d5dcccdf4731bd2d8fd953c12fdec5f1b
|
5a622cba8c5287d5e6577f940a22343a7cae977f |
|
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic6cac56d137f705dfa7266f21e9b0269219bd5d1
|
112bc5e57e206ec3e0bc5a335b62eae2eb8892e8 |
|
20-Dec-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: Ia14c98936bb1dc74e681bf2de342ad6861646778
|
7906431d04763c920c8b85ab0a15be599e310c1f |
|
01-Dec-2011 |
Jesse Hall <jessehall@google.com> |
EmuGL: capture VBO contents in GL2Encoder The glBufferData, glBufferSubData, and glDeleteBuffers entry points had interception routines in GL2Encoder which cache the data, but they weren't hooked up. So when glDrawElements tried to retrieve the cached data it wasn't there. Change-Id: Iaed11fccaefab3186485be53a0f15c8ca0a255f9
|
4e6af749d5996edd6558821a7e400427f0457306 |
|
16-Sep-2011 |
David 'Digit' Turner <digit@google.com> |
emulator: opengl: Back-port GLES emulation from the master tree. The modules here are only built when BUILD_EMULATOR_OPENGL is defined to true in your environment or your BoardConfig.mk (see tools/emulator/opengl/Android.mk) Change-Id: I5f32c35b4452fb5a7b4d5f9fc5870ec1da6032e6
|
7944edcdb28d6924f782fb04464526165447c1e6 |
|
10-Aug-2011 |
Guy Zadickario <guy@graphtech.co.il> |
opengles emulator: fix the uniform location WAR for intel platforms Fixed the location shift WAR to work for arrays that starts at location 0. Fixed conformance regressions made by this workaround. The conversion should be smarter than just shifting 16-bits back and forth, it should take into account if array element is being accessed. Change-Id: Icb746c67e16edfacb8264a1e687fd24ac6e868e7
|
52829d82ab415afd15053f2953fad81b0fdbe4d0 |
|
05-Aug-2011 |
Guy Zadickario <guy@graphtech.co.il> |
opengles emulator: Workaround Cordy (Unity) bug with intel driver. Uniform locations are 32-bit values which the application queries from the driver after a shader program is linked. It seems that Cordy game (possibly all Unity based apps) store the returned location as 16-bit value. Intel driver returns location values in the upper 16-bit range :( This is a workaround for this issue, when a program is linked we check the locations of all uniforms, if all locations are within the upper 16-bit range (as with Intel driver) we shift the location value before returning to the application. Also override all functions which take a location parameter and do the reverse shift before sending a location value to the host. Change-Id: I234aaafe3313774b5da79eb1dac713b89b10ad60
|
8ee217f9cc21e26f3dd5b52be038475a3818298f |
|
01-Aug-2011 |
Liran <liran@graphtech.co.il> |
opengles emulator: fix glGetUnifrom added state tracking for uniforms in program objects for each active uniform in index i we will save its starting location ,size and type, so when calling glGetUniform on its location, we can tell how many bytes we should read from the stream according to the uniform's type add some type and size definitions to functions that calculate size from enum some other fixes to the codec Change-Id: I4ecdf41e752454a908d131e76bab113a616f2bc8
|
e99305dd9f4bfa0bc16cea025dd829b2aa5b8030 |
|
26-Jul-2011 |
Stas Gurtovoy <stas@graphtech.co.il> |
opengles emulator: cache all buffer on the guest This is needed to support the rare, but still legal scenario, when glDrawElemets is used with some index array data is stored in VBO's while the actual attributes (vertices) data is in immediate mode. When in immediate mode, we need to process the incodes, in order to know which vertex data to send, which was impossible without the caching. This commit introduces a new class GLSharedGroup, which will hold all data that can be shared by shared contexts (buffers are such data). This also makes the "Jet Cars Stunts" app work properly. Change-Id: Ic937080dae461bc8cdf4d10cf37066a6e847f464
|
d6f18cdf8055620b097933a65be30117c9284b6f |
|
07-Jul-2011 |
Stas Gurtovoy <stas@graphtech.co.il> |
opengl emulator: Added gl error tracking on the guest (encoder) Sometimes we need to check parameter values before encoding to prevent crashes, for example: glDeleteBufferes(-1, ptr); - would crash For that we need to check some gl errors on the guest. The change adds error state to the encoder and also adds new feature to emugen which allows to insert parameter check code into the attribute file. Added such parameter check code in the appropiate gl functions in gl.attrib and gl2.attrib Change-Id: I7f317df52ac8fbd96979100a1031cf023a0b49d3
|
304a1c21ca1b3d4ae630c0e85a04eb83919ae886 |
|
30-Jun-2011 |
Stas Gurtovoy <stas@graphtech.co.il> |
opengles Translator: Omit precision macros from shaders The shaders fail to compile if we don't omit those changes (Cordy game for example). Anyways, they have no semantic meaning in GLSL, quote for GLSL 4.1 spec: "Precision qualifiers are added for code portability with OpenGL ES, not for functionality. They have the same syntax as in OpenGL ES, as described below, but they have no semantic meaning, which includes no effect on the precision used to store or operate on variables." Also removed an anoying print in the encoder.
|
118af8505175acff4d79ba8e1a5fc90ea0c3714c |
|
20-Jun-2011 |
Stas Gurtovoy <stas@graphtech.co.il> |
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
|
62d074d9f8d86f231a3094f2474700c805d20e7a |
|
16-Jun-2011 |
Stas Gurtovoy <stas@graphtech.co.il> |
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
|
a26f6f221b65501efc8aa51e753ff22b817ee1be |
|
15-May-2011 |
Stas Gurtovoy <stas@graphtech.co.il> |
emulator opengl: Added glFinishRoundTrip to GLESv2 Change-Id: Ia1c6cb7e75a1769040d13e81d0da7db5f5c28435
|
d32c2d9633c1b73089fe3eaeddbe2abf4b29881a |
|
05-May-2011 |
Stas Gurtovoy <stas@graphtech.co.il> |
emulator opengl: system GLESv1 first commit. This is the first commit for the GLESv1 implementation. It also includes needed fixes in emugen to support const types. Also, changed glFinish definition in gl.in to match the definition as in gl.h. Change-Id: I90262a1db6035a90af8db17984acecef6499847a
|
0c814b227c284b83e8e32cb2ae4e87ba05e511c0 |
|
23-Apr-2011 |
Jacky Romano <jr@graphtech.co.il> |
emulator opengl - encode glShaderSource glShaderSource strings are concatenated into a single string before sent over the wire protocol. The wire protocol transfer is done using a special api call 'glShaderString' Change-Id: I90c157df66fe82fee17c460a1e7852d370c77088
|
318ffd3798500fe100e0a16166cc0fa9e3790ca3 |
|
20-Apr-2011 |
Jacky Romano <jr@graphtech.co.il> |
Emulator Opengl - adding preliminary version of GLESv2 encoder This preliminary version includes the API definition, and the GL2Encoder implementation class Change-Id: I7ef9cfeb98c1e85097287ab26733825087368ee0
|