Hi,
My system includes the following components:
- Freescale MQX4.1
- Freescale Vybrid VF522
- OpenVG 0.7.0
I want to use OpenVG to render into 2 different layers. At the moment my solution is something like that (using layer 0 and layer 3):
...
fbdisp0 = fbws_open_display(0, &buf_info0);
fbdisp3 = fbws_open_display(3, &buf_info0);
fbws_create_window(fbdisp0, 0, 0, info.width, info.height);
fbws_create_window(fbdisp3, 0, 0, info.width, info.height);
eglBindAPI(EGL_OPENVG_API);
....
eglCreateContext(disp0, cfg[i], ...);
eglCreateContext(disp3, cfg[i], ...);
eglCreateWindowSurface(disp0, ....);
eglCreateWindowSurface(disp3, ....);
....
while(1)
{
eglMakeCurrent(disp0, surf0, surf0, ctx0);
.... calling vg-functions to render to layer 0.....
eglSwapbuffers(disp0, surf0);
eglMakeCurrent(disp3, surf3, surf3, ctx3);
.... calling vg-functions to render to layer .....
eglSwapbuffers(disp3, surf3);
}
The framebuffer-pointer from the single DCU-layer is switched correctly : buffer[0] > buffer[1] > buffer[2] > buffer[0] > buffer[1] .....
But the OpenVG-Library always renders his data to buffer[0].
The problem is still there when I only use 1 context, 1 layer, ... but using eglMakeCurrent.
Any hints ?
Regards
Sebastian