Hi,
I have used CEF branch 2062 successfully on Linux to generate off screen framebuffer that supports WebGL and all that great stuff.
Performance is great!
But I tried to move my source over to OS X now, and my two main problems is that "OnContextCreated" is never called. So my "JS injection" is never run. And performance is really slow. Less than 10 frames per second. I have tested cefclient example with off screen rendering, and it receives great framerate. So it is definatly some problem with my usage of CEF, or compiling of my application.
I have created the main process, and also generated two helper apps called myapp EH.app, and myapp NP.app, and I can see that at least the EH app is executed successfully. So this seems to work correct.
But I am unsure if my "GetRenderProcessHandler" is even called. I tried debugging using printf(), and it does not output anything. Is stdout redirected in the thread calling getrenderprocesshandler? If not, this could be one of the causes of why oncontextcreated is never called.
What more changes than adding the helper applications is needed when moving from Linux to OS X? I have tried comparing my code to the cefclient application, but all the delegate wrapping/abstraction is making it hard to follow.
The main difference with my application to cefclient is that I have no NSWindow handle to any window. Is this needed in OS X for off-screen rendering to work? I tried to comment out those parts in cefclient, and it seems to be unaffected in performance.
I implement the bare minimum, as I only need it to render to the framebuffer. All my input is via websockets. I have implemented a class which subclasses CefApp, CefRenderProcessHandler, CefV8Handler. Also a class which subclasses CefRenderHandler and CefDisplayHandler.
Any ideas? Have I fallen into a well known pitfall, or is this something that needs heavy debugging?
Comparing my threads to cefclient, I seem to lack a CVDisplayLink thread. Which sounds like something I would want to have ;P
In advance, thanks for any help at all. Any help at all is highly appreciated!