Movatterモバイル変換


[0]ホーム

URL:


コンテンツにスキップ
Wikipedia
検索

SDL

出典: フリー百科事典『ウィキペディア(Wikipedia)』
曖昧さ回避SDL」のその他の用法については「SDL (曖昧さ回避)」をご覧ください。
Simple DirectMedia Layer
開発元Sam Lantinga
最新版
3.2.8 /2025年3月4日 (8日前) (2025-03-04)[1]
リポジトリウィキデータを編集
プログラミング
言語
C言語
対応OSクロスプラットフォーム
種別API
ライセンスzlib License/
1.2.15以前はGNU Lesser General Public License
公式サイトhttps://www.libsdl.org/
テンプレートを表示
Simple DirectMedia Layer
SDLの構造

SDL (Simple DirectMedia Layer) は、C言語で書かれたクロスプラットフォームのマルチメディアライブラリである。グラフィックの描画やサウンドの再生などのAPIを提供する。オーディオ、キーボード、マウス、ジョイスティック、そしてOpenGLおよびDirect3Dを経由したグラフィックスハードウェアへのローレベルなアクセスを提供するよう設計されている。WindowsmacOSLinuxiOSAndroidを公式にサポートしている。SDLそのものはOS間の違いを吸収するための最低限の抽象化しか提供しないが、SDLで使えるフォントネットワークスプライトなどの多数の補助ライブラリ(後述)が公開されている。

2021年2月7日に開発ベースをGitHubに移動するとアナウンスがあった[2]

言語バインディング

[編集]

SDL自身はC言語で書かれており、C/C++向けのインタフェースのみが公式に提供されているが、AdaC#JavaLuaPascalPerlPythonRubyRustSmalltalkなどの各種プログラミング言語向けのバインディング(ラッパー)もコミュニティによって開発されている[3]

使用例

[編集]

Smalltalk環境であるSqueak, Pharoでは開発環境のWindowを描画する土台としてSDLが使われている。[1]

SDLが使用するAPI

[編集]

SDLは画面の描画にOSによって異なるAPIを使う。SDL 1.2の場合、WindowsではDirectDrawあるいはGDIが、LinuxではXlibが使用される。ただし、環境変数SDL_VIDEODRIVER」を変更すれば、プログラムを書き換えることなく別のAPIを使って表示することも可能になっている[4]。利用可能なドライバーはプラットフォームおよびSDLのコンパイル時オプションに依存する。

同様に、音声出力に使うAPIも環境変数SDL_AUDIODRIVERで変更が可能。

SDL 2.0では、ウィンドウ作成時にフラグを指定することで、OpenGLやVulkanを直接利用した3D描画をサポートできる[5]

2DグラフィックスのレンダラーSDL_Rendererは、SDL_SetHint()SDL_HINT_RENDER_DRIVERを使用して、優先的に選択させたいバックエンドのヒントを指定することが可能である[6]

ギャラリー

[編集]

補助ライブラリ

[編集]
  • SDL_image-さまざまな画像形式をサポートする。
  • SDL_mixer-さまざまな音声形式をサポートする。
  • SDL_net-ネットワークをサポートする。
  • SDL_ttf-TrueTypeフォントをサポートする。
  • SDL_rtf-Rich Text Format形式の文書をサポートする。
  • SDL_gfx-図形を描くための補助ライブラリ。

出典

[編集]
  1. ^Announcing the SDL 3 official release! - SDL Announcements - Simple Directmedia Layer
  2. ^SDL moving to GitHub - SDL Development - Simple Directmedia Layer
  3. ^Simple DirectMedia Layer - Language Bindings
  4. ^FAQUsingSDL - SDL Wiki
  5. ^SDL_WindowFlags - SDL Wiki
  6. ^SDL_HINT_RENDER_DRIVER - SDL Wiki

関連項目

[編集]
ウィキポータル FLOSS
ウィキメディア・コモンズには、SDLに関連するカテゴリがあります。

外部リンク

[編集]
スタブアイコン

この項目は、FLOSSに関連した書きかけの項目です。この項目を加筆・訂正などしてくださる協力者を求めていますPortal:FLOSS)。

https://ja.wikipedia.org/w/index.php?title=SDL&oldid=104077928」から取得
カテゴリ:
隠しカテゴリ:

[8]ページ先頭

©2009-2025 Movatter.jp