Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issues running in Windows with of_v0.9.7 #32

Open
rjx-ray opened this issue Jan 3, 2017 · 20 comments
Open

Issues running in Windows with of_v0.9.7 #32

rjx-ray opened this issue Jan 3, 2017 · 20 comments

Comments

@rjx-ray
Copy link

rjx-ray commented Jan 3, 2017

Hi,

I'm working for IglooVision and am new to both openFrameworks and CEF but I got the example running in Windows.

See attached for how I did it ( using VS2015 )
ofxCEF-Buld-Windows.txt

I resolved the speed issue by setting the ofFrameRate to 60 - it was running about 300fps.

Now some websites work well, eg https://threejs.org/examples/#webgl_geometries

But I am having problems when I type characters, eg into google search.
After every character I see several messages like this
ERROR:textbreakiteratoricu.cpp(74)] icu::BreakIterator construction failed with status 2
They don't seem to do any harm.

But then often the page freezes, I get a message saying example_ofxCEF has stopped working and I see this in the debug window:
[0103/105943:INFO:skscalercontext_win_dw.cpp(813)] y:\work\cef3_git\chromium\src\third_party\skia\src\ports\skscalercontext_win_dw.cpp:813: fatal error: "assert(false)"
Interestingly although the page freezes the framerate keeps updating in the title block and I can go to a new page with the up arrow.
It very intermittent, sometimes it works for a while, other times it crashes on the first key press.

Has anyone seen anything like this, any ideas on what could be causing it?

Thanks
Richard

@rjx-ray
Copy link
Author

rjx-ray commented Jan 9, 2017

I resolved the errors and freezes by starting afresh with a new copy of of_v0.9.7_vs_release, ofxCEF and the CEF binary.
Now its working well for me, here's my notes:

  1. Took a new copy of of_v0.9.7_vs_release and a new copy of the ofxCEF addon.
  2. Copied across the contents of cef_binary_3.2883.1540.gedbfb20_windows32 to ofxCEF/libs/CEF/win32.
  3. Ran cmake -G "Visual Studio 15" -DUSE_SANDBOX=Off from a Visual Studio command prompt in ofxCEF/libs/CEF/win32. -REQUIRES cmake V3.7.0
  4. Built ofxCEF/libs/CEF/win32/cef.sln without any problems
  5. Checked both the cefclient and cefsimple examples and they both work OK.
  6. Opened example_ofxCEF.sln and deleted the invalid ofxCEF/libs/CEF/win32/libcef_dll_wrapper.vcxproj and ZERO_CHECK projects
  7. The wrapper is now in a subfolder so added ofxCEF/libs/CEF/win32/libcef_dll_wrapper/ libcef_dll_wrapper.vcxproj
  8. Also added ofxCEF/libs/CEF/win32/ ZERO_CHECK.vcxproj
  9. Added a reference to libcef_dll_wrapper to the example_ofxCEF project
  10. Added a dependency on libcef_dll_wrapper to the example_ofxCEF project
  11. Built example_ofxCEF and got lots of 'MTd_StaticDebug' doesn't match value 'MDd_DynamicDebug' errors in ofxCEF.obj for libcef_dll_wrapper.lib
  12. Changed the C/C++ Code Generation properties for libcef_dll_wrapper to /MDd
  13. Rebuilt ofxCEF/libs/CEF/win32/cef.sln without any problems after also changing them to /MDd
  14. Rechecked both the cefclient and cefsimple examples and they both still work OK
  15. Built example_ofxCEF successfully
  16. Manually copied everything from ofxCef\libs\CEF\win32\Debug to ofxCef\example_ofxCEF\bin
  17. Manually copied everything from ofxCef\libs\CEF\win32\Resources to ofxCef\example_ofxCEF\bin
  18. Manually copied compatibility.manifest from ofxCef\libs\CEF\win32\tests\cefclient\resources\win to ofxCef\example_ofxCEF\bin\win
  19. Added the full path to ofxCef\libs\CEF\win32\tests\cefclient\resources\win\compatibility.manifest to the example_ofxCEF project properties ->Manifest Tool -> Input and Output
  20. Added the line ofSetFrameRate(60); to ofApp::setup()

