Поверхность Pygames не отображается из пикселей - PullRequest
0 голосов
/ 29 марта 2019

Поэтому я пытаюсь написать AI на Python, чтобы играть в игру Old NES Ice Climbers.Сейчас я пытаюсь настроить поверхность Pygame, чтобы python мог определять игровое поле с помощью эмулятора, но у меня возникают проблемы с его корректным рендерингом.Я использую Nintaco для эмуляции, и у них есть функция, которая возвращает все пиксели в игре в массиве, который я использую.Поскольку он не в правильном формате для Pygame, я использую функцию изменения формы в Numpy, чтобы установить правильные размеры, но он по-прежнему не отображается правильно.Мне интересно, есть ли еще значения, которые мне нужно добавить или изменить по-другому, чтобы заставить его работать правильно.Я добавил изображение того, как игра выглядит в сравнении с моей текущей поверхностью пигмея.

pygame.display.init()
window = pygame.display.set_mode((256, 240))

def display():
   bitmap = numpy.ndarray((61440,), int)
   api.getPixels(bitmap)
   bitmap = bitmap.reshape(256, 240)
   pygame.surfarray.blit_array(window, bitmap)

Пример вывода

Ссылка Nintaco для GetPixels - https://nintaco.com/javadoc/nintaco/api/API.html#getPixels-int:A-

...