MrRobb / gym-rs

OpenAI Gym bindings for Rust
MIT License
60 stars 4 forks source link

Cannot render environments #43

Open stjepangolemac opened 3 years ago

stjepangolemac commented 3 years ago

I'm trying this on a MBP.

Maybe I'm doing something completely wrong. I modified the test_step test by adding a env.render(). The test fails with this error:

Caused by:
  process didn't exit successfully: `/Users/user/dev/gym-rs/target/debug/deps/gym-d47e830353331d9d 'tests::test_step' --nocapture` (signal: 6, SIGABRT: process abort signal)
↯ cargo test tests::test_step
   Compiling gym v2.2.1 (/Users/user/dev/gym-rs)
    Finished test [unoptimized + debuginfo] target(s) in 2.22s
     Running target/debug/deps/gym-d47e830353331d9d

running 1 test
2020-12-22 17:02:45.557 gym-d47e830353331d9d[19905:15804746] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'NSWindow drag regions should only be invalidated on the Main Thread!'
*** First throw call stack:
(
        0   CoreFoundation                      0x00007fff2d3bcb57 __exceptionPreprocess + 250
        1   libobjc.A.dylib                     0x00007fff662085bf objc_exception_throw + 48
        2   CoreFoundation                      0x00007fff2d3e534c -[NSException raise] + 9
        3   AppKit                              0x00007fff2a5df5ec -[NSWindow(NSWindow_Theme) _postWindowNeedsToResetDragMarginsUnlessPostingDisabled] + 310
        4   AppKit                              0x00007fff2a5c7052 -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1416
        5   AppKit                              0x00007fff2a5c6ac3 -[NSWindow initWithContentRect:styleMask:backing:defer:] + 42
        6   _ctypes.cpython-38-darwin.so        0x0000000110b8a177 ffi_call_unix64 + 79
        7   ???                                 0x000070000b05bdc0 0x0 + 123145487236544
)
libc++abi.dylib: terminating with uncaught exception of type NSException
error: test failed, to rerun pass '--lib'

Caused by:
  process didn't exit successfully: `/Users/user/dev/gym-rs/target/debug/deps/gym-d47e830353331d9d 'tests::test_step'` (signal: 6, SIGABRT: process abort signal)

Are all environments supporting rendering?

EDIT: I've just tried to render the VideoPinball one, it also crashes. Not sure why but FrozenLake works, probably because it only renders some characters to terminal.