Khronos Public Bugzilla
Bug 192 - OpenKODE: Flash app and OpenVG drawing together - Comple screen goes black except the OPenVG part
OpenKODE: Flash app and OpenVG drawing together - Comple screen goes black ex...
Status: NEW
Product: OpenKODE
Classification: Unclassified
Component: Conformance Tests
1.1
Other Other
: P3 normal
: 1.0 (Final)
Assigned To: Tim Renouf
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2009-07-11 00:17 PDT by Shivendra Tiwari
Modified: 2013-12-16 14:25 PST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Shivendra Tiwari 2009-07-11 00:17:53 PDT
Hello,

Here is the environment:
Hardware: ARM/IMX35
OS: QNX6.4.0 and OpenVG1.1

The application consists of Flash Application in the complete screen; however OpenVG drawing window is around 1/3rd part
 of the whole screen. I am using OpenKODE for integrating these two.

High level API callings are:
-----------------------------------------------------------------------------
kd_win = kdCreateWindow(egl_disp, egl_conf, KD_NULL);
......
///setting properties of kd_win like class, position, size etc.
......
kdRealizeWindow(kd_win, &egl_win);
egl_surf = eglCreateWindowSurface(egl_disp, egl_conf, egl_win, NULL);
eglSurfaceAttrib(egl_disp, egl_surf, EGL_SWAP_BEHAVIOR, EGL_BUFFER_PRESERVED);
eglMakeCurrent(egl_disp, egl_surf, egl_surf, egl_ctx);
eglSwapInterval(egl_disp, interval);
....
m_warpImage = vgCreateImage(m_imageFormat, m_display_width, m_display_height, VG_IMAGE_QUALITY_BETTER);

m_displayPixelRect = (unsigned char*)malloc(m_display_height * m_display_width);
	   memset(m_displayPixelRect, 0, m_display_height * m_display_width);
	   
	   VGfloat mat[9];
	   vguComputeWarpQuadToQuad(0, 0, (VGfloat)m_display_width, 0.0f, (VGfloat)m_display_width * 0.8f, (VGfloat)
m_display_height * 0.5f, (VGfloat)m_display_width * 0.2f, (VGfloat)m_display_height * 0.5f,
	                              0, 0, (VGfloat)m_display_width, 0, (VGfloat)m_display_width, (VGfloat)m_display_height, 0
.0f, (VGfloat)m_display_height, mat);

....
memcpy(m_warpMatrix, mat, sizeof(VGfloat)*9);

----------------------------------------------------------------------------------

The Flash app is up all the time and it allows me to create and draw an OpenVG map into the specific area Flash has 
decided. Everything works fine until the OpenVG map drawing starts. As soon as Map comes up in the front, the whole 
screen goes back except the OpenVG map window. After few seconds (around 3-4 seconds) the Flash app comes up and the 
whole integrated Flash and OpenVG apps work together properly. This problem comes up again if I resize the OpenVG map 
area for which I need to create a different size OpenVG window (egl_surface) again.

Can someone please let me know what is the cause of the problem? I hope I have given the sufficient information. Please 
let me know if you want more decryption.  

Thanks a lot.
Shivendra
Comment 1 Tim Renouf 2009-07-16 04:23:38 PDT
Hi Shivendra

It sounds like you need to consult the vendor of your graphics stack. Here at Khronos we are only concerned with setting the API standards that the vendors conform to.

Sorry I can't be more help.

-Tim