問題タブ [pysdl2]

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.

0 投票する
2 に答える
2920 参照

eclipse - pySDL2をインストールした後のSDL2のRuntimeError

次の方法でpySDL2 0.4.1をインストールしました。

と入力して、ソース パッケージをダウンロードしますpython setup.py install。次に、コピーペーストされた PyDev Eclipse の「The Pong Game: Getting Started」チュートリアル コード例を実行しようとしました。

os、sysのインポート

次のエラーが発生しました。

Synaptic経由でPypyとlibSDLの両方をインストールしており、PyDev - PythonPathに追加された外部ライブラリはありません。

私は何を間違っていますか?

0 投票する
2 に答える
2645 参照

python - RuntimeError: could not find any library for SDL2_ttf

I have a problem with pysdl2. I'm trying to launch examples from site-packages\sdl2\examples and see this error:

#xA;

But files which don't use sdl2_ttf (such as sdl2hello.py) work correctly and without errors. I have no idea how to solve it.

Additional info: WinXP SP3 32bit

0 投票する
3 に答える
2079 参照

python - 画面へのブリッティングのために cv2 画像を PySDL2 サーフェスに変換する

新しい PySDL2 パッケージを使用して、既存の OpenCV コードとのインターフェイスを試みています。cv2 python インターフェイスを介して Web カメラからキャプチャした画像を OpenCV に取り込み、PySDL2 を使用して画面上のウィンドウに表示したいと考えています。cv2 画像形式を PySDL2 サーフェスに適切に変換する方法を理解したと思いますが、以下のコードの最後に表示されるのは黒いウィンドウだけです。私がどこで失敗したかについての指針は大歓迎です!

0 投票する
1 に答える
2660 参照

python - Cython + ctypes?

現在Cython、いくつかのネットワーキングおよび DB ライブラリへのバインディングを作成するために使用しています。も使用したいのですSDLが、バインディングにPySDL2使用します。インタプリタ全体ですが、ctypes単なるライブラリです。しかし、ほとんどの場合、互いの代替として描かれています。したがって、互換性があるかどうかはまったくわかりません。CythonctypesCythonctypes

では、質問: とを 1 つのプロジェクトCythonで一緒に使用することは可能ですか?ctypes

0 投票する
2 に答える
1346 参照

python - PySDL2 と SDL_GetKeyboardState

PySDL2 (現在のバージョンは 0.7.0; source / documentation ) 経由で SDL を学習しようとしています。SDL のすべての通常の関数 (だと思います) にctypes Python ラッパーを提供し、そのsdl2.extパッケージを介してさらにいくつかの Pythonic 関数を提供して、核心を処理し、結果を Python 型で返します。たとえば、sdl2.ext.get_events()を呼び出しsdl2.SDL_PumpEvents()てから、キューのすべてのイベントを覗いて、それらを Python リストとして返します。

ただし、そのような便利な関数が存在するかどうかはわかりませんSDL_GetKeyboardState()。関数の公式SDL Wiki ドキュメントでは、次のように定義されています。

ここで、numkeys は null の場合があり (それ以外の場合は、返された配列の長さを受け取る)、返された Uint8* は、SDL_Scancode 値でインデックス付けされたキー状態の配列へのポインターであり、キーが押されている場合は 1、押されている場合は 0 を保持します。です。

PySDL2 は を介し​​て SDL_GetKeyboardState を直接呼び出しsdl2.keyboard.SDL_GetKeyboardState(numkeys)ますが、すぐには役に立たない ctypes 値を返します。

だから私の質問は、PySDL2 を介して現在の SDL キーボードの状態を取得するための Pythonic 関数が他にありますか? 存在する場合、それは何で、どのように使用する必要がありますか? ない場合は、提出する必要がありますか?

参考までに、私はこの機能を自分で実現する方法を考え出したと思いますが、ctypes の大まかな洗礼だったので、何かを台無しにした可能性があります。

0 投票する
1 に答える
1754 参照

python - SDL2 ピクセル グラフィックス パイプライン

私はSDL/SDL2を初めて使用し、C/C++の経験がほとんどなく、pygame、pyglet、およびPySideの経験があり、より高速な処理の代替手段を見つけることを期待してPySDL2を試しています. 処理は描画用ですが、直接ピクセルを動作させるための簡単な APIがあります。

