問題タブ [pygame-surface]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - numpy 配列を pygame サーフェスに表示するには?
その一部が画像ソースを読み取り、ユーザーが操作できるように画面に表示するコードを書いています。シャープ化された画像データも必要です。以下を使用してデータを読み取り、表示しますpyGame
そして、画像は回転と反転のみで画面に表示されます。misc.imread
これはとの違いによるものpyGame
ですか? または、これは私のコードに何か問題があるためですか?
これを行う他の方法はありますか?私が読んだ解決策の大部分は、図を保存してから ``pyGame'' でそれを読むことでした。
python - pygame でスプライトを移動する
これは私のキャラクタークラスのコードです:
そして、ジョイスティックが右に動かされた場合にキャラクターを右に動かす私のゲームループのコード:
このコードは、キャラクターが単純な画像のときは正常に機能しましたが、現在は機能しません。
self.rect が初期化され、選択した座標に文字が設定されるため、混乱しています。if で char.rect[0] を使用してインクリメントしようとしましたが、それでも同じエラーが表示されます。
誰かがこれに光を当てることができますか? ありがとう。
python - インスタンスが「呼び出された」ときの戻り値
クラスで呼び出し可能な特定の関数が必要です。次のようなもの:
どの魔法の機能を使用する必要がありますか?
python - Pygame Blitting の順序と透明度
ブリッティングの順序 (私が思うに) と、衝突時に透明なバウンディング ボックスが表示されるという問題があります。
コードと問題へのリンクはこちら: https://github.com/CastleSeven/flappy-balloon/issues/1
基本的に、衝突が発生しようとしているときはいつでも、プレイヤー モデルは障害物の周囲の透明なバウンディング ボックスによって遮られます。すべてのループの背景に不透明なピクセルだけが再ブリットされるように、何を変更する必要があるのか わかりません。
バルーン ブリットが障害物ブリットの後に来るようにコードを変更すると、逆の効果が得られ、バルーンのバウンディング ボックスが障害物を遮ります。
python - Pygame 作成サーフェス
コード:
コードをより高速に実行したいので、サーフェスを作成し、それらの上に長方形をブリットして、コードを実行しpygame.display.update(taskbarrect)
て高速化できるようにします。ただし、複数のサーフェスを作成する方法がわかりません。taskbarrect=(xcoordinate, ycoordinate, width, length)
画像やテキストなどをブリットしようとしましたが、試してみるとtuple object has no attribute blit
. コードでメソッドを試すと(@elegentが提案)'pygame.Rect' object has no attribute 'blit'
、.
私は何を間違っていますか?
python - convert()/convert_alpha() が pygame.Surface で既に実行されているかどうかをどのように判断できますか?
タイトルがすべてを物語っています。pygame.Surface
複数のソースからのオブジェクトを処理する関数を作成しています。他の操作の中でも、これらの関数はSurface
、返されるオブジェクトがconvert()
少なくとも 1 回は ed (または、ユーザーの好みに応じてconvert_alpha()
ed) であることを保証します。これは、現在の表示モードでのブリッティング用にオブジェクトを最適化するために必要です。convert()
ただし、 orメソッドを不必要に実行したくはありません。これらのconvert_alpha()
メソッドはサーフェスのコピーを作成し、時間とメモリを消費するからです。それを行う必要があるかどうかは、どうすればわかりますか? S.get_flags()
before と afterの出力を見てみましたS = S.convert_alpha()
が、変わらないようです。のスカラー値S.get_alpha()
(255 から 0 に) 変更されますが、それが意味のある、または信頼できるものであるとは確信していません (また.convert()
、アルファブレンディングが望ましくない場合に必要かどうかを知るという問題は解決しません)。