Notes:
see http://magpcss.org/ceforum/viewtopic.php?f=6&t=14654&p=32920&hilit=allocator#p32920 for the need of the -DUSE_SANDBOX=Off switch
cmake 3.7.1 doesn't work !
I started with cef_binary_3.2840.1518.gffd843c_windows32 but had problems with youtube like these https://bugs.chromium.org/p/chromium/issues/detail?id=639728
updating to cef_binary_3.2883.1540.gedbfb20_windows32 resolved them but introduced this problem http://magpcss.org/ceforum/viewtopic.php?f=6&t=14721 resolved by using the manifest.
I needed to limit the ofFrameRate to allow the cef threads time to run full speed (Intel 520 graphics)
I guess someone with a better understanding of cmake for VS2015 project configuration could automate the manual configuration and copies.

@Echolaitoc
Copy link

Not sure how to do these steps with CMake, but you can add a post build event in your Visual Studio solution to copy the relevant *.dll and *.pak files.
Go to your project's Configuration Properties/Build Events/Post-Build Event/Command Line, replace the openframeworks stuff with:

echo on
        dir
        robocopy "$(ProjectDir)../../../addons/ofxCef/libs/CEF/win32/$(Configuration)/" "$(ProjectDir)bin/" "*.dll" "*.bin" /njs /njh /np /fp /bytes
        robocopy "$(ProjectDir)../../../addons/ofxCef/libs/CEF/win32/Resources/" "$(ProjectDir)bin/" "*.pak" /E /njs /njh /np /fp /bytes
        robocopy "$(OF_ROOT)/export/vs/$(Platform_Actual)/" "$(ProjectDir)bin/" "*.dll" /njs /njh /np /fp /bytes
if errorlevel 1 exit 0 else exit %errorlevel%

@rjx-ray
Copy link
Author

rjx-ray commented May 3, 2017

I recently updated from cef_binary_3.2840.1518.gffd843c_windows32 to cef_binary_3.2987.1601.gf035232_windows32 to get flash working and that has made a massive difference. No more crashes on exit and everything seems to run faster and more smoothly.
I built cef in a new folder in exactly the same way as before.
I'm now not including the cef library build in my solution, once its built its built and you just need to reference the includes and libraries
By the way, I did include the copies in the post build events and they worked perfectly, thanks Echolaitoc.

@razvanilin
Copy link

I tried all the steps above with no luck to get it running. I'm using Windows 10 and Visual Studio 2015

The example builds fine and I can run it but I get the following errors in the console:

