summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-08-05YaGL: Updating the EGL header filesjinhyung.jo5-383/+556
Update EGL header files to the version of May 2015, EGL spec 1.5. Change-Id: Ifc7ba9cadebb0b229f1d1ee72171e241d2801a0a Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
2015-08-04YaGL: mark eglMakeCurrent call as 'flushing'Vasiliy Ulyanov2-1/+2
According to EGL spec the currently bound context needs to be flushed before being released or another context is made current. Without flushing we may miss some GL calls if there are several threads rendering to a single context. Change-Id: Id6680a086d895ba94b4c279b18443d93017838d1 Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-08-04YaGL: keep at least 2 back buffers for dri3 drawablesVasiliy Ulyanov1-0/+4
With only one back buffer available the rendering freezes Change-Id: I9b2cdbeddf4786bc57bef997574d606a15ebf4cb Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-08-04YaGL: Avoid clamping with floating point texturesVasiliy Ulyanov1-6/+6
We need to pass the proper dst_internalformat to the host when using a texture with floating-point components in glTexImage2D. Change-Id: Ia588a6e84ad5e359d3ed6d6eaf7d8769569acc38 Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-08-04YaGL: Modified the startup scriptjinhyung.jo2-5/+18
Checks the device node instead of the kernel command Change-Id: Ib14005a53dd989419b8c49ec72600f107af1ab50 Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
2015-08-04YaGL: Add program link status checkVasiliy Ulyanov2-1/+6
According to the OGLES2.0 spec: void UseProgram(uint program); If program has not been successfully linked, the error INVALID_OPERATION is generated and the current rendering state is not modified. Change-Id: I481a494c210e76ee4db319ae569d3491ade1d35a Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-08-04YaGL: Generate error for rectangular cubemap imagesVasiliy Ulyanov1-0/+5
According to the OGLES2.0 spec: void TexImage2D(enum target, int level, int internalformat, sizei width, sizei height, int border, enum format, enum type, void *data); When the target parameter to TexImage2D is one of the six cube map two-dimensional image targets, the error INVALID_VALUE is generated if the width and height parameters are not equal. Change-Id: Ideb9172fa721cd7c92d1ef98a397d9fe48690e66 Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-08-04YaGL: Fix yagl_get_gles2_sym(...) resolution orderVasiliy Ulyanov1-7/+7
dlsym(NULL, ...) may return a valid pointer to a local symbol. We need to search it in libGLESv2 explicitly first. Change-Id: I6200679d7b69444798d3feeb77b685e2772eb3a7 Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-08-04YaGL: Fix incorrect texture object releaseVasiliy Ulyanov7-32/+17
EGL_KHR_gl_texture_2D_image: texture object is acquired in yagl_gles_image_wrap_tex(...). Hence the release should be performed in the corresponding destructor (i.e. yagl_gles_image_destroy(...)). Change-Id: I92aaf0a4368201453e022859f4c52cdeb103af06 Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-08-04YaGL: Workaround for libevas gles version checkVasiliy Ulyanov1-1/+7
Change-Id: Ieac95a502e98b516e1870d5ea38513931a19881b Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-07-03build: enable the x86_64 buildsubmit/tizen/20150712.051840accepted/tizen/wearable/20150713.013339accepted/tizen/tv/20150713.013331accepted/tizen/mobile/20150713.013324Sooyoung Ha1-1/+1
Change-Id: I0c704d04835972410eb92798b8053656b8a7afe8 Signed-off-by: Sooyoung Ha <yoosah.ha@samsung.com>
2015-05-28packaging: only build for emulator repositoriessubmit/tizen/20150602.060514accepted/tizen/wearable/20150602.130610accepted/tizen/tv/20150602.130645accepted/tizen/mobile/20150602.130624accepted/tizen/common/20150602.115917tizen_3.0.2015.q2_commonStephane Desneux1-2/+3
This package should only be built when _with_emulator is defined in project conf. Change-Id: If9a489968d5fc483de1f51c5d9e1fa39534ebcdf Signed-off-by: Stephane Desneux <stephane.desneux@open.eurogiciel.org>
2015-05-26YaGL: Fix EGL extensions stringsubmit/tizen/20150528.052613Vasiliy Ulyanov1-1/+1
Change-Id: I03dbadfbe7760586a7c9c2e3d2995a56580bc894 Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-05-26YaGL: Fix gl_PointSize shader variable issueVasiliy Ulyanov1-2/+2
If GL_POINT_SPRITE is not enabled explicitly gl_PointSize shader variable appears to be always 0. Change-Id: I8198a0586467eb3f341a330afaddd6d3a263a617 Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-05-26YaGL: Add EGL_TIZEN_image_native_surface supportVasiliy Ulyanov10-0/+246
eglCreateImageKHR(...) now supports EGL_NATIVE_SURFACE_TIZEN target (onscreen backend only) Change-Id: I9ac7016cb3f0c05d7c35a31135506142c22bcb0c Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-05-26YaGL: Add EGL_KHR_gl_texture_2D_image supportVasiliy Ulyanov13-3/+305
eglCreateImageKHR(...) now supports EGL_GL_TEXTURE_2D_KHR target (onscreen backend only) Change-Id: Ie41c494246237ce79e36fde63b49bb7cf876737b Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-05-21YaGL: Added the boilerplatejinhyung.jo2-0/+66
Added a boilerplate to the DRI3 EGL backend Change-Id: I1c7d2f8982af07f0926ab116435504ca46867932 Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
2015-05-21YaGL: Fix hangling of GL_QUERY_RESULT flagVasily Golubev4-8/+9
In the case of calling glGetQueryObjectuiv() with GL_QUERY_RESULT flag we must wait while passed samples counter will be available Change-Id: Ieff4d40c475e7738a4028f1d49c0725be9ea6e8a Signed-off-by: Vasily Golubev <v.golubev@samsung.com>
2015-05-21YaGL: Fix eglQueryContext(...) return valueVasiliy Ulyanov1-0/+2
Now it returns EGL_TRUE on success Change-Id: I16aecdd4b2f1f2456978b2b8f24dcea323333692 Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-05-21YaGL: implement DRI3 EGL backendVasiliy Ulyanov7-7/+1382
Change-Id: Ia9def69b3394f5b9ae9151e5e80e946ef23c6e67 Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
2015-05-21YaGL: Export dummy libs symbolsjinhyung.jo5-322/+359
Added missing attribute tags, __attribute__((visibility("default"))). Change-Id: I3eb51f0a165b2be8baac31e651d7248a9c6b3dc4 Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
2015-05-21YaGL: Modified the setup script while booting timejinhyung.jo4-55/+35
Modified the setup script while booting time to obtain permission. It will be executed when the systemd runs the xorg.service. So, removed the service files in this repo. Change-Id: Idc69d0ae9c69bd4e65f754f997cd4d786f0864f3 Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
2015-01-08YaGL: Source cleanupjinhyung.jo195-75/+6575
Add MIT(or LGPL3.0) boilerplate to the header of the files Add a rule for license file in the spec file Add LICENSE & NOTICE, AUTHOR, COPYING, etc files Change-Id: If2b5c1c07834aaa0f463fb9f47240a2ab463eeff Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
2015-01-08YaGL: Modified packaging rulesjinhyung.jo12-55/+515
Remove the dependency of the packages, simulator-opengl & opengl-es-virtual-drv Change-Id: I6b8f0807df98762dc3d2391de1d1a4021f1b1ff8 Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
2014-12-16YaGL: Modified the startup scriptarchives/tizen_20150513jinhyung.jo2-4/+3
Checks the device node instead of the kernel command. Change-Id: I69aa6e322eb45d22454b56199eb12ff661c16439 Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
2014-09-16Remove static variable for identifying wl_drm buffersTina Zhang10-13/+40
libwayland-drm.a is static link for libEGL.so and libgbm-yagl.so. We can't rely on comparing the address of a static vtable symbol in libwayland-drm.a to determine if a wl_buffer is a wl_drm_buffer. Instead, we move the vtable into the wl_drm struct and use that for comparing. Change-Id: I38e397f2d4806178ebb51bb3850040fad7961b0f Signed-off-by: Tina Zhang <tina.zhang@intel.com>
2014-09-16YaGL: Block for the frame callback in lock_back not swap_buffersTina Zhang1-23/+19
If the throttle only be used in the yagl_wayland_window_swap_buffers(), then in some situations the yagl_wayland_window_get_buffer() may get the NULL buffer. This could let the App draw into the wrong surface. Do throttle in the yagl_wayland_window_lock_back() will solve the problem. Change-Id: Id1d2bc8f1c95b3c956118b36b07b20cc1615046c Signed-off-by: Tina Zhang <tina.zhang@intel.com>
2014-07-29Revert "Remove static variable for identifying wl_drm buffers"Stanislav Vorobiov10-41/+13
This reverts commit f19f89d68723c868e3b1d8bbf75e04cf4e1809ba. Change-Id: Iab08ab64a0ede945298e5006cb441ea0c1d4ca4f Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-07-29Remove static variable for identifying wl_drm buffersTina Zhang10-13/+41
libwayland-drm.a is static link for libEGL.so and libgbm-yagl.so. We can't rely on comparing the address of a static vtable symbol in libwayland-drm.a to determine if a wl_buffer is a wl_drm_buffer. Instead, we move the vtable into the wl_drm struct and use that for comparing. Change-Id: I38e397f2d4806178ebb51bb3850040fad7961b0f Signed-off-by: Tina Zhang <tina.zhang@intel.com>
2014-06-02YaGL: Don't report GL_EXT_texture_storage supporttizen_3.0_ivi_releasetizen_3.0.m14.3_ivi_releasetizen_3.0.m14.2_ivi_releasetizen_3.0.2014.q3_common_releasesubmit/tizen_mobile/20141120.000000submit/tizen_ivi/20140623.104834submit/tizen_ivi/20140602.082939submit/tizen_common/20140602.082932accepted/tizen/ivi/20140624.123215accepted/tizen/common/20140610.160436tizen_3.0_ivitizen_3.0.m14.3_ivitizen_3.0.m14.2_ivitizen_3.0.2015.q1_commontizen_3.0.2014.q4_commontizen_3.0.2014.q3_commonaccepted/tizen_3.0.m14.3_iviaccepted/tizen_3.0.2014.q3_commonStanislav Vorobiov2-4/+0
We do support glTexStorageXXX in GLESv3, however, GL_EXT_texture_storage is different. GL_EXT_texture_storage requires supporting a lot of additional internal formats, which is hard to do for all possible host OpenGL versions, especially for OpenGL 2.1. Thus, we don't report GL_EXT_texture_storage support anymore Change-Id: I53bc097c453afac93c42f72b018e04a4e5a7438c Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-06-02YaGL: Report GL_OES_surfaceless_context supportStanislav Vorobiov2-0/+4
EGL_KHR_surfaceless_context can be used only with contexts that support GL_OES_surfaceless_context. YaGL supports GL_OES_surfaceless_context for any kind of context, so report this always Change-Id: I6d515b8b6eccff8a030508f1c2f1fc12db58d520 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-06-02YaGL: Don't report GL_ARB_texture_rectangle supportStanislav Vorobiov3-12/+0
We don't support GL_ARB_texture_rectangle, so don't report it in extension string Change-Id: Ib341b3cff3bd3ea70a5c70d6b3b5557d0c68d390 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-05-23add conditionnal build for emulator repos onlysubmit/tizen_ivi/20140528.131238submit/tizen_common/20140523.214219submit/tizen/20140528.103449accepted/tizen/ivi/20140612.112222Stephane Desneux1-0/+5
Package will be excluded from build except if the %with_emulator flag is defined in the project config. Change-Id: I1aab2e922399bd5a36c96ee9e6956b40be381826 Bug-Tizen: TIVI-2243 Bug-Tizen: TC-9 Signed-off-by: Stephane Desneux <stephane.desneux@open.eurogiciel.org>
2014-05-06YaGL: Remove X11 dependency from EGL headerssubmit/tizen_common/20140523.073647submit/tizen/20140506.063317accepted/tizen/common/20140506.152918Stanislav Vorobiov2-1/+11
Change-Id: I145130455797df19fbd3706b76e92fa72c65d20b Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-05-06YaGL: Remove X11 dependency for wayland buildssubmit/tizen/20140506.061245Stanislav Vorobiov1-6/+7
Change-Id: I1f6fdbfe354c7ee8c22ec30a5b4941be697e68a1 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-04-28YaGL: Fix glTexImageXXX NULL pointer offset bugsubmit/tizen/20140428.162945Stanislav Vorobiov2-4/+14
If we set non-0 GL_UNPACK_SKIP_XXX and call glTexImageXXX with NULL pointer then NULL will get offset and it'll result in guest app crash. We should offset NULL data pointer only if unpack PBO is bound, when no unpack PBO bound we should just calculate the size and don't offset the pointer Change-Id: Ie921016f0245f7042393cae98f04f80300bc85a1 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-04-14YaGL: Optimize glGetXXXsubmit/tizen/20140422.144844Stanislav Vorobiov11-135/+1095
1. Keep track of all remaining context state, thus, glGetXXX queries will return state values without vmexit 2. Cache glGetXXX results on target, queries such as GL_XXX_MAX don't change over time, so no need to vmexit every time user wants to read them Change-Id: I08de6a51b88ff70d60e6aaf1c7cf2161ea3b06b6 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-04-03YaGL: Configurable behavior for glBlitFramebufferStanislav Vorobiov3-2/+23
Currently minifying and magnifying blits in glBlitFramebuffer are disabled because of host OpenGL driver problems on many GPUs, they simply crash. But we want to be able to enable this for some apps that require it, thus we introduce YAGL_MIN_MAG_BLITS environment variable. We currently use this to run nintendo wii games with dolphin-emu, since dolphin-emu uses minifying glBlitFramebuffer every frame. For GameCube games however dophin-emu doesn't use it, so they can be run as usual Change-Id: Ie11a852bc53700231ce012938a8a531bb4e88394 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-03-31YaGL: Report OpenGL ES 3.0 support in eglQueryStringsubmit/tizen/20140402.053430accepted/tizen/ivi/panda/20140402.181503accepted/tizen/ivi/20140410.160645accepted/tizen_ivi_pandaStanislav Vorobiov1-1/+5
Change-Id: Ibf432697aa363911d911790a14df4d23c6ca46f9 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-03-21YaGL: Fix separate depth/stencil attachmentssubmit/tizen/20140327.052722accepted/tizen/ivi/panda/20140327.194438Stanislav Vorobiov1-2/+20
Separate depth/stencil attachments are almost never supported on desktop OpenGL, so return GL_FRAMEBUFFER_UNSUPPORTED in this case, standard allows it Change-Id: Ia141c1990b072dd38bc96218dc9b99a1c59211bc Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-03-21YaGL: Fix glClientWaitSync and glGetSyncivStanislav Vorobiov2-8/+24
Return proper error codes and statuses Change-Id: Ic75f7605c3eabe8aae8074188b9669ecb7c007c3 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-03-21YaGL: Fix buffer object unbindingStanislav Vorobiov1-3/+9
When unbinding buffer object we should detach it from all attachment points, not just the first one Change-Id: I61dc449a6d20cbda112137ea12d8b084d6dfdeb2 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-03-21YaGL: Fix pixel format bpp data typeStanislav Vorobiov1-2/+2
Should be int, not unsigned int Change-Id: I1a12d41addf1d5b965147078c819467dc2875109 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-03-21YaGL: Fix GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE queryStanislav Vorobiov1-4/+8
This query should fail when attachment is GL_DEPTH_STENCIL_ATTACHMENT Change-Id: I79efaf1a075d02a0e540ce586fcfbcf3ca1764a4 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-03-21YaGL: Fix ETC2 textures unpackingStanislav Vorobiov1-24/+24
ETC2 textures were unpacking incorrectly if width or height were not multiple of block size. This is now fixed Change-Id: I68f249b61e285af8142115c4f7e907f66483ec78 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-03-21YaGL: Fix sized GL_DEPTH_COMPONENT texturesStanislav Vorobiov2-0/+28
Sized GL_DEPTH_COMPONENT textures are treated as luminance textures in desktop OpenGL, but according to OpenGL ES 3.0 they should be red, thus, we need to swizzle them. Also, when texture data is respecified we should unswizzle the texture when needed Change-Id: Ia1d5d3de860c04848a09bf84ac4a98f94466ea97 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
2014-03-06Merge branch 'glesv3' into tizenStanislav Vorobiov123-4185/+24236
Change-Id: Iccd757b9ff0096faf69619a9ff5e1344ae0cab7e
2014-03-06YaGL: Version bumpglesv3Stanislav Vorobiov1-1/+1
GLESv3 merge version bump Change-Id: Ice426f2047d3669b33d75ad0d17141bb0f0ffcc1
2014-03-06YaGL: Fixes for Mac OS XStanislav Vorobiov4-14/+42
* glClearBufferfv must clamp floats by itself or else host OpenGL driver will crash * Don't call glGetIntegerv(GL_MAX_VARYING_COMPONENTS) * Features that are in core profile are not exposed in extension list, take this into account while creating our own extension list Change-Id: Ia9d1744b3a4880a2f20ea104e94811df34f2e241
2014-03-05YaGL: Don't call host's glGetIntegerv(GL_XXX_BITS)Stanislav Vorobiov6-240/+487
GL_XXX_BITS is deprecated in OpenGL 3.1+ core, so implement it ourselves Change-Id: I8c44feb22350c852d9f003985d41e0bb728d00f0