SketchUp Web application hangs in the Ubuntu-based OS's 16.04, 18.04, but works in the Virtualbox

bug

#1

I asked the same question on the AskUbuntu and want to duplicate it here.

I am trying to use SketchUp Web on the Ubuntu 18.04, but have a problem. When the model is bigger than the screen and is moving behind the upper border, the SketchUp hangs. Wayland or X11 doesn’t matter. Although Wayland is more responsive when he hangs. A browser doesn’t matter - Firefox , Chrome , Opera - the same behavior.

Example of the situation, prone to hanging: If I will try to move this model by the Pan tool or rotate by the Orbit tool, I will get freezing.

I have found workaround by using Windows 10 in the Virtualbox. The application works fine there. Then I try Ubuntu 18.04 in the Virtualbox - also works fine. Lubuntu 18.04 as well. But if I create the LiveUsb from these .iso files (I mean Linux distributions) and boot them on the real hardware, I get the same problem.

I have tried another distributions, non-Ubuntu based - Fedora 28 and OpenSuse 15 - no problem is observed. Neither in the VirtualBox, neither on the real hardware.

My assumptions: I think, the cause is the mesa library and have desire to compile the newer version from the source and test it. But it works on the Virtualbox , with the Virtualbox’s video driver ( vboxvideo ). And it doesn’t work with the i915 driver on the real system… What do you think? Do someone have any thoughts about solution of this problem?

GPU Information:

sudo lshw | grep -A 9 VGA

description: VGA compatible controller
product: 2nd Generation Core Processor Family Integrated Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 09
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0

Information about the OpenGL and GLX implementations running on a given X display:

glxinfo | grep version
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
    Max core profile version: 3.3
    Max compat profile version: 3.0
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.0
OpenGL core profile version string: 3.3 (Core Profile) Mesa 18.0.5
OpenGL core profile shading language version string: 3.30
OpenGL version string: 3.0 Mesa 18.0.5
OpenGL shading language version string: 1.30
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 18.0.5
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00

#2

Duplicate my answer from the AskUbuntu, because it can be helpful to someone here. If you know another solution, don’t hesitate to suggest it.

I found the simple, temporary fix, which solve the problem, but it can be better, in my opinion. The problem was hardware acceleration. And this is why the problem wasn’t appearing in the VirtualBox case, but in the case of hardware running, it was emerged.

Now, I just launch Firefox by this way: LIBGL_ALWAYS_SOFTWARE=1 firefox and hangs disappears. Other ways to disable it should exist, like disabling in the Firefox configs or similar.

LIBGL_ALWAYS_SOFTWARE - if set to true , always use software rendering

Source: Mesa Environment Variables

Explanation:

Before setting the LIBGL_ALWAYS_SOFTWARE environment variable, the hardware acceleration is used.

glxinfo | grep -i "opengl"
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Desktop 

After setting the LIBGL_ALWAYS_SOFTWARE environment variable, the hardware acceleration is disabled and software rendering is used, as in the VirtualBox.

LIBGL_ALWAYS_SOFTWARE=1 glxinfo | grep -i "opengl"
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: llvmpipe (LLVM 6.0, 256 bits)

But I don’t like this solution, because it affects all WebGL sites, but problem was in the SketchUp only. For example the BioDigital works fine with hardware acceleration and I use it often.


#3

Thanks for posting also the solution. For me SketchUp for Web runs fine with hardware acceleration (Ubuntu 18.04, Wayland, Intel Haswell i5-4210U), but the solution is invaluable if someone else also encounters issues.

Note that SketchUp for Web uses WebGL2 which has some more requirements on the graphics chip (but I think they enabled a fallback again to the WebGL1 version).