[0503/152014.386:ERROR:gles2_cmd_decoder.cc(15368)] Context lost because SwapBuffers failed.
[0503/152014.387:ERROR:gles2_cmd_decoder.cc(5282)] Error: 5 for Command kPostSubBufferCHROMIUM
[0503/152014.387:ERROR:gpu_channel_manager.cc(218)] Exiting GPU process because some drivers cannot recover from problems.
[0503/152014.392:FATAL:url_util.cc(490)] Check failed: !scheme_registries_locked. Trying to add a scheme after the lists have been locked.
[0503/152014.392:FATAL:dwrite_font_proxy_init_win.cc(88)] Check failed: fallback_available == base::win::GetVersion() > base::win::VERSION_WIN8 (1 vs. 0)
[0503/152014.637:ERROR:gles2_cmd_decoder.cc(15368)] Context lost because SwapBuffers failed.
[0503/152014.638:ERROR:gles2_cmd_decoder.cc(5282)] Error: 5 for Command kPostSubBufferCHROMIUM
[0503/152014.638:ERROR:gpu_channel_manager.cc(218)] Exiting GPU process because some drivers cannot recover from problems.
[0503/152014.644:FATAL:url_util.cc(490)] Check failed: !scheme_registries_locked. Trying to add a scheme after the lists have been locked.
[0503/152014.884:ERROR:gles2_cmd_decoder.cc(15368)] Context lost because SwapBuffers failed.
[0503/152014.884:ERROR:gles2_cmd_decoder.cc(5282)] Error: 5 for Command kPostSubBufferCHROMIUM
[0503/152014.884:ERROR:gpu_channel_manager.cc(218)] Exiting GPU process because some drivers cannot recover from problems.
[0503/152014.891:FATAL:url_util.cc(490)] Check failed: !scheme_registries_locked. Trying to add a scheme after the lists have been locked.
[0503/152015.101:ERROR:browser_gpu_channel_host_factory.cc(125)] Failed to create channel.
[0503/152015.118:ERROR:browser_gpu_channel_host_factory.cc(125)] Failed to create channel.
[0503/152015.135:ERROR:browser_gpu_channel_host_factory.cc(125)] Failed to create channel.
[0503/152015.152:ERROR:browser_gpu_channel_host_factory.cc(125)] Failed to create channel.
[0503/152015.168:ERROR:browser_gpu_channel_host_factory.cc(125)] Failed to create channel.

After a couple of seconds the application window becomes pink and then the example_ofxCEF_Debug.exe crashes and I'm left with that pink window that becomes white if I resize it. I then try to close the application and it crashes again.

@razvanilin
Copy link

capture

@rjx-ray
Copy link
Author

rjx-ray commented May 3, 2017

I never saw anything like that. Do the cefclient and cefsimple examples run OK?

@razvanilin
Copy link

Yea they both work fine.

@rjx-ray
Copy link
Author

rjx-ray commented May 3, 2017

If you are not already using it, may be worth trying cef_binary_3.2987.1601.gf035232_windows32

@razvanilin
Copy link

Ok, so apparently it was an issue with the latest CEF build. I tried the one you pointed out and it worked. The only issue is that it crashes every time I close the application. Will look more into it. Thanks for the help

@rjx-ray
Copy link
Author

rjx-ray commented May 3, 2017

I guess I just got lucky with that, it was the latest at the time I rebuilt

@ofZach
Copy link
Owner

ofZach commented May 3, 2017

@razvanilin if it's crashing on exit can you check that the main.cpp looks similar to the one in the example ? I think the order of creation of CEF / OF is important to prevent a crash on exit IIRC....

@rjx-ray
Copy link
Author

rjx-ray commented May 4, 2017

To prevent crash on exit you need to call cefshutdown() at the end of main after ofRunApp returns.

I've made a fork which should run out of the box for Visual Studio / win32 at https://github.com/rjx-ray/ofxCef.

there are also a few other improvements

I've created a pull request to merge it in

@razvanilin
Copy link

Thanks @rjx-ray. Works perfectly now and managed to integrate the addon with my main project too. The problem now is the performance. I'm getting really low framerates. Will investigate this next week

@michaelbaisch
Copy link

I've been also trying to get it working on windows. Pages are loading and I'm able to interact with them but I see some weird messages in the console:

  1. Shortly after the gpu-process launches I see this message in the console:
[0523/102245.817:ERROR:media_foundation_video_encode_accelerator_win.cc(358)] Couldn't activate hardware encoder, HRESULT: 0x800401f0
[0523/102245.821:ERROR:mf_helpers.cc(12)] Error in dxva_video_decode_accelerator_win.cc on line 358
[0523/102245.837:ERROR:media_foundation_video_encode_accelerator_win.cc(477)] Couldn't set output media type, HRESULT: 0xc00d36b4
[0523/102245.843:ERROR:mf_helpers.cc(12)] Error in dxva_video_decode_accelerator_win.cc on line 477
  1. When I browse around I see a bunch of those messages:
