SDL

Bug 1720

SDLと同様にSDL_imageについてもパッチを提出した。 1720 – Fix solution/project files for VS2012 パッチの内容もSDLの時と似たようなもので、パスを修正したり、不要な設定を削除したり、showimageにSDL2_image.libがリンクされるようにしたりした。

Bug 1719

ちょっとしたことだけど気になることがあってSDLのBugzillaにパッチを提出したのでメモ。 1719 – Remove unnecessary PrecompiledHeaderOutputFile. VisualC\SDL_VS2012.slnを使ってSDLをビルドすると、たまに空のDebugやReleaseなどのディレクトリが作成さ…

白い弾幕くん

iMac上で久しぶりにビルドして動かしたらいくつかの個所で落ちるので手を加えてみた。 std::string::erase()の使い方と、SDL 1.2とSDL 1.3の違いを修正しただけ。

SDLとwxWidgetsを一緒に使った

ウィンドウにメニューとか付けたくなったので、あれこれ考えた結果wxWidgetsを使うことにした。まずwxWidgets単体でウィンドウの表示、メニューの表示まで行えるのを確認して、それではSDLと一緒に使おうと思ったらやり方を思いつかなかった。そこで、ググっ…

その後

SDL

Perlを使って生成したソースファイル*1は既にリポジトリで管理されていたことがわかった。エラーが出た原因はVisualCのプロジェクトファイルにその生成したファイルが登録されていないからだった。かー、うかつ過ぎ。 結局src/audio/SDL_audiotypecvt.cと、s…

コンパイルに失敗した

SDL

リポジトリから入手してビルドするにはPerlが必要だということを思い出した。Perlで書かれたスクリプト*1が、コンパイルに必要なソースファイル*2を作るんだよね。なんかソースが足りないと思ってたんだけど、作業場所が変わってすっかり忘れてた。 *1:src/a…

ネットワーク越しにSDLアプリを表示してみる

SDL 1.3を使ったWindows上のアプリを、Macからネットワーク越しに見る必要があって、RDCと各種VNCを試した。RDCはレンダラーの種類に関係なく起動時にエラーが発生した(SDL_VideoInit()内?)。VNCではものによってはレンダラーがd3dだとうまく画面が更新され…

最小化したウィンドウを元に戻すと小さくなってしまう

SDL

今作っているアプリケーションのメインウィンドウを最小化して元に戻すとタイトルバーの高さくらい、幅は数ピクセルくらいのものが表示される。かろうじてタイトルバーの左端が見えている感じ。そこからダブルクリックでウィンドウを閉じることもできる。 原…

SDL_MixAudioFormat

SDL

SDL_Audioで音をミックスしていくにはSDL_MixAudio関数を使うが、ミックスしたデータをヴィジュアライザーなどに再利用する場合には一旦SDL_MixAudioFormat関数を使ってメモリ上でミックスして、その結果をSDL_MixAudio関数で再度ミックスするのが良い、のか…

Pygameの加算合成のソースを読んだ

先日Pygameで加算合成 - ゲームプログラムめも日記というページを見つけてブックマークしました。その時は将来的な機能かと思っていましたが、コードはすでにあるみたいですね。Pythonは使っていないので動作までは確認してませんが、ソースはなんとか読めそ…

SDLのMLをsubscribeした。

SDL

SDLといえば、先日SDLのMLを一通りsubscribeした。というのもhttp://www.libsdl.org/pipermail/sdl/2006-October/076941.htmlというメールを送りたかったからなんだけど、今のところ無反応。さすがにいきなりすぎたかなあ。 今日、というか先程もう一通送っ…

sge_transform_surface関数と8bppサーフェス

先日より、sge_transform_surface関数を使って生成したサーフェス(以下dst)のうち生成元サーフェス(以下src)のbppが8のものだけがなぜか真っ白に表示されるという現象が起きていた。今日になってようやく調べた結果、dstにsrcのパレットを設定することで色が…

SDL_ConvertAudio関数で変換した後のデータサイズ

SDL

SDL_Audioを使っていると波形の途中から変な音が鳴ることがあったので調べたがなかなか直らなかった。今回別の理由からSDL_Audioを使うところを再実装していたら、SDL_ConvertAudio関数の説明の以下の部分を見落としていたのが原因だということがわかった。…

サウンド関連ライブラリ

SDL

SDLとして音を鳴らすにはいくつか方法があるようだ。 SDL_audio SDL自身に含まれる、SDLのサウンド処理の基本的なもの。 SDL_mixer SDL_audioよりも手軽に音を扱えるライブラリ。ソースファイルはSDLと同じリポジトリ(http://www.libsdl.org/cgi/viewvc.cgi/…

時間切れっぽい

SDL

SDLの方にあまり時間をとられなくなりそうなので、SDL_Texture云々はしばらく保留とする。また時間があれば再チャレンジしたいところ。ちょっと残念。

テクスチャーとフルスクリーン

SDL

テクスチャーを使っている最中にフルスクリーンモードに切り替えると、テクスチャーIDからテクスチャーを参照できなくなる。SDL_QueryTexture関数を呼び出して、-1が帰ってきたらテクスチャーの実体が無くなったとみて、再度テクスチャーを作成する。手元で…

ウィンドウID

SDL

ウィンドウIDといえば、SDL_RenderCopy関数などの描画対象はSDL_SelectRenderer関数で指定するが、この関数にはウィンドウIDを指定する。これはウィンドウとレンダラーが一対になっている(ビデオカードとディスプレイの組み合わせと似たようなものか)から来…

SDL_TextureとSDL_Surfaceの使いわけ

SDL

昨日よりは少し進み、画像の描画に関しては8割がたSDL_Textureを使うようにできた。残り二割は解像度の問題と、まだ未確認の全画面モード切替だけど、それらは後回し。あとはSGEの線分描画と、SDL_ttfの文字列描画が対応できればいいんだけどなあ。 現在SDL_…

SDL_SurfaceとSDL_Texture

SDL

SDL_Textureを扱えるようにはなった。今度は既存のSDL_Surfaceを対象としたライブラリをどうするか、ということ。しかし、SDLのソースを読んでいるうちに何とかなるかもしれないと思いはじめた。 先程知ったが、SDL_SetVideoMode関数で得られるサーフェスに…

SDL_RenderCopy

SDL

testsprite2をベースにしたサンプルを作りながら、SDL_Textureの使い方を勉強する。SDL_RenderCopy関数に渡すdstrectのwとhが有効になり、拡大・縮小はこれを使って行えるようだ(画像の幅が64pxの場合、w = 128とすると幅が倍になる)。しかしながら回転はサ…

SDL_Texture

SDL

自宅サーバが使えないので、こちらにメモ。 SDLを使って画像の加算合成を行う方法を調べていたら、SDL_Textureで画像を持てばいけそうなことがわかった。SDL 1.3のサンプル testsprite2.c ではその SDL_Texture を使ったデモが見られるようだ(動作は未確認)…