SDL_Texture * SDL_CreateTextureWithProperties(SDL_Renderer *renderer, SDL_PropertiesID props);
| SDL_Renderer * | renderer | レンダリングコンテキスト |
| SDL_PropertiesID | props | 設定するプロパティ |
これらのプロパティに対応している:
SDL_PROP_TEXTURE_CREATE_COLORSPACE_NUMBER: テクスチャの色空間を表すSDL_Colorspaceの値. デフォルトは浮動小数点テクスチャのときSDL_COLORSPACE_SRGB_LINEAR, 10ビットテクスチャのときSDL_COLORSPACE_HDR10, 他のRGBテクスチャのときSDL_COLORSPACE_SRGB, YUVテクスチャのときSDL_COLORSPACE_JPEG
SDL_PROP_TEXTURE_CREATE_FORMAT_NUMBER: SDL_PixelFormatの値の1つ. デフォルトはレンダラの最善のRGBA形式
SDL_PROP_TEXTURE_CREATE_ACCESS_NUMBER: SDL_TextureAccessの値の1つ. デフォルトはSDL_TEXTUREACCESS_STATIC
SDL_PROP_TEXTURE_CREATE_WIDTH_NUMBER: テクスチャの幅ピクセル数. 必須
SDL_PROP_TEXTURE_CREATE_HEIGHT_NUMBER: テクスチャの高さピクセル数. 必須
SDL_PROP_TEXTURE_CREATE_PALETTE_POINTER: パレット形式テクスチャで使用するSDL_Palette
これは後でSDL_SetTexturePalette()で設定できる
SDL_PROP_TEXTURE_CREATE_SDR_WHITE_POINT_FLOAT: HDR10および浮動小数点テクスチャ用. 100% diffuse white(拡散反射の白)の値を設定し, それ以上の値はHDR(ハイダイナミックレンジ)ヘッドルームとして表示する.
HDR10テクスチャのデフォルトは100, 浮動小数点テクスチャのデフォルトは1.0
SDL_PROP_TEXTURE_CREATE_HDR_HEADROOM_FLOAT: HDR10および浮動小数点テクスチャ用. SDR(スタンダードダイナミックレンジ)ホワイトポイントの基準で, 表示で使用する最大ダイナミックレンジの値を設定する.
HDR10画像の場合, これはmaxCLL / SDL_PROP_TEXTURE_CREATE_SDR_WHITE_POINT_FLOATと等しい
これが定義されているとき, ディスプレイの対応外の値は有効なHDRヘッドルーム内にスケーリングされる. 定義されていない場合は切り捨てられる
direct3d11レンダラの場合:
SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_POINTER: テクスチャのID3D11Texture2D. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_U_POINTER: YUVテクスチャのUプレーンのID3D11Texture2D. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_V_POINTER: YUVテクスチャのVプレーンのID3D11Texture2D. 既存のテクスチャをラップしたい場合に使用する
direct3d12レンダラの場合:
SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_POINTER: テクスチャのID3D12Resource. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_U_POINTER: YUVテクスチャのUプレーンのID3D12Resource. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_V_POINTER: YUVテクスチャのVプレーンのID3D12Resource. 既存のテクスチャをラップしたい場合に使用する
metalレンダラの場合:
SDL_PROP_TEXTURE_CREATE_METAL_PIXELBUFFER_POINTER: テクスチャのCVPixelBufferRef. 既存のピクセルバッファからテクスチャを生成したい場合に使用する
openglレンダラの場合:
SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_NUMBER: テクスチャのGLuintテクスチャ. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_UV_NUMBER: NV12テクスチャのUVプレーンのGLuintテクスチャ. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_U_NUMBER: YUVテクスチャのUプレーンのGLuint. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_V_NUMBER: YUVテクスチャのVプレーンのGLuint. 既存のテクスチャをラップしたい場合に使用する
opengles2レンダラの場合:
SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_NUMBER: テクスチャのGLuintテクスチャ. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_UV_NUMBER: テクスチャのUVプレーンのGLuintテクスチャ. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_U_NUMBER: YUVテクスチャのUプレーンのGLuint. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_V_NUMBER: YUVテクスチャのVプレーンのGLuint. 既存のテクスチャをラップしたい場合に使用する
vulkanレンダラの場合:
SDL_PROP_TEXTURE_CREATE_VULKAN_TEXTURE_NUMBER: テクスチャのVkImage. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_VULKAN_LAYOUT_NUMBER: VkImageのVkImageLayout. デフォルトはVK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL
GPUレンダラの場合:
SDL_PROP_TEXTURE_CREATE_GPU_TEXTURE_POINTER: テクスチャのSDL_GPUTexture. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_GPU_TEXTURE_UV_NUMBER: NV12テクスチャのSDL_GPUTexture. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_GPU_TEXTURE_U_NUMBER: YUVテクスチャのUプレーンのSDL_GPUTexture. 既存のテクスチャをラップしたい場合に使用する
SDL_PROP_TEXTURE_CREATE_GPU_TEXTURE_V_NUMBER: YUVテクスチャのVプレーンのSDL_GPUTexture. 既存のテクスチャをラップしたい場合に使用する
この関数を呼べるのはメインスレッドのみである.