terminalizer icon indicating copy to clipboard operation
terminalizer copied to clipboard

OpenGL error during render

Open cjayross opened this issue 5 years ago • 12 comments

When doing the command:

terminalizer render example.yml

I receive this error:

Error: 
  Error: [31871:1208/233517.072099:ERROR:buffer_manager.cc(488)] [.DisplayCompositor]GL ERROR :GL_INVALID_OPERATION : glBufferData: <- error from previous GL command


Hint:
  Use the --help option to get help about the usage

Here is my OS info:

Linux 4.19.85-1-MANJARO x86_64 GNU/Linux

I'm also running an AMD card with mesa 19.2.6-0.1

cjayross avatar Dec 09 '19 05:12 cjayross

@cjayross resolve this?

wangfpp avatar Dec 11 '19 05:12 wangfpp

I don't quite understand what I'm looking at here. Though, it seems it might actually be a result of my compositor? I have no idea.

cjayross avatar Dec 11 '19 08:12 cjayross

I have the same problem. Does someone know how to fix this?

barbossa avatar Dec 15 '19 18:12 barbossa

I've found a quick temporary solution.

  1. You need find the folder where terminalizer have been installed. In my case it was - /home/barbossa/.nvm/versions/node/v10.13.0/lib/node_modules
  2. Open terminalizer/render/index.js and before this line app.on('ready', createWindow); you need add new line: app.disableHardwareAcceleration();

After this edits, your file will be look like this:

// Hide the Dock for macOS
if (os.platform() == 'darwin') {
  app.dock.hide();
}

app.disableHardwareAcceleration(); // <-- new code line

// When the app is ready
app.on('ready', createWindow);

This option disabled GPU areacceleration, more info here https://electronjs.org/docs/api/app#appdisablehardwareacceleration.

But I think we should find more elegant solution

barbossa avatar Dec 15 '19 18:12 barbossa

Thanks, this solved the error not happening. Now however render just hangs and does not do anything.

Seems like a lot of issues trying just trying to get this to work.

lukehinds avatar Jan 01 '20 14:01 lukehinds

The tool requires a GUI os

faressoft avatar Jan 01 '20 17:01 faressoft

@faressoft What do you mean a GUI OS? That's not a thing. I was having this issue using Manjaro which uses Xorg.

cjayross avatar Jan 03 '20 04:01 cjayross

should be an option to desable hardware acceleration, don't you think? =)

ljesparis avatar Mar 14 '20 08:03 ljesparis

Thanks @barbossa for this workaround. Works for me on Linux Ubuntu :+1:

piotros avatar Apr 15 '20 14:04 piotros

The underlying issue is described here #102

And fixed on PR #97

miraclx avatar May 04 '20 19:05 miraclx

I've found a quick temporary solution.

1. You need find the folder where terminalizer have been installed. In my case it was - `/home/barbossa/.nvm/versions/node/v10.13.0/lib/node_modules`

2. Open `terminalizer/render/index.js` and before this line `app.on('ready', createWindow);` you need add new line: `app.disableHardwareAcceleration();`

After this edits, your file will be look like this:

// Hide the Dock for macOS
if (os.platform() == 'darwin') {
  app.dock.hide();
}

app.disableHardwareAcceleration(); // <-- new code line

// When the app is ready
app.on('ready', createWindow);

This option disabled GPU areacceleration, more info here https://electronjs.org/docs/api/app#appdisablehardwareacceleration.

But I think we should find more elegant solution

Every time when I was switching my node environment using nvm had to do this again and again. I wrote a 1 liner and paste it on my terminal whenever I get this error. Just thought of putting it here as this is where google search puts us when we encounter this issue.

RENDER_FILE="$(which terminalizer | sed 's|/[^/]*$||')/../lib/node_modules/terminalizer/render/index.js"; grep -c disableHardwareAcceleration $RENDER_FILE || sed -i '32i app.disableHardwareAcceleration(); // <-- new code line' $RENDER_FILE

reflexdemon avatar Aug 11 '20 10:08 reflexdemon

@Barbossa's fix worked on this issue for me, but now it's saying The display compositor is frequently crashing. Goodbye..

Waxxx333 avatar Mar 12 '22 00:03 Waxxx333

The issue appears to have been resolved and released in the new version v0.10.0 by #97. If you believe that there is still something missing or unresolved, please feel free to reopen it.

faressoft avatar Jul 08 '23 11:07 faressoft