[0523/102249.380:ERROR:gles2_cmd_decoder.cc(2475)] [.RenderCompositor-00000000045A94D0]GL ERROR :GL_INVALID_OPERATION : GLES2DecoderImpl::DoBindTexImage2DCHROMIUM: <- error from previous GL command
  1. Opening this page with WebGL makes the console spit out code of shaders.
[0523/121446.683:WARNING:angle_platform_impl.cc(41)] rx::HLSLCompiler::compileToBinary(220): 
float vec1(int x0)
{
    return float(x0);
}
float4 vec4(float3 x0, float x1)
{
    return float4(x0, x1);
}
int ivec1(float x0)
{
    return int(x0);
}
// Uniforms

…

PS_OUTPUT main(PS_INPUT input)
{
    _webgl_f3dc91287c75292f[0] = input.v0;
    _webgl_b41cf3846d5dbb33 = input.v1.xyz;

    gl_main();

    return generateOutput();
}

[0523/121446.824:WARNING:angle_platform_impl.cc(41)] rx::HLSLCompiler::compileToBinary(221): 
C:\fakepath(86,7-104): warning X3557: loop only executes for 1 iteration(s), consider removing [loop]
C:\fakepath(61,12-86): warning X3595: gradient instruction used in a loop with varying iteration; partial derivatives may have undefined value
C:\fakepath(61,12-86): warning X3595: gradient instruction used in a loop with varying iteration; partial derivatives may have undefined value
C:\fakepath(61,12-86): warning X3595: gradient instruction used in a loop with varying iteration; partial derivatives may have undefined value

I've been running this in a virtual machine (VMware Fusion) but also used bootcamp directly. The messages seem to be similar in both environments. The problem I'm having with the virtual machine is that opening a page with webGL seems to crash the gpu-process. The 3d world appears and I can interact with it for a split second and then it's gone, the console tells me this:

[0523/121447.787:FATAL:feature_info.cc(1523)] Check failed: ::gl::g_current_gl_context_tls->Get()->Api->glGetErrorFn() == static_cast<GLuint>(0x0) (1282 vs. 0)
[0523/121447.901:ERROR:command_buffer_proxy_impl.cc(234)] Failed to send GpuChannelMsg_CreateCommandBuffer.
[0523/121447.902:ERROR:context_provider_command_buffer.cc(262)] GpuChannelHost failed to create command buffer.
[0523/121447.909:ERROR:gpu_process_transport_factory.cc(932)] Lost UI shared context.

And then a new gpu-process is launched.


I've tested all this with the cefclient example and it behaves the same way even without offscreen rendering. But opening this page in chromium works in all cases perfectly, so it must be possible to get it to work…


Also I've tried messing around with the command line switches. Without much luck, most of them don't seem to change a lot. But I've been also noticing that the switches on windows are a bit different than those on macOS. As a reference:

macOS renderer (From main() in process_helper_mac.cpp)

--type=renderer 
--disable-databases 
--primordial-pipe-token=BE21B78AAC821BECF993EB788ABA2C47 
--lang=en-US 
--lang=en-US 
--log-file=*path*
--enable-pinch 
--num-raster-threads=4 
--enable-zero-copy 
--enable-gpu-memory-buffer-compositor-resources 
--enable-main-frame-before-activation 
--content-image-texture-target=0,0,3553;0,1,3553;0,2,3553;0,3,3553;0,4,3553;0,5,3553;0,6,3553;0,7,3553;0,8,3553;0,9,3553;0,10,34037;0,11,34037;0,12,34037;0,13,3553;0,14,3553;0,15,3553;1,0,3553;1,1,3553;1,2,3553;1,3,3553;1,4,3553;1,5,3553;1,6,3553;1,7,3553;1,8,3553;1,9,3553;1,10,34037;1,11,34037;1,12,34037;1,13,3553;1,14,3553;1,15,3553;2,0,3553;2,1,3553;2,2,3553;2,3,3553;2,4,3553;2,5,3553;2,6,3553;2,7,3553;2,8,3553;2,9,3553;2,10,34037;2,11,34037;2,12,34037;2,13,3553;2,14,3553;2,15,3553;3,0,3553;3,1,3553;3,2,3553;3,3,3553;3,4,3553;3,5,34037;3,6,3553;3,7,3553;3,8,3553;3,9,3553;3,10,3553;3,11,3553;3,12,34037;3,13,3553;3,14,34037;3,15,34037;4,0,3553;4,1,3553;4,2,3553;4,3,3553;4,4,3553;4,5,34037;4,6,3553;4,7,3553;4,8,3553;4,9,3553;4,10,3553;4,11,3553;4,12,34037;4,13,3553;4,14,34037;4,15,34037 
--service-request-channel-token=BE21B78AAC821BECF993EB788ABA2C47 
--renderer-client-id=3 

