P2D/P3D sketches won’t start on Ubuntu 20.04

This looks similar to an older issue: [SOLVED] P2D/P3D sketches won't start on fresh Ubuntu 18.04 installation

Profile GL4bc is not available on X11GraphicsDevice[type .x11, connection :0.0, unitID 0, handle 0x7f74d401d970, owner true, ResourceToolkitLock[obj 0x1524728a, isOwner true, <111bf4f6, 541978b1>[count 1, qsz 0, owner <main-FPSAWTAnimator#00-Timer0>]]], but: [GLProfile[GL4ES3/GL4.hw], GLProfile[GL2ES2/GL4.hw], GLProfile[GL4/GL4.hw], GLProfile[GL4/GL4.hw], GLProfile[GL3/GL4.hw], GLProfile[GL2GL3/GL4.hw]]

I wonder if anyone else is experiencing it and I might try to find/file an issue…

This seems relevant but I don’ t understand enough to act on it:

Hardware is a Lenovo V310 with HD Graphics 620:

$ glxinfo -B
name of display: :0.0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Intel (0x8086)
    Device: Mesa Intel(R) HD Graphics 620 (KBL GT2) (0x5916)
    Version: 20.0.4
    Accelerated: yes
    Video memory: 3072MB
    Unified memory: yes
    Preferred profile: core (0x1)
    Max core profile version: 4.6
    Max compat profile version: 4.6
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.2
OpenGL vendor string: Intel
OpenGL renderer string: Mesa Intel(R) HD Graphics 620 (KBL GT2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 20.0.4
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6 (Compatibility Profile) Mesa 20.0.4
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile

OpenGL ES profile version string: OpenGL ES 3.2 Mesa 20.0.4
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

Opened an issue: https://github.com/processing/processing/issues/6061

1 Like

There is this workaround I found reading the older related issue:

void settings() {
System.setProperty("jogl.disable.openglcore", "true");
size(400, 400, P3D);

false as in

System.setProperty("jogl.disable.openglcore", "false");

also works!

But there is no System in Python Mode so I’m out of luck for now :frowning:

from java.lang import System

OPENGL_CORE_PROP = 'jogl.disable.openglcore'
BOOL = 'true'

print System.getProperty(OPENGL_CORE_PROP)
System.setProperty(OPENGL_CORE_PROP, BOOL)
print System.getProperty(OPENGL_CORE_PROP)

def settings():
    size(400, 400, P3D)

def setup():
    print g.OPENGL_VENDOR
    print g.OPENGL_VERSION
    print g.GLSL_VERSION

Oh! Thank you so much! @GoToLoop as usual saves the day! :smiley:
I tried some clumsy java imports and gave up!

Profile GL4bc is not available on X11GraphicsDevice[type .x11, connection :0, unitID 0, handle 0x7fd0f40227c0, owner true, ResourceToolkitLock[obj 0x62851b75, isOwner true, <27878941, 24f938ec>[count 1, qsz 0, owner <main-FPSAWTAnimator#00-Timer0>]]], but: [GLProfile[GLES1/GLES1.hw], GLProfile[GLES2/GLES3.hw], GLProfile[GL2ES1/GLES1.hw], GLProfile[GL4ES3/GL4.hw], GLProfile[GL2ES2/GL4.hw], GLProfile[GL4/GL4.hw], GLProfile[GLES3/GLES3.hw], GLProfile[GL4/GL4.hw], GLProfile[GL3/GL4.hw], GLProfile[GL2GL3/GL4.hw]]

Hi @sinistergeek,

I didn’t understand you. Is this an error message?
Which mode are you working with, Java or Ptyhon, and what is your system like?
I could make it work both on Java an Python with the tips from this thread.


Thanks for the Reply!! Well i managed to solved it

1 Like

My original issue was closed as duplicate of https://github.com/processing/processing/issues/5476, but I’m a bit worried this is not going forward :frowning:

It got worse today (trying to track if there was some mesa driver update on my system yesterday), the System.setProperty("jogl.disable.openglcore", "true"); workaround doesn’t work anymore and I can’t work on P3D or P2D sketches on my machine.

UPDATE: after some driver updates, the workaround works again :slight_smile: