目次 - SDL 3.0 API(機能別) - サーフェイスの生成と単純な描画

サーフェイスの生成と単純な描画

概要

SDLサーフェイスはシステムRAM上にあるピクセルのバッファである. GPUメモリ上ではないため, 画像の受け渡しや操作に便利である.

SDL_Surfaceは様々な形式の画像の操作に対応している. そして, サーフェイス間のコピー, 画像データの長方形領域の塗りつぶし等のデータ操作に便利な道具が提供されている.

単純な.bmpローダーのSDL_LoadBMP()も存在する. SDL自身は他の様々なファイル形式の読み込みは提供されていないが, 補助ライブラリのSDL_imageを含むいくつかの優れた外部ライブラリが存在する:

https://github.com/libsdl-org/SDL_image

関数

  1. SDL_AddSurfaceAlternateImage - サーフェイスに別のバージョンを追加する
  2. SDL_BlitSurface - サーフェイスを別のサーフェイスに高速にブロック転送する
  3. SDL_BlitSurface9Grid - サーフェイスに9-grid algorithmを使用して拡大縮小して転送する
  4. SDL_BlitSurfaceScaled - サーフェイスに拡大縮小して転送する
  5. SDL_BlitSurfaceTiled - サーフェイスにタイル状に敷き詰めるように転送する
  6. SDL_BlitSurfaceTiledWithScale - サーフェイスに拡大縮小してタイル状に敷き詰めるように転送する
  7. SDL_BlitSurfaceUnchecked - 低レベルのサーフェイス転送のみを行う
  8. SDL_BlitSurfaceUncheckedScaled - 低レベルの拡大縮小サーフェイス転送のみを行う
  9. SDL_ClearSurface - サーフェイスを浮動小数点で指定した色で消去する
  10. SDL_ConvertPixels - ある形式のピクセル群を別の形式に変換してコピーする
  11. SDL_ConvertPixelsAndColorspace - ある形式のピクセル群を別の形式と色空間に変換してコピーする
  12. SDL_ConvertSurface - 既存のサーフェイスを別の形式に変換して新しいサーフェイスを生成する
  13. SDL_ConvertSurfaceAndColorspace - 既存のサーフェイスを別の形式に変換して新しいサーフェイスを生成する
  14. SDL_CreateSurface - 指定したピクセル形式で新しいサーフェイスを生成する
  15. SDL_CreateSurfaceFrom - 既存のピクセルデータから指定のピクセル形式の新しいサーフェイスを生成する
  16. SDL_CreateSurfacePalette - パレットを生成してサーフェイスに関連付ける
  17. SDL_DestroySurface - サーフェイスを破棄する
  18. SDL_DuplicateSurface - 既存のサーフェイスを複製する
  19. SDL_FillSurfaceRect - 指定の色で塗りつぶした長方形を高速に描画する
  20. SDL_FillSurfaceRects - 指定の色で塗りつぶした複数の長方形を高速に描画する
  21. SDL_FlipSurface - サーフェイスを垂直または水平方向に反転する
  22. SDL_GetSurfaceAlphaMod - 転送で使用するα値を得る
  23. SDL_GetSurfaceBlendMode - 転送で使用するブレンドモードを得る
  24. SDL_GetSurfaceClipRect - サーフェイスのクリップ枠を得る
  25. SDL_GetSurfaceColorKey - サーフェイスのカラーキー(透過ピクセル)を得る
  26. SDL_GetSurfaceColorMod - 転送時に積算される色要素を得る
  27. SDL_GetSurfaceColorspace - サーフェイスの色空間を得る
  28. SDL_GetSurfaceImages - サーフェイスの全てのバージョンの配列を得る
  29. SDL_GetSurfacePalette - サーフェイスのパレットを得る
  30. SDL_GetSurfaceProperties - サーフェイスのプロパティを得る
  31. SDL_LoadBMP - BMPファイルをサーフェイスに読み込む
  32. SDL_LoadBMP_IO - シーク可能なSDLデータストリームからBMP形式をサーフェイスに読み込む
  33. SDL_LockSurface - ピクセル領域に直接アクセスできるように設定する
  34. SDL_MapSurfaceRGB - RGBの値からサーフェイスの不透明なピクセルの値を求める
  35. SDL_MapSurfaceRGBA - RGBAの値からサーフェイスの透過ピクセルの値を求める
  36. SDL_PremultiplyAlpha - ピクセル群のα要素を事前に積算する
  37. SDL_PremultiplySurfaceAlpha - サーフェイスのα要素を事前に積算する
  38. SDL_ReadSurfacePixel - サーフェイスからピクセルを読み取る
  39. SDL_ReadSurfacePixelFloat - サーフェイスからピクセルを読み取る
  40. SDL_RemoveSurfaceAlternateImages - サーフェイスの全ての別バージョンを取り除く
  41. SDL_SaveBMP - サーフェイスをBMPファイルとして保存する
  42. SDL_SaveBMP_IO - サーフェイスをシーク可能なSDLストリームにBMP形式で書き込む
  43. SDL_ScaleSurface - 既存のサーフェイスのサイズを変更して新しいサーフェイスを生成する
  44. SDL_SetSurfaceAlphaMod - 転送で使用するα値を設定する
  45. SDL_SetSurfaceBlendMode - 転送で使用するブレンドモードを設定する
  46. SDL_SetSurfaceClipRect - サーフェイスのクリップ枠を設定する
  47. SDL_SetSurfaceColorKey - サーフェイスのカラーキー(透過ピクセル)を設定する
  48. SDL_SetSurfaceColorMod - 転送時に積算される色要素を設定する
  49. SDL_SetSurfaceColorspace - サーフェイスの色空間を設定する
  50. SDL_SetSurfacePalette - サーフェイスのパレットを設定する
  51. SDL_SetSurfaceRLE - サーフェイスにRLEアクセラレーションのヒントを設定する
  52. SDL_StretchSurface - サーフェイスにピクセルを引き延ばして転送する
  53. SDL_SurfaceHasAlternateImages - サーフェイスに利用可能な別のバージョンがあるかを得る
  54. SDL_SurfaceHasColorKey - サーフェイスのカラーキーの有無を得る
  55. SDL_SurfaceHasRLE - サーフェイスのRLEが有効かを得る
  56. SDL_UnlockSurface - ピクセル領域に直接アクセスした後にロックを解放する
  57. SDL_WriteSurfacePixel - サーフェイスにピクセルを書き込む
  58. SDL_WriteSurfacePixelFloat - サーフェイスにピクセルを書き込む

  1. SDL_SurfaceFlags - SDL_Surfaceのフラグの型

構造体

  1. SDL_Surface - ソフトウェア転送で使われるピクセルの集まりの構造体

列挙体

  1. SDL_FlipMode - 反転モードの列挙体
  2. SDL_ScaleMode - 拡大縮小モードの列挙体

マクロ

  1. SDL_MUSTLOCK - アクセスのためにサーフェイスをロックする必要があるかを調べるマクロ

SDL Wikiへのリンク

SDL3/CategorySurface - SDL Wiki