macOS gpu-process

--type=gpu-process 
--lang=en-US 
--log-file=/Users/mmbr-19/Library/Logs/cef-testDebug_debug.log 
--supports-dual-gpus=true 
--gpu-driver-bug-workarounds=1,10,23,25,47,63,65,66,68,74,76,84,85,89,92 
--disable-gl-extensions=GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent 
--gpu-vendor-id=0x1002 
--gpu-device-id=0x6821 
--gpu-driver-vendor 
--gpu-driver-version 
--gpu-driver-date 
--gpu-secondary-vendor-ids=0x8086 
--gpu-secondary-device-ids=0x0d26 
--gpu-active-vendor-id=0x1002 
--gpu-active-device-id=0x6821 
--lang=en-US 
--log-file=/Users/mmbr-19/Library/Logs/cef-testDebug_debug.log 
--service-request-channel-token=A1FA106CC2A9A833DD864D818497B553

windows renderer (From OnBeforeCommandLineProcessing() in ofxCEFClientApp.h)

--type=renderer 
--no-sandbox 
--disable-databases 
--primordial-pipe-token=4884A1EF5ABC8BE62923D436AE3ADC7C 
--lang=en-US 
--lang=en-US 
--log-file=*path*
--enable-pinch 
--device-scale-factor=1 
--num-raster-threads=1 
--content-image-texture-target=0,0,3553;0,1,3553;0,2,3553;0,3,3553;0,4,3553;0,5,3553;0,6,3553;0,7,3553;0,8,3553;0,9,3553;0,10,3553;0,11,3553;0,12,3553;0,13,3553;0,4,3553;0,15,3553;1,0,3553;1,1,3553;1,2,3553;1,3,3553;1,4,3553;1,5,3553;1,6,3553;1,7,3553;1,8,3553;1,9,3553;1,10,3553;1,11,3553;1,12,3553;1,13,3553;1,14,3553;1,15,3553;2,0,3553;2,1,3553;2,2,3553;2,3,3553;2,4,3553;2,5,3553;2,6,3553;2,7,3553;2,8,3553;2,9,3553;2,10,3553;2,11,3553;2,12,3553;2,13,3553;2,14,3553;2,15,3553;3,0,3553;3,1,3553;3,2,3553;3,3,3553;3,4,3553;3,5,3553;3,6,3553;3,7,3553;3,8,3553;3,9,3553;3,10,3553;3,11,3553;3,12,3553;3,13,3553;3,14,3553;3,15,3553;4,0,3553;4,1,3553;4,2,3553;4,3,3553;4,4,3553;4,5,3553;4,6,3553;4,7,3553;4,8,3553;4,9,3553;4,10,3553;4,11,3553;4,12,3553;4,13,3553;4,14,3553;4,15,3553 
--service-request-channel-token=4884A1EF5ABC8BE62923D436AE3ADC7C 
--renderer-client-id=3 
--mojo-platform-channel-handle=1528 /prefetch:1 
-off-screen-rendering-enabled 
-disable-d3d11 
-enable-begin-frame-scheduling

windows gpu-process

