如何使用PySDL2水平(或垂直)翻转SDL2窗口的内容?

时间:2016-07-08 16:16:08

标签: python sdl-2 pysdl2

我想使用Python和PySDL2在它的垂直或水平轴中的任何一个或两个上反映SDL2窗口的全部内容。

到目前为止,我可以到达这里:

# window is an SDL_Window object created at runtime
screen_px = sdl2.ext.pixels2d(window.get_surface())
flipped = numpy.fliplr(screen_px)
screen_x_y = [1920, 1080]  # using flipped.shape also threw a seg fault
flipped_surf = numpy.zeros(screen_x_y)
flipped_surf[:] = flipped

然后我使用借用的blit()函数(使用OpenGL绘制到SDL_WINDOW对象)将flipped_surf放到窗口上,然后调用SDL {{1} }。

这似乎可以工作(它肯定会产生预期的翻转像素阵列),但是当我尝试window.swap()时,这段代码会抛出blit()(我在OS X上,我在这个问题很重要),pysdl2警告segmentation fault: 11

我对任何实现这一目标的解决方案都持开放态度。

0 个答案:

没有答案