Hello, I’m trying to use gym-unity to train custom environments on Linux. The issue I’m having is that the Linux build hangs with no output to the Player.log file whenever I try to run them with graphics (I’m using shh -Y). If I run with -nographics, then the game runs, but calls to CameraScripting::Render() fail (I assume because no graphics). I’ve also tried this with and without -Y in my connection. I don’t have any need to actually see the graphics, but the training algorithm of course needs the output.
The output I get in my Player.log is (This is with Development build on):
hi, don’t know this gym-unity yet, but i am also running unity.
Can you run and train the demos from the ml-agents project ?
I tried yesterday the headless mode (server build) - works like a charm 
The whole thing works fin on windows, but not Linux. This issue is no due to gym, even a simple hello world program hangs in Linux (and does run fine in headless mode). I cannot, however, use headless mode since I need to be able to render textures for learning.
Note that server mode doesn’t work for GridWorld on Windows or Linux. I assume this is because you can’t use Camera.Render in headless mode, has anyone seen otherwise?
Okay, so I think the problem is with remote access and OpenGL.
Specifically, it seems like when I try to run a Unity game using X forwarding it can’t be done because indirect render limits me to OpenGL 1.4. If I try to run the game in headless mode, then it fails 'cuz the call to CameraScripting::Render has a SIGABRT error.
There is a read me ( ml-agents/docs/Training-on-Amazon-Web-Service.md at main · Unity-Technologies/ml-agents · GitHub ) that seems to speak to this, but it seems to no longer be supported. Any ideas?
Okay, I got this working using the virtual server method discussed in the the above tutorial.