SDL_PropertiesID SDL_GetRendererProperties(SDL_Renderer *renderer);
| SDL_Renderer * | renderer | レンダリングコンテキスト |
(SDL_PropertiesID) 成功のときプロパティグループID, 失敗のとき0を戻す. SDL_GetError()を呼んで詳細を知ることができる.
SDLから次の読取専用プロパティが提供されている:
SDL_PROP_RENDERER_NAME_STRING: レンダリングドライバの名前
SDL_PROP_RENDERER_WINDOW_POINTER: レンダリングが表示されるウィンドウ. 存在する場合
SDL_PROP_RENDERER_SURFACE_POINTER: レンダリングが表示されるサーフェイス. ウィンドウのないソフトウェアレンダラの場合
SDL_PROP_RENDERER_VSYNC_NUMBER: 現在の垂直同期の設定
SDL_PROP_RENDERER_MAX_TEXTURE_SIZE_NUMBER: テクスチャの幅と高さの最大値
SDL_PROP_RENDERER_TEXTURE_FORMATS_POINTER: このレンダラの有効なテクスチャの形式を表すSDL_PIXELFORMAT_UNKNOWN終端の(const SDL_PixelFormat *)配列のピクセル形式
SDL_PROP_RENDERER_TEXTURE_WRAPPING_BOOLEAN: 真のときレンダラは2のべき乗でないテクスチャでSDL_TEXTURE_ADDRESS_WRAPに対応している
SDL_PROP_RENDERER_OUTPUT_COLORSPACE_NUMBER: ディスプレイ出力の色空間を表すSDL_Colorspaceの値. デフォルトはSDL_COLORSPACE_SRGB
SDL_PROP_RENDERER_HDR_ENABLED_BOOLEAN: 真のとき, 色空間がSDL_COLORSPACE_SRGB_LINEARかつディスプレイに表示するレンダラのHDRが有効.
このプロパティはSDL_EVENT_WINDOW_HDR_STATE_CHANGEDが送られると動的に変化しうる
SDL_PROP_RENDERER_SDR_WHITE_POINT_FLOAT: SDRホワイトのSDL_COLORSPACE_SRGB_LINEARの値.
HDRが有効の場合, この値は色倍率に応じて自動的に変更される.
このプロパティはSDL_EVENT_WINDOW_HDR_STATE_CHANGEDが送られると動的に変化しうる
SDL_PROP_RENDERER_HDR_HEADROOM_FLOAT: 表示可能なSDRホワイトポイント基準のハイダイナミックレンジの値.
HDRが有効でない場合, この値は1.0となる.
このプロパティはSDL_EVENT_WINDOW_HDR_STATE_CHANGEDが送られると動的に変化しうる
direct3dレンダラの場合:
SDL_PROP_RENDERER_D3D9_DEVICE_POINTER: レンダラのIDirect3DDevice9
direct3d11レンダラの場合:
SDL_PROP_RENDERER_D3D11_DEVICE_POINTER: レンダラのID3D11Device
SDL_PROP_RENDERER_D3D11_SWAPCHAIN_POINTER: レンダラのIDXGISwapChain1. ウィンドウサイズが変わるとこの値も変わる可能性がある
direct3d12レンダラの場合:
SDL_PROP_RENDERER_D3D12_DEVICE_POINTER: レンダラのID3D12Device
SDL_PROP_RENDERER_D3D12_SWAPCHAIN_POINTER: レンダラのIDXGISwapChain4
SDL_PROP_RENDERER_D3D12_COMMAND_QUEUE_POINTER: レンダラのID3D12CommandQueue
vulkanレンダラの場合:
SDL_PROP_RENDERER_VULKAN_INSTANCE_POINTER: レンダラのVkInstance
SDL_PROP_RENDERER_VULKAN_SURFACE_NUMBER: レンダラのVkSurfaceKHR
SDL_PROP_RENDERER_VULKAN_PHYSICAL_DEVICE_POINTER: レンダラのVkPhysicalDevice
SDL_PROP_RENDERER_VULKAN_DEVICE_POINTER: レンダラのVkDevice
SDL_PROP_RENDERER_VULKAN_GRAPHICS_QUEUE_FAMILY_INDEX_NUMBER: レンダリングで使用するキューファミリのインデックス
SDL_PROP_RENDERER_VULKAN_PRESENT_QUEUE_FAMILY_INDEX_NUMBER: 画面表示で使用するキューファミリのインデックス
SDL_PROP_RENDERER_VULKAN_SWAPCHAIN_IMAGE_COUNT_NUMBER: Vulkanレンダラで使用されるスワップチェーン画像の数, または処理の潜在的なフレームの数
gpuレンダラの場合:
SDL_PROP_RENDERER_GPU_DEVICE_POINTER: レンダラのSDL_GPUDevice
この関数を呼べるのはメインスレッドのみである.
SDL_Renderer *renderer;
SDL_PropertiesID props = SDL_GetRendererProperties(renderer);
int max_texture_size = (int)SDL_GetNumberProperty(props, SDL_PROP_RENDERER_MAX_TEXTURE_SIZE_NUMBER, 0);