--type=gpu-process 
--no-sandbox 
--lang=en-US 
--log-file="C:\Users\User\Projects\of_v0.9.8_vs_release\apps\NO_THING\cef-test\bin\debug.log" 
--disable-direct-composition 
--supports-dual-gpus=false 
--gpu-driver-bug-workarounds=7,10,18,19,20,23,41,74 
--disable-gl-extensions="GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent" 
--gpu-vendor-id=0x15ad 
--gpu-device-id=0x0405 
--gpu-driver-vendor="VMware, Inc." 
--gpu-driver-version=8.15.1.50
--gpu-driver-date=12-13-2016 
--lang=en-US 
--log-file=*path*
--service-request-channel-token=E731774BA4AFE3E4A88C1E9F1E723374 
--mojo-platform-channel-handle=1148 /prefetch:2

@rjx-ray
Copy link
Author

rjx-ray commented May 25, 2017

Hi Michael, I'm not seeing any of these weird console messages and mrdoobs works OK for me. But I just have on chip intel 520 graphics so maybe that's the difference?
I'm intrigued by the GPU settings, how do you find them on Windows?

I do get this console message though:
ERROR:child_thread_impl.cc(762)] Request for unknown Channel-associated interface: ui::mojom::GpuMain
This is a known bug in chrome 57 https://bugs.chromium.org/p/chromium/issues/detail?id=706306 fixed in chrome 58.
I'm hesitant to change my working version of cef , but I think I may just try the latest which uses chrome 58

@rjx-ray
Copy link
Author

rjx-ray commented May 25, 2017

Haven't tried working in a VM, I have real windows machine.

@michaelbaisch
Copy link

@rjx-ray I've tried the latest cef build from here CEF 3.3029.1619 64Bit which uses chrome 58. Basically it's working I'm just worried about those massages, and it would be great if it would work in a VM. So please go ahead and try the newest build and tell me if you see similar things.

Oh and I also forgot to mention that I'm on Windows 8.1 with Visual Studio 2015. Your cmake command cmake -G "Visual Studio 15" suggests that you're running VS 2017, is that correct? (14 would be 2015).

Do you mean with "GPU settings" the gpu-process arguments? If so, I also obtained them like the arguments for the renderer process from OnBeforeCommandLineProcessing() in ofxCEFClientApp.h.
I basically just added this in there for debugging purposes:

printf("Args (OnBeforeCommandLineProcessing): %s", command_line->GetCommandLineString().ToString().c_str());

@rjx-ray
Copy link
Author

rjx-ray commented May 29, 2017

@michaelbaisch OK I've tried that build with the ofxCef addon example. After getting everything converted from win32 to win64 it builds and runs mrdoobs nicely.
I see this in the console window

Reshape: 1400 - 850
Receive an event from CEF > Content loaded with HTTP Status Code: 0
[0529/094416.979:ERROR:gles2_cmd_decoder.cc(6180)] [.Offscreen-For-WebGL-0000000004D5F9C0]GL ERROR :GL_INVALID_OPERATION : glGenerateMipmap: Can not generate mips
[0529/094417.172:WARNING:angle_platform_impl.cc(41)] rx::HLSLCompiler::compileToBinary(220):
float vec1(int x0)
{
    return float(x0);
}
float4 vec4(float3 x0, float x1)
{
    return float4(x0, x1);
}
int ivec1(float x0)
{
    return int(x0);
}
// Uniforms

uniform float4x4 _webgl_11d5c59b099a10a2 : register(c0);

followed by maybe 100+ more lines of open GL code
Then finally I get this

Receive an event from CEF > Content loaded with HTTP Status Code: 200
Receive an event from CEF > Content loaded with HTTP Status Code: 200
[0529/094418.236:ERROR:render_process_host_impl.cc(2113)] Request for unknown Channel-associated interface: device::mojom::ScreenOrientationListener

It doesn't seem to do any harm, everything runs OK

Then I tried it with my own app which draws several browsers into a FBO and I get

