を使用して動作するコードがあります
my_surface = pygame.image.load('some_image.png')
これは pygame サーフェスを返します。どこでも同じコードを使用したいのですが、代わりに numpy 配列を渡します。(実際には、配列または画像へのパスがあるかどうかを判断する if ステートメントを使用します。どちらの場合でも、関数は同じタイプのオブジェクト、pygame サーフェスを返す必要があります。上記を使用して既に動作しています。スクリプトが別の方法で使用されている場合、同じオブジェクトを生成する 2 つ目の方法を追加する必要があります)。
my_surface = pygame.pixelcopy.make_surface(my_array)
しかし問題は、この関数が INTEGER 配列を必要とすることです。私の配列は float32 です。そのように配列を渡すことで強制的に通過させることができます
(my_array*10000).astype(int)
しかし、後で表示すると、ゴミのように見えます (私の驚きを想像してみてください)。だから私の質問は、フロートのnumpy配列からpygameサーフェスをエレガントに作成するにはどうすればよいですか?