問題タブ [sdl]

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 投票する
1 に答える
487 参照

c++ - SDLを使用したハードウェアバッファリング、それがどのように機能するかについての質問

私は最初のゲームをすることにしました。それは単純になるでしょうが、私はc ++を使いたいので、学習のためにSDLを選びました。だから私の質問は、コードを書くときに「バッファ」がどのように扱われるかについてです。関連するコードを下部に投稿します。

さて、基本的に私が理解しているのは、SDLが実際に画面に描画されているバッファーを処理するということです。私がバッファに書き込んでいるとき、それは常に私が書き込んでいるバックバッファ、または現在画面に描画されていないバッファです。したがって、SDL_Flip(screen)を呼び出すと、画面の表面がバックバッファーに「ブリット」され、バッファーが描画されているポインターが、以前はバックバッファーであったバッファー、作業していたバッファーに移動します。現在表示されていた古いバッファがバックバッファになります。この時点で、SDL_FillRect(arguments)を呼び出すと、バックバッファで実行されますか?

質問を明確にするのに役立つかもしれないので、学習ゲームの「ハートビート」全体を投稿します。

0 投票する
4 に答える
8107 参照

c++ - SDL_surface から OpenGL テクスチャへ

SDL_Surface をロードして OpenGL テクスチャとして保存するスクリプトがあります。

問題は、それが機能していないことです。メイン関数から関数を呼び出すと、画像が読み込まれず(表示時に描画色が変わるだけです)、メイン関数外の関数から呼び出すと、プログラムがクラッシュします。プログラムをクラッシュさせるのは次の行です。

誰でもこれで間違いを見ることができますか?

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

python - Pygameがインクルードファイル「sdl.h」を見つけることができません

Pygameを使用するダウンロードしたPythonアプリをWindowsでビルドしようとしています。Python2.5とPygame1.7.1をインストールしました。Pythonは初めてですが、Windowsコンソールのコマンドラインで最上位の.pyファイルの名前を入力してみました。(私はWin XP Proを使用しています。)

これが私が受け取るメッセージです。

C:\ Python25 \ include \ pygame \ pygame.h(68):致命的なエラーC1083:インクルードファイルを開くことができません:'SDL.h':そのようなファイルまたはディレクトリはありません

PygameはSDLの上に構築されており、SDLを別途インストールする必要はないと思いました。それでも、SDL 1.2.13をインストールし、SDLインクルードフォルダーを%INCLUDE%環境変数に追加しました。まだ運がない。

C:\ Python25 \ Lib \ site-packages\pygameにいくつかのSDL*.DLLファイルが含まれていることに気付きましたが、Pythonツリーのどこにもsdl.hヘッダーファイルがありません。もちろん、sdlヘッダーをC:\ Python25 \ include \ pygameフォルダーにコピーすることもできますが、それは不快な考えです。

誰かが物事を設定する正しい方法を知っていますか?

編集: アプリケーションは「ペンギンマシン」pygameアプリです

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

video - SDLに関するたくさんの質問

私は SDL で小さな RTS ゲームを始めています。いくつか質問があります。

  • 私は小さなスプライトを扱っていますが、スキャンラインで画面 x2 を表示する方法はありますか? rotozoom でズームしようとしましたが、ゲームの速度が遅くなるため、スプライトを手動でスケーリングすることは避けたいと思います。
  • 実行中にフルスクリーンとウィンドウ表示を切り替えるにはどうすればよいですか? 関数を見つけました SDL_WM_ToggleFullScreenが、SDL doc によると、Windows では動作しないようです。
  • 独自のカーソルを配置するために、スプライトにポインターをロードし、マウスに追従させます。しかし、フレームレートも下げたいと思い SDL_Delayます。そうすると、ポインターの動きがスムーズになりません。SDL カーソルは、アプリケーションのフレームレートの影響を受けていないようです。それを使用する方が良い解決策ですか?もしそうなら、変なマスクの代わりに画像を使用する方法はありますか?
  • フレームレートを制限するより良い方法はありますか?
  • 表面に色を付けるにはどうすればよいですか ( draw_lit_spriteAllegro のように)