[0529/095017.836:FATAL:dwrite_font_proxy_init_win.cc(88)] Check failed: fallback_available == base::win::GetVersion() > base::win::VERSION_WIN8 (1 vs. 0)

and it crashes with the Windows message that its stopped working. No web pages are drawn.
Maybe something to do with the switch from win32 to win64 and I've missed something?

Oh, and I'm using VS 2015 with cmake V3.7.0 which generates the 2014 build correctly with cmake -G "Visual Studio 15". That was the advice when I first started on this last year. I should probably revisit that now.

I'm running Windows 10 on a i7-6600U with intel 520 graphics

@rjx-ray
Copy link
Author

rjx-ray commented May 29, 2017

I now have my own app running - it was just the manifest needed in the x64 properties.
most web pages are good, but the liquid voxel example doesn't work now.
I see the same stuff as above in the console window followed by lots of these

C:\fakepath(48,12-37): warning X3570: gradient instruction used in a loop with varying iteration, attempting to unroll the loop

and then

[0529/132813.685:ERROR:render_process_host_impl.cc(2113)] Request for unknown Channel-associated interface: device::mojom::ScreenOrientationListener
[0529/132813.686:ERROR:render_process_host_impl.cc(2113)] Request for unknown Channel-associated interface: device::mojom::ScreenOrientationListener
[0529/132813.838:FATAL:feature_info.cc(1523)] Check failed: ::gl::g_current_gl_context_tls->Get()->Api->glGetErrorFn() == static_cast<GLuint>(0x0) (1280 vs. 0)
[0529/132813.891:ERROR:command_buffer_proxy_impl.cc(234)] Failed to send GpuChannelMsg_CreateCommandBuffer.
[0529/132813.891:ERROR:command_buffer_proxy_impl.cc(234)] Failed to send GpuChannelMsg_CreateCommandBuffer.
[0529/132813.891:ERROR:context_provider_command_buffer.cc(262)] GpuChannelHost failed to create command buffer.
[0529/132813.892:ERROR:context_provider_command_buffer.cc(262)] GpuChannelHost failed to create command buffer.
[0529/132813.894:ERROR:gpu_process_transport_factory.cc(932)] Lost UI shared context.

other webGL pages such as http://mrdoob.com/#/157/spin_painter and https://threejs.org/examples/#webgl_geometries work OK

@michaelbaisch
Copy link

I finally had a bit of time to test this again. I've updated to the newest version CEF 3.3071.1644.g408afd1 / Chromium 59.0.3071.109. I tested http://mrdoob.com/#/137/voxels_liquid and https://threejs.org/examples/#webgl_animation_cloth. In bootcamp both of them run, in the virtual machine the threejs examples run but the voxel example doesn't. The logs from the voxel example in my virtual machine has some similarities to yours:

…
[0629/113653.909:FATAL:feature_info.cc(1529)] Check failed: ::gl::g_current_gl_context_tls->Get()->Api->glGetErrorFn() == static_cast<GLuint>(0x0) (1282 vs. 0)
[0629/113654.035:ERROR:command_buffer_proxy_impl.cc(231)] Failed to send GpuChannelMsg_CreateCommandBuffer.
[0629/113654.035:ERROR:context_provider_command_buffer.cc(262)] GpuChannelHost failed to create command buffer.
[0629/113654.099:ERROR:media_foundation_video_encode_accelerator_win.cc(478)] Couldn't set output media type, HRESULT: 0xc00d36b4
[0629/113654.099:ERROR:mf_helpers.cc(12)] Error in dxva_video_decode_accelerator_win.cc on line 478
[0629/113654.130:ERROR:gles2_cmd_decoder.cc(17652)] [.DisplayCompositor-000000E9091956F0]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[0629/113654.146:ERROR:gles2_cmd_decoder.cc(9709)] [.DisplayCompositor-000000E9091956F0]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
…

I'm thinking about opening an issue for this in the cef project itself. Because the cefclient example behaves exactly the same way.

But I would say in general it works, there might be a problem with some specific webGL examples.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants