問題タブ [pygame]
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 - 文字列に含まれる Python コードの実行
私は pygame と box2d を使用してゲーム エンジンを作成しています。キャラクター ビルダーでは、キーダウン イベントで実行されるコードを記述できるようにしたいと考えています。
私の計画は、キャラクター ビルダーにテキスト エディターを用意して、次のようなコードを記述できるようにすることでした。
テキスト エディターの内容を文字列として取得し、Character のこのメソッド内のメソッドでコードを実行します。
それを行う最善の方法は何ですか?
python - Pygame サーフェスの 1 つの側面を更新する
基本的にスケッチをスケッチするPythonで書かれたアプリケーションがあります。WASDと矢印キーでピクセルを移動すると、跡が残ります。ただし、画面上のピクセル数のカウンターを追加したいと考えています。サーフェス全体を更新せずに、ピクセル描画を pwning せずにカウンターを更新するにはどうすればよいですか?
python - Python でサーフェスの一部を更新する、または透明なサーフェス
基本的にスケッチをスケッチするPythonで書かれたアプリケーションがあります。WASDと矢印キーでピクセルを移動すると、跡が残ります。ただし、画面上のピクセル数のカウンターを追加したいと考えています。サーフェス全体を更新せずに、ピクセル描画を pwning せずにカウンターを更新するにはどうすればよいですか?
または、下の描画面が見えるように、テキスト以外は完全に透明な面を作成できますか?
graphics - Linux/X11でpygameでティアリングを回避する方法
私は(Debian / Lennyで)pygameで遊んでいます。ブリットの厄介な引き裂き(フルスクリーンまたはウィンドウモード)を除いて、うまく機能しているようです。
デフォルトのSDLX11ドライバーを使用しています。グーグルは、X11がvsync機能を提供しないことはSDLの既知の問題であり(FULLSCREEN|DOUBLEBUF|HWSURFACE
フラグで作成されたディスプレイでも)、代わりに「dga」ドライバーを使用する必要があることを示唆しています。
ただし、実行中
でpygameの初期化をスローします
(xdpyinfo
XFree86-DGA拡張機能が存在することを示していますが)。
だから:涙のないvsyncedフリップを取得するための秘訣は何ですか?このdgaを機能させるか、他のメカニズムを使用しますか?
python - ゲーム デザイン - ボーナスの処理 / ダック タイピング - python
私は現在、自分のゲーム デザインで設計上の問題に直面しています。ひどいものではありませんが、十分に気になるので、他の人の意見を聞きたいです :-)
私は現在 pygame を試しています。小さなスペース シューターを開発しましたが、いくつかのボーナスを処理したいと考えています。
現在、私は現在実装されているすべてのボーナスを派生させる抽象クラス ボーナスを持っています: プレイヤーにいくらかのヘルスを戻す「ヘルス ボーナス」、プレイヤーのヘルスを 1 に落とす「デス ボーナス」です。
私のゲームループでは、これが私がしていることです(大まかに):
そして、プレイヤーにボーナスを使うように言った直後
これまでのところはすべて問題ありませんが、プレイヤーが撃ったときに爆発して周囲の敵を殺す「爆弾ボーナス」を追加したいと思います。
この「ボーナス」は、私の抽象クラス Bonus の「use(target)」メソッドを他のものと同じように実装していますが、そのようなボーナスをプレーヤーのボーナスのリストに追加するのはちょっと悪い気がします。
ボーナスの背後にある概念は、これが「何かに何かをするもの」であるということです。以前は私のプレーヤークラスのターゲットでしたが、今ではそれほど明確ではありません...もちろん、どのボーナスがどこにあるかを検出した後に player.useBonuses() を呼び出す代わりにたとえば、ボーナスのタイプを(isinstanceを使用して)テストできましたが、ダックタイピングについて読んだすべての議論の後、なぜそれがpythonicな方法なのか、ボーナスの問題をどのように管理できるのか疑問に思っていますか?
ここまで読んでくれてありがとう、皆さんが私を助けてくれることを願っています!
よろしく
python - アウトライン化されたフォントをレンダリングする良い方法は何ですか?
私は pygame を使用して python でゲームを作成しており、画面にテキストをレンダリングする必要があります。
テキストが表示されている背景の種類を気にする必要がないように、このテキストをアウトライン付きの単色でレンダリングしたいと考えています。
pygame.font は、この種のことを直接行うためのサポートを提供していないようですが、これを達成するための良い解決策があるかどうか疑問に思っていますか?
python - Pythonで処理をエミュレート?
Python 以外の処理に似た基本的なプログラム アニメーション フレームワークを探しています。つまり、ピクセル操作が可能で、基本的な描画/色のプリミティブがあり、アニメーションに適したものです。pygame はほとんど最善の策ですか、それとも他のオプションはありますか?
python - ボードゲームシミュレーターの作成 (Python?) (Pygame?)
私は昔からのお気に入りのプログラミングに取り組み始めることにしました。私はこれまでゲームをしたことがなく、Python で大規模なプロジェクトを行ったこともありません。
ゲームは古いアバロン ヒル ゲームロシア キャンペーンです。
私はPyGameで少し遊んでいて、PyGameでこれをやろうとしない理由があり、他のエンジン/言語を求めていないかどうか疑問に思っていました.
これを構築するために Pygame を使用することの欠点は何でしょうか?
私は AI については心配していません。主に、ゲームの最小限の 2 プレーヤー バージョンを起動して実行したいだけです。ボーナスは、ゲームの状態を保存する機能と、ネットワーク経由でプレイする機能です。
このプロジェクトを開始するための「すべきこと」と「すべきでないこと」を教えていただければ幸いです。
python - Pygameとblitting:白地に白=灰色?
ヒートマップを作成するためにpygame(1.9.0rc3、ただしこれは1.8.1でも発生します)を使用しています。ヒートマップを作成するために、白い背景と非常に不透明度の低い灰色のドットが端で正確に停止する、小さな24ビットの11x11pxドットPNG画像を使用します。
ドット画像http://img442.imageshack.us/img442/465/dot.png
ドットの周りの領域は、本来あるべき完全な白、#ffffffです。ただし、pygameを使用して、BLEND_MULTを使用して画像を新しいサーフェスに複数回ブリットすると、ドットの背景が完全な白ではないかのように灰色の正方形が表示されます。これは意味がありません。
次のコードと含まれている画像は、これを再現できます。
コードを実行すると、次の画像が表示されます。
ブレンド後の結果の画像http://img263.imageshack.us/img263/4568/result.png
これが起こる理由はありますか?どうすれば回避できますか?
python - PyOpenGL+Pygameはフルスクリーンで60FPSに制限されています
私は現在pygameで書かれたゲームエンジンに取り組んでおり、OpenGLサポートを追加したいと思いました。
pygameとOpenGLを連携させる方法を確認するためのテストを作成しました。ウィンドウモードで実行すると、150〜200fpsで実行されます。フルスクリーンで実行すると(ウィンドウを設定するときにFULLSCREENフラグを追加するだけでした)、60fpsに低下します。パフォーマンスが大幅に低下したかどうかを確認するために、さらに多くの描画関数を追加しましたが、常に60fpsで実行されていました。
OpenGLにフルスクリーンで実行されていることを伝えるために何か特別なことをする必要がありますか、それともこれはOpenGLの制限ですか?
(私はWindows XPで実行しています)