0 投票する
3 に答える
3931 参照

xcode - OS X 10.5 で SDL と Xcode を使用してイメージをロードするにはどうすればよいですか?

編集: toastie の提案で bmp を使用した後も、画像の読み込みにまだ問題があります:

Xcode で SDL と OpenGL を使用しており、立方体のテクスチャとして使用する画像を読み込もうとしています。画像は 256x256 RBG jpeg です。画像はすべてのソース コードと同じディレクトリにあり、Xcode プロジェクトの Resources フォルダーの下にあります。ファイルの名前は texture.bmp

私はそれを実行し続け、コンソールエラーを取得します:Couldn't open texture.bmp

これらの条件下でファイルをロードするためのパスまたは適切な構文は何ですか?

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

c++ - Mix_Chunk の再生で意図しない遅延が発生しました

だから私はSDLを学び、小さなゲームを作ろうとしています。ユーザーがスペースバーを押すと、サウンドが再生されます。これは機能しますが、サウンドの再生に約 0.5 秒かかります... どうすれば修正できますか? 実際のファイルをチェックして、遅延がその一部であるかどうかを確認しましたが、そうではないことが判明しました。

Win Vista での C++ を使用した SDL。

関連するコードを次に示します。

ハンドル入力関数:

さらに必要な場合は、お知らせください。

0 投票する
4 に答える
461 参照

emacs - 特定のヘッダー ファイルを開くと Emacs がクラッシュする

Emacsで「SDL_opengl.h」と呼ばれるSDLライブラリからファイルを開こうとしたとき、LinuxでSDLのヘッダーファイルを掘り下げていました。何らかの理由で、常にクラッシュします。Vimとgeditで問題なく開きます。

特定のファイルを開くことを単純に拒否するだけで、Emacs で問題が発生した人はいますか? 問題の原因を見つけるには、どのようなものを探す必要がありますか? そのディレクトリ内の他のすべての「SDL_*.h」ファイルを開くことができました。それだけで困ります。

事前に大歓迎です!

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

c++ - 大きなアニメーションをロードするより良い方法はありますか?

それほど大きくはないかもしれませんが、100 フレームか何かです。配列を作成し、各画像を個別にロードすることによってロードする唯一の方法はありますか?

load_image() は、画像をロードして BPP を変換する関数です。

彼らはより良い方法であるべきだと思われる..少なくとも私は願っています。

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

c++ - Visual C++ 2008 に SDL ライブラリをインストールするには?

ねえ、VISUAL C++ 2008 に SDL ライブラリをインストールする方法は? インストール方法のチュートリアルを探していますが、良いものは見つかりませんでした:(((助けてください?、下手な英語でごめんなさい。ありがとう:))

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

opengl - Dev-C++ と SDL を使用した OpenGL v2.0 シェーダー?

Windows の Dev-C++ でライブラリを再構築しようとしていました。ただし、その間に追加したシェーダー機能はサポートされておらず、コンパイラーは関連する関数 (::glCreateShader()、::glCreateProgram() など) を見つけることができませんでした。

インターネットと Dev-C++ フォルダーを調べてみると、OpenGL の実装 (gl.h) は v1.1 のみであることがわかりました。SGIから最新のヘッダーをダウンロードするための推奨事項を見つけました。gl3.h を見つけましたが、詳細に調べたところ、gl.h がプロジェクトに含まれていないことがわかりました。SDL/SDL_opengl.h を確認する必要があります。

編集: SDL_opengl.hには gl.h含まれており、問題の関数のプロトタイプが宣言されています。問題は、なぜリンカ エラーではなくコンパイル時エラーが発生したのかということです。

(私のライブラリは mingw32、libOpenGL32、libSDL、libSDL_Image および libSDL_Mixer に対してのみリンクします。これは、OSX (もちろん mingw32 を除く) とほとんど同じで、問題はありませんでした。)

Dev-C++ および SDL で OpenGL v2.0 シェーダーを使用するにはどうすればよいですか?