in gym3/viewer.py [0:0]
def act(self, ac: Any) -> None:
super().act(ac)
image = self._get_image()
assert (
len(image.shape) == 3 and image.shape[-1] == 3
), "expected (H, W, C) RGB image with C = 3"
assert image.dtype.name == "uint8", "expected uint8 image"
while self._renderer.is_open:
keys_clicked, _ = self._renderer.start()
# render all the time in slow mode, only render once per second in fast mode
if (
not self._fast_mode
or self._renderer.get_time() - self._last_frame_time > 1
):
self._render_image(image)
if "F" in keys_clicked:
self._fast_mode = not self._fast_mode
if "P" in keys_clicked:
self._paused = not self._paused
if "O" in keys_clicked:
self._overlay_enabled = not self._overlay_enabled
if not self._paused or "S" in keys_clicked:
break