私は昨日 PySDL2 を使い始め、単純な発砲アルゴリズムを実装するためのボイラープレート コードを 1 日中書きました。1日だけ…と笑う人もいるかもしれませんが、1日で何かを描けることがグラフィックスライブラリにとって重要だと思います。私の問題は C/C++ の経験が乏しく、関連する PySDL2 API はほとんどが C API に直接マッピングされているため、C ベースの用語と仕様の詳細を掘り下げるのは本質的に困難です。SDL2 のグラフィックス パイプラインに関する簡単な概要を見つけるのをあきらめました。

グラフィックス パイプラインは、バイトや整数が最終的に画面上のピクセルになるパスです。ほんの一例として、OpenGL の概要図がここにあります - http://duriansoftware.com/joe/An-intro-to-modern-OpenGL.-Chapter-1:-The-Graphics-Pipeline.html - そして私はSDL2 のパイプラインの詳細図を探しています。

SDL2 でピクセルがどのように描画されるかを理解する上での主な問題は、SDL2 API がこの低レベルの詳細を隠す便利なヘルパーを提供することです。ビットマップをロードしてサーフェスを取得するように。次に、サーフェスをテクスチャに移動します。次に、SDL2 は何らかの方法でテクスチャをビデオ メモリに移動します。次に、GPU にそれを画面に表示するように指示します。これは私がそれをどのように理解したかではありませんが、それが言及されている場所を提供できるリンクはありません. つまり、次のとおりです。

私のアプリケーションでは、これは毎秒 25 回実行する必要があります。Python で書いているので、どこを最適化するかを決定するためにパイプラインを知る必要があります。しかし、パイプラインが正しいかどうか確信が持てず、API 内で少し迷っています。多くのヘルパーがあり、計算されたピクセル データがどのように見えるか、どのように見えるべきかという出発点さえありません。

だから私は知る必要があります:

  1. SDL2 がサポートする入力データの種類は何ですか (bmp、メモリ ポインタなど)
  2. 入力が変換される中間データ形式はありますか
  3. データ変換チェーンとは
  4. 変換チェーンの制御方法
  5. SDL2 がサポートする出力の種類は何ですか

  6. PySDL2 でどのように見えるか

誰かが反対票を投じたこの質問もあり、混乱しているのは私だけではないことを教えてくれます。

アップデート:

@Ancurio で指摘されているように、すでにピクセルの配列とデータの配列にあるサーフェス オブジェクトなので、図を変更して、サーフェスがピクセル配列であるという定義を提供します。

つまり、基本的にサーフェスは 1. ピクセル データを含む連続メモリ チャンク、2. ピクセルに関する情報です。ビットマップは、ディスクまたはイメージからロードするピクセル配列でもあります。しかし、SDL2 はそれを直接使用することはできません。なんで?

パイプラインの最初のステップの問題は、int およびビットマップ ピクセルがサーフェス ピクセルにどのように変換されるか、およびサーフェスがビットマップとどのように異なるかということです。私はPythonを使用していますが、明らかな直接メモリアクセスがなく、オプションが何であるかを理解する必要があります。

0 投票する
1 に答える
1066 参照

macos - mac os x 10.9 で pySDL2 をセットアップする際の問題

OSX 10.9 を実行している macbook pro で PySDL2 をセットアップするのに問題があります。SDL 2.0.1 をダウンロードしてインストールしました。ここで PySDL2 チュートリアルを実行しようとしています: http://pysdl2.readthedocs.org/en/latest/integration.html

「SDL2 ライブラリのディレクトリを指す環境変数 PYSDL2_DLL_PATH を設定することも可能です」と表示された場合、どうすればよいかわかりません。「export PYSDL2_DLL_PATH=/Library/Frameworks」を実行しようとしましたが、それが私がすべきことかどうかわかりません。現在、このコードを実行しようとすると:

「ImportError: 'sdl2' という名前のモジュールがありません」というエラーが表示されるので、これを適切に設定するにはどうすればよいですか?

編集:macportsを使用して、正しくセットアップしました。ありがとうございました。