OpenGL in Intel Graphics

Vale-gitVale-git Posts: 75Member

Hi,
As it is now If I try to run any godot project in a computer/laptop without GPU it fail with error.

Is there a system to make a "virtual" GPU in order to be able to make games in low rating laptop- or force godot to use cpu to emulate gpu?
I have another laptops with intel card only and wont use it to make games ( I don't mind if they are slow - also can be even better because I will be forced to optimize them)

Thank you

Best Answer

  • MegalomaniakMegalomaniak Posts: 1,669
    Accepted Answer

    Well, it seems you installed the mesa driver for your integrated gpu and not the software renderer.

    Try creating a custom login session, and make sure to have LIBGL_ALWAYS_SOFTWARE=1 in the sessions environment variables. This way you have a special login session just for working with godot using software rendering.

    In theory anyways, its been about 10 years since I last used linux as my primary system, so I have to google most of this myself here.

Answers

  • MegalomaniakMegalomaniak Posts: 1,669Admin

    https://www.mesa3d.org/README.WIN32

    After building, you can copy the above DLL files to a place in your
    PATH such as $SystemRoot/SYSTEM32. _If you don't like putting things
    in a system directory, place them in the same directory as the
    executable(s). _
    Be careful about accidentally overwriting files of
    the same name in the SYSTEM32 directory.

    Bolded part is important. You don't really want to install the .dll file system-wide.

  • Vale-gitVale-git Posts: 75Member

    @Megalomaniak said:
    https://www.mesa3d.org/README.WIN32

    After building, you can copy the above DLL files to a place in your
    PATH such as $SystemRoot/SYSTEM32. _If you don't like putting things
    in a system directory, place them in the same directory as the
    executable(s). _
    Be careful about accidentally overwriting files of
    the same name in the SYSTEM32 directory.

    Bolded part is important. You don't really want to install the .dll file system-wide.

    And for Linux? I don't want to use that OS :)

  • Vale-gitVale-git Posts: 75Member
    edited November 15

    Can be this one?
    https://01.org/linuxgraphics/blogs/kaveh/2017/introduction-intel®-graphics-linux

    I'm not sure what I need to install in linux (debian )

  • MegalomaniakMegalomaniak Posts: 1,669Admin

    Ah, typically linux users ask for this kind of advice on their respective distros community channels(and perhaps so should you) so I naturally assumed you were asking about windows.

    First step would be to look at this page to see if some precompiled libraries might already exist for your distro:
    https://www.mesa3d.org/precompiled.html

    And here:
    https://www.mesa3d.org/llvmpipe.html

    The later link includes also build instructions if no precompiled library for your distro exists, do note however the chances are high that even if your distros name doesn't indicate it, most distros are derived from either debian or fedora so one of the precompiled ones might work for yours.

  • Vale-gitVale-git Posts: 75Member
    edited November 16

    https://wiki.debian.org/Mesa
    I followed these instructions. the test - glxgears -info - went ok. But Godot still give me the same error.
    How this is possible? What I missed? Any idea?
    Thanks

    ps.: I tried Godot ver 2.1.6 and it work.

  • MegalomaniakMegalomaniak Posts: 1,669Admin

    if you run $ glxinfo | grep OpenGL in terminal whats the output? Paste here so we can see.

  • Vale-gitVale-git Posts: 75Member

    test@kalitosh:~/Desktop$ glxinfo | grep OpenGL
    OpenGL vendor string: Intel Open Source Technology Center
    OpenGL renderer string: Mesa DRI Intel(R) 965GM
    OpenGL version string: 2.1 Mesa 19.2.3
    OpenGL shading language version string: 1.20
    OpenGL extensions:
    OpenGL ES profile version string: OpenGL ES 2.0 Mesa 19.2.3
    OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16
    OpenGL ES profile extensions:
    test@kalitosh:~/Desktop$

  • MegalomaniakMegalomaniak Posts: 1,669Admin
    Accepted Answer

    Well, it seems you installed the mesa driver for your integrated gpu and not the software renderer.

    Try creating a custom login session, and make sure to have LIBGL_ALWAYS_SOFTWARE=1 in the sessions environment variables. This way you have a special login session just for working with godot using software rendering.

    In theory anyways, its been about 10 years since I last used linux as my primary system, so I have to google most of this myself here.

  • Vale-gitVale-git Posts: 75Member

    this come from another laptop where godot work fine:
    (base) vale@kalileno:~$ glxinfo | grep OpenGL
    OpenGL vendor string: Intel Open Source Technology Center
    OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Mobile
    OpenGL core profile version string: 4.2 (Core Profile) Mesa 19.2.3
    OpenGL core profile shading language version string: 4.20
    OpenGL core profile context flags: (none)
    OpenGL core profile profile mask: core profile
    OpenGL core profile extensions:
    OpenGL version string: 3.0 Mesa 19.2.3
    OpenGL shading language version string: 1.30
    OpenGL context flags: (none)
    OpenGL extensions:
    OpenGL ES profile version string: OpenGL ES 3.0 Mesa 19.2.3
    OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
    OpenGL ES profile extensions:
    (base) vale@kalileno:~$

    If I understand what is missing is that thing called "core"?

  • Vale-gitVale-git Posts: 75Member
    edited November 16

    @Megalomaniak said:
    Well, it seems you installed the mesa driver for your integrated gpu and not the software renderer.

    Try creating a custom login session, and make sure to have LIBGL_ALWAYS_SOFTWARE=1 in the sessions environment variables. This way you have a special login session just for working with godot using software rendering.

    In theory anyways, its been about 10 years since I last used linux as my primary system, so I have to google most of this myself here.

    That's working ! :)

    here the "log" from terminal:
    test@kalitosh:~/Desktop$ export LIBGL_ALWAYS_SOFTWARE=1
    test@kalitosh:~/Desktop$ cd ../Downloads/
    test@kalitosh:~/Downloads$ ./Godot_v3.2-beta1_x11.64
    Godot Engine v3.2.beta1.official - https://godotengine.org
    OpenGL ES 3.0 Renderer: llvmpipe (LLVM 9.0, 128 bits)

    Editing project: /home/test/godot/test (::home::test::godot::test)
    Godot Engine v3.2.beta1.official - https://godotengine.org
    test@kalitosh:~/Downloads$ OpenGL ES 3.0 Renderer: llvmpipe (LLVM 9.0, 128 bits)

    Running: /home/test/Downloads/Godot_v3.2-beta1_x11.64 --path /home/test/godot/test --remote-debug 127.0.0.1:6007 --allow_focus_steal_pid 2281 --position 128,100
    Godot Engine v3.2.beta1.official - https://godotengine.org
    OpenGL ES 3.0 Renderer: llvmpipe (LLVM 9.0, 128 bits)


    test@kalitosh:~/Downloads$ glxinfo | grep OpenGL
    OpenGL vendor string: VMware, Inc.
    OpenGL renderer string: llvmpipe (LLVM 9.0, 128 bits)
    OpenGL core profile version string: 3.3 (Core Profile) Mesa 19.2.3
    OpenGL core profile shading language version string: 3.30
    OpenGL core profile context flags: (none)
    OpenGL core profile profile mask: core profile
    OpenGL core profile extensions:
    OpenGL version string: 3.1 Mesa 19.2.3
    OpenGL shading language version string: 1.40
    OpenGL context flags: (none)
    OpenGL extensions:
    OpenGL ES profile version string: OpenGL ES 3.0 Mesa 19.2.3
    OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
    OpenGL ES profile extensions:
    test@kalitosh:~/Downloads$

    Perfect!

    Thank you :)

  • MegalomaniakMegalomaniak Posts: 1,669Admin

    Great, glad to hear it. :)

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file