Mor*_*789 2 python pygame network-programming pyro
我正在使用pygame和pyro在python中开发一个项目.我可以轻松地发送数据,函数,类等.但是,我不能在电线上发送表面而不会在运输途中死亡.
服务器在def __init__通过网络访问的类中创建一个表面:
self.screen = pygame.display.set_mode(SCREENRECT.size, NOFRAME)
Run Code Online (Sandbox Code Playgroud)
在服务器上,屏幕打印为Surface(800x800x32 SW),但当客户端检索时,它是Surface(Dead Display).
值得注意的是.当我使用访问器功能来获取我的屏幕时,我得到一个死显示.如果我print Player.screen用来获取变量,我会得到一个似乎是指向屏幕的pyro指针:<Pyro.core._RemoteMethod instance at 0x02B7B7B0>.也许我可以解除这个?
我很可能很厚,有没有人有一些见解?谢谢.:)
pygame Surface是底层SDL表面的包装器,我怀疑它不能被Pyro序列化.如果你想通过网络复制其内容,你最好做这样的事情:
编辑: 我刚想到我太复杂了.要序列化Surface,请使用pygame.image.tostring(),并重新加载它,使用pygame.image.fromstring().
| 归档时间: |
|
| 查看次数: |
841 次 |
| 最近记录: |