How to enable Rendering a 3D Surface Graphic on Chrome - google-chrome

I have a 3D plot based on "https://plotly.com/javascript/3d-surface-plots/".
I implemented on Chrome but It show like this (https://i.stack.imgur.com/cCOm4.png)
I want to rendering the graphic as a surface like plotly. I am currently using Chrome and GPU report is in belows.
Graphics Feature Status
Canvas: Hardware accelerated
Canvas out-of-process rasterization: Disabled
Direct Rendering Display Compositor: Disabled
Compositing: Hardware accelerated
Multiple Raster Threads: Enabled
OpenGL: Enabled
Rasterization: Hardware accelerated on all pages
Raw Draw: Disabled
Video Decode: Hardware accelerated
Video Encode: Hardware accelerated
Vulkan: Disabled
WebGL: Hardware accelerated
WebGL2: Hardware accelerated
WebGPU: Hardware accelerated
Driver Bug Workarounds
clear_uniforms_before_first_program_use
decode_encode_srgb_for_generatemipmap
disable_accelerated_av1_encode
disable_vp_scaling
disable_vp_super_resolution
enable_webgl_timer_query_extensions
exit_on_context_lost
disabled_extension_GL_KHR_blend_equation_advanced
disabled_extension_GL_KHR_blend_equation_advanced_coherent
Problems Detected
Some drivers are unable to reset the D3D device in the GPU process sandbox
Applied Workarounds: exit_on_context_lost
Clear uniforms before first program use on all platforms: 124764, 349137
Applied Workarounds: clear_uniforms_before_first_program_use
Disable KHR_blend_equation_advanced until cc shaders are updated: 661715
Applied Workarounds: disable(GL_KHR_blend_equation_advanced), disable(GL_KHR_blend_equation_advanced_coherent)
Decode and Encode before generateMipmap for srgb format textures on Windows: 634519
Applied Workarounds: decode_encode_srgb_for_generatemipmap
Expose WebGL's disjoint_timer_query extensions on platforms with site isolation: 808744, 870491
Applied Workarounds: enable_webgl_timer_query_extensions
Don't use video processor scaling on non-Intel, non-NVIDIA GPUs.: 993233
Applied Workarounds: disable_vp_scaling
Don't use video processor super resolution on Intel Gen9 and older GPUs and non-Intel GPUs.: 1318380
Applied Workarounds: disable_vp_super_resolution
Disable hardware MFT Av1 encoder on machines with multiple GPUs: 1367038
Applied Workarounds: disable_accelerated_av1_encode
I am also using D3D11 graphic backend. On chrome:flags I disabled #ignore-gpu-blocklist.
I dont know much about rendering or Chrome features but could you help me about what should I do next?
Rendering as 3D surface on Chrome

Related

3d libraries like threejs or babylonjs and onboard video memory not working?

Ive used babylonjs for a demo project, then run it on a laptop without dedicated video memory and it does not show anything...its just blank screen. I know that webGL use the GPU, so is there a solution to display my project for thoose users with onboard video memory? Or I must create a fallback version?
And if so, how to detect if users video memory cant support webGL?

How to force hardware accelerated video decoding in node-webkit under Windows?

I have very simple static test page:
<body>
<video autoplay loop>
<source src='ng_full.mp4' />
</video>
</body>
When I open it in node-webkit (tested on versions 0.6.3 to 0.7.5) I get as much as twice CPU load comparing to chrome 0.29.xx and chromium 0.31 with ffmpegsumo from chrome.
I am also able to run about 8 copies of page in chrome vs 4 copies in nw.exe without video to become jerky.
Tested on Intel i5 first gen and third gen with nVidia GF9500GT and Intel HD 4600 respectively.
This also correlates with CPU loads when showing same video in MPC-HC with and w/o DXVA.
From what I make conclusion - hardware video decoding acceleration does not work in node-webkit!
I need as much as possible simultaneous videos played on single machine, and GPU decoding gives me twice more streams vs CPU decoding.
I was using builds from node-webkit github pages. Maybe custom build with appropriate switches will help?
Or maybe it is possible to force HW decoding on default build?
try adding any css shaders or webgl, it automatically forces accelerated compositing. This should give you an idea if its the video (ffmpeg) or if its actually the GPU/chrome rendering engine.
You can also force accelerated composiing with --forced-compositing-mode to chromium args within the package.json to see if that has any affect.
My gut says chrome.exe may use other licensed (but not open source) decoders with specific hardware acceleration while using ffmpeg relies on the cpu.

How can i detect hardware accleration problems in flash?

When I used full screen in as3, application opens full screen, but it completely blank. At other computers all works fine. I searched hard and found that sometimes hardware acceleration could provoke this. I turned off hardware acceleration manually (by right-click menu on flash app > settings), and app started work in full screen correctly.
How could I detect, if client have hardware acceleration turned on, and application shows him white screen? If any possibilities to fight with this problem other way?
For video hardware acceleration you should use the VideoStage class. So if you can get an instance of the StageVideo class then hardware acceleration is available. How to get this instance described here.

OpenGL usage on mobile HTML5 games

I have an HTML5 game running in desktop web browsers using WebGL. Obviously HTML5 and jscript can be built out to the mobile platform, but then what happens to the WebGL code?
I assume WebGL doesn't work very well in mobile apps.
Then how do you use OpenGL in mobile HTML5? Is there a jscript binding to OpenGL ES?
Thanks
EDIT: Just to be clear I am talking about native installed mobile apps not browsers. As in using something like PhoneGap
Nicol,
appMobi has integrated WebGL into its iOS and Android native wrappers, giving roughly 10x performance boost for HTML5 canvas drawing. appMobi is similar to PhoneGap, in building a native "wrapper" that your HTML5 lives inside, with a JS API that lets your game access all of the operating system functions. Here's a page describing the acceleration, which we call directCanvas. http://www.appmobi.com/index.php?q=content/directcanvas-accelerates-html5-game-performance
Hope this is helpful!
Roy
I assume WebGL doesn't work very well in mobile apps.
What does you make think this? WebGL has been based on OpenGL-ES 2.0, which is the OpenGL-ES profile supported by most mobile devices out there. So WebGL maps nicely to mobile devices' GPU capabilities. It's more a question of browser suppport, than performance.

Enable hardware acceleration for swf generated in Flash Builder

Is it possible to enable hardware acceleration (Level 1, Level 2) for a swf generated in Flash Builder. I donĀ“t use the Flash IDE and therefor I have no access to the "Publish Settings" in the Flash IDE? Maybe there is som compiler arguments?
http://help.adobe.com/en_US/Flash/10.0_UsingFlash/WSd60f23110762d6b883b18f10cb1fe1af6-7bcea.html
To enable the SWF file to use hardware acceleration, select one of the
following options from the Hardware Acceleration menu: Level 1 -
Direct Direct mode improves playback performance by allowing Flash
Player to draw directly on the screen instead of letting the browser
do the drawing. Level 2 - GPU In GPU mode, Flash Player utilizes the
available computing power of the graphics card to perform video
playback and compositing of layered graphics. This provides another
level of performance benefit depending on the user's graphics
hardware. Use this option when you expect that your audience will have
high-end graphics cards. If the playback system does not have
sufficient hardware to enable acceleration, Flash Player reverts to
normal drawing mode automatically. For best performance on web pages
containing multiple SWF files, enable hardware acceleration for only
one of the SWF files. Hardware acceleration is not used in Test Movie
mode. When you publish your SWF file, the HTML file that embeds it
contains a wmode HTML parameter. Choosing Level 1 or Level 2 hardware
acceleration sets the wmode HTML parameter to "direct" or "gpu"
respectively. Turning on hardware acceleration overrides the Window
Mode setting you may have chosen in the HTML tab of the Publish
Settings dialog box, because it is also stored in the wmode parameter
in the HTML file.
When you publish your SWF file, the HTML file that embeds it contains a wmode HTML parameter. Choosing Level 1 or Level 2 hardware acceleration sets the wmode HTML parameter to "direct" or "gpu" respectively. Turning on hardware acceleration overrides the Window Mode setting you may have chosen in the HTML tab of the Publish Settings dialog box
So it's my understanding that you just need to set the wmode parameter in your html, no need for any compiler options.
This link explains things in a bit more detail:
http://labs.almerblank.com/2011/03/the-wmode-embed-parameter-de-mystified/