1

ベクトルオブジェクトを送信する方法。udpソケット接続を介してオブジェクトの場所をベクター形式で送信しようとしています。

socket.sendto(self.cube.worldPosition,server_addr)

しかし、次のエラーが発生します:TypeError:'Vector'はバッファインターフェイスをサポートしていません

どうすればこれを達成できますか、またはオブジェクトの位置を送信する他の方法はありますか?

4

1 に答える 1

1

ベクトルの値にアクセスし、リストを作成して、pickleモジュールを使用して送信するだけです。

    ##player.worldPosition is the vector        
    x = player.worldPosition[0]
    y = player.worldPosition[1]
    z = player.worldPosition[2]                      
    xyz = [x,y,z] #forming the list
    ddd = pickle.dumps(xyz) #serialize the list
    self.socket.sendto(ddd,self.server_address) #off it goes 

これは私のために働いた

于 2013-03-25T11:07:23.290 に答える