SDL2

Thumbnail of post image 054

 SDL2 で、画像データをプログラム内に持ち、それを表示してみます。

 空のサーフェスを作成して、そのサーフェスにデータをコピーします。色深度は 32 ビットにします。

画像の RGB データを作成

 今回は簡 ...

SDL2

Thumbnail of post image 132

 SDL2 で GUI 部品を使えるようにするプログラムを公開しました。

 よく調べると、同名のライブラリが Github にありましたが、C++ で作られていることと、日本語の情報が殆どないのでどう使えばいいのかよくわか ...

SDL2

Thumbnail of post image 001

 結局、チェックボックスを応用すればそれほど難しくないので、ラジオボタンも作りました。

 円の表示は以前作ったものをそのまま使いました。

 ラジオボタンのグループは、ラジオボタンに設定する変数で区別することにし ...

SDL2

Thumbnail of post image 013

 GUI 画面を作ると、メッセージボックスや確認ダイアログを使いたくなります。SDL にはダイアログはないので、これも作らないと実現できません。

 SDL2 から複数ウィンドウが扱えるようになり、X11 であれば、Util ...

SDL2

Thumbnail of post image 167

 ASCII文字(1 バイト文字)は、キャレットの移動や、文字削除はうまく行きましたが、UTF8 文字は判定しないといけないので処理が複雑になります。

 まず、UTF8 の 1 バイト目の上位 4 ビットでバイト数がわかり ...

SDL2

Thumbnail of post image 172

 テキスト入力ボックスを作ります。日本語の入力も出来るようにするには、SDL_StartTextInput() で入力を開始し、SDL_StopTextInput() で終了するらしいです。

 SDL_StartTextI ...

SDL2

Thumbnail of post image 189

 ドロップダウンリストは、マウスをプレスしている間、リストを表示するようにしました。無理やり作ったので、「クリックでリスト表示 -> リストクリックで選択」という動作にはできませんでした。ソースがわかりづらくなりました。 ...

SDL2

Thumbnail of post image 010

 GUI 部品のボタンを作りました。マウス操作でボタンも浅れるようにしました。これを独立したソースにまとめます。

 まず、GUI 部品を作るためのデータを決めます。必要なデータは、GUI 部品の種類、部品の左上の x, y ...

SDL2

Thumbnail of post image 194

 SDL は GUI を持たないので、自前で GUI 部品を作ってみたいと思いました。まずは、ボタンの描画を行ってみたいと思います。

灰色で矩形を塗りつぶしてみる

 まず、灰色で矩形を描いてみます。

SDL_SetRe ...

SDL2

Thumbnail of post image 087

 ペイント(ラスタ)形式の画像を縮小する時、元画像からそのままピクセルを取り出すと、線が途切れたりします。間引かれたピクセルの情報が捨てられてしまうのが原因です。このような場合、補間処理を行うことで、画像が荒くなることを防げます。