Kanzi で使用されるOpenGL拡張機能

この表は、Kanzi が使用する OpenGL 拡張機能を一覧にしています。

機能: OpenGL extensions

要件

リニアカラー ワークフロー:

GL_EXT_sRGB

Kanzi がこの拡張機能を有効にします(利用可能な場合)。

バイナリシェーダー:

  • GL_ARB_get_program_binary

  • GL_OES_get_program_binary

バイナリシェーダーを使用する場合、プラットフォームが OpenGL ES 3.0 以上をサポートしていない限り、これらの拡張機能のいずれかが利用可能でなければなりません。バイナリシェーダーを使用すること を参照してください。

デバッグ:

GL_KHR_debug

Renderer::logOpenGLInformation を呼び出し、この拡張機能が利用可能な場合、Kanzi はそれを使用します。

マルチサンプリング (MSAA):

  • GL_NV_framebuffer_multisample

  • GL_ARB_framebuffer_object

  • GL_EXT_multisampled_render_to_texture

  • GL_IMG_multisampled_render_to_texture

Composition Target Render Pass で Multisample Level プロパティを設定する場合、プラットフォームがOpenGL ES 3.0以上をサポートしていない限り、これらの拡張機能のいずれかが利用可能でなければなりません。コンポジションターゲットへのコンテンツのレンダリング および マルチサンプリングの使用 を参照してください。

頂点フォーマット:

  • GL_ARB_half_float_vertex

  • GL_OES_vertex_half_float

半浮動小数点の頂点フォーマットを使用する場合、プラットフォームがOpenGL ES 3.0以上をサポートしていない限り、これらの拡張機能のいずれかが利用可能でなければなりません。メッシュの最適化 を参照してください。

テクスチャとレンダーターゲット形式:

GL_OES_rgb8_rgba8 エクステンション

RGB8レンダーターゲットを使用する場合、Kanzi はこの拡張機能を使用します。ただし、プラットフォームがOpenGL ES 3.0以上をサポートしている場合を除きます。

テクスチャとレンダーターゲット形式:

  • GL_OES_texture_half_float

  • GL_OES_texture_half_float_linear

  • GL_OES_texture_float

  • GL_OES_texture_float_linear

  • GL_ARB_half_float_pixel

  • GL_EXT_color_buffer_half_float

  • GL_EXT_color_buffer_float

  • GL_ARB_color_buffer_float

テクスチャまたはレンダーターゲットでfloat16またはfloat32形式を選択した場合、Kanzi はこれらの拡張機能が利用可能であれば使用します。

テクスチャとレンダーターゲット形式:

GL_EXT_texture_norm16

テクスチャまたはレンダーターゲットで16ビットの符号付きまたは符号なしフォーマットを選択した場合、Kanzi はこの拡張機能を使用します(利用可能な場合)。

テクスチャとレンダーターゲット形式:

  • GL_ARB_texture_storage_multisample

  • GL_ARB_texture_storage

  • GL_EXT_texture_storage

Kanzi は、これらの拡張機能が利用可能な場合に使用しますが、プラットフォームが OpenGL ES 3.0 以上をサポートしている場合は除きます。

テクスチャとレンダーターゲット形式:

GL_ETC1_RGB8_OES

ETC1テクスチャフォーマットを使用する場合、これらの中から対応するフォーマットが利用可能でなければなりません。ETC アルゴリズムの使用 を参照してください。

テクスチャとレンダーターゲット形式:

  • GL_COMPRESSED_RGB8_ETC2

  • GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2

  • GL_COMPRESSED_RGBA8_ETC2_EAC

ETC2テクスチャフォーマットを使用する場合、これらの中から対応するフォーマットが利用可能でなければなりません。ETC アルゴリズムの使用 を参照してください。

テクスチャとレンダーターゲット形式:

  • GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG

  • GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG

  • GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG

  • GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG

  • GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG

  • GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG

PVRTCテクスチャフォーマットを使用する場合、これらの中から対応するフォーマットが利用可能でなければなりません。PVRTC アルゴリズムの使用 を参照してください。

テクスチャとレンダーターゲット形式:

  • GL_ATC_RGB_AMD

  • GL_ATC_RGBA_EXPLICIT_ALPHA_AMD

  • GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD

ATCテクスチャフォーマットを使用する場合、これらの中から対応するフォーマットが利用可能でなければなりません。ATC アルゴリズムの使用 を参照してください。

テクスチャとレンダーターゲット形式:

  • GL_COMPRESSED_RGBA_ASTC_4x4

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4

  • GL_COMPRESSED_RGBA_ASTC_5x4

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4

  • GL_COMPRESSED_RGBA_ASTC_5x5

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5

  • GL_COMPRESSED_RGBA_ASTC_6x5

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5

  • GL_COMPRESSED_RGBA_ASTC_6x6

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6

  • GL_COMPRESSED_RGBA_ASTC_8x5

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5

  • GL_COMPRESSED_RGBA_ASTC_8x6

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6

  • GL_COMPRESSED_RGBA_ASTC_8x8

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8

  • GL_COMPRESSED_RGBA_ASTC_10x5

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5

  • GL_COMPRESSED_RGBA_ASTC_10x6

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6

  • GL_COMPRESSED_RGBA_ASTC_10x8

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8

  • GL_COMPRESSED_RGBA_ASTC_10x10

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10

  • GL_COMPRESSED_RGBA_ASTC_12x10

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10

  • GL_COMPRESSED_RGBA_ASTC_12x12

  • GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12

ASTCテクスチャフォーマットを使用する場合、これらの対応するフォーマットが利用可能でなければなりません。ASTC アルゴリズムの使用 を参照してください。

テクスチャとレンダーターゲット形式:

  • GL_ARB_depth_texture

  • GL_OES_depth_texture

16ビット深度テクスチャフォーマットを使用する場合、プラットフォームがOpenGL ES 3.0以上をサポートしていない限り、これらの拡張機能のいずれかが利用可能でなければなりません。

テクスチャとレンダーターゲット形式:

  • GL_OES_depth24

  • GL_ARB_depth_texture

24ビット深度テクスチャフォーマットを使用する場合、プラットフォームがOpenGL ES 3.0以上をサポートしていない限り、これらの拡張機能のいずれかが利用可能でなければなりません。

テクスチャとレンダーターゲット形式:

  • GL_OES_depth32

  • GL_ARB_depth_texture

32ビット深度テクスチャフォーマットを使用する場合、プラットフォームがOpenGL ES 3.0以上をサポートしていない限り、これらの拡張機能のいずれかが利用可能でなければなりません。

テクスチャとレンダーターゲット形式:

  • GL_EXT_packed_depth_stencil

  • GL_OES_packed_depth_stencil

深度とステンシルを使用する場合、プラットフォームが OpenGL ES 3.0 以上をサポートしていない限り、これらの拡張機能のいずれかが利用可能でなければなりません。

テクスチャとレンダーターゲット形式:

GL_OES_stencil8

ステンシル8テクスチャフォーマットを使用する場合、この拡張機能が利用可能でなければなりません。ただし、プラットフォームがOpenGL ES 3.0以上をサポートしている場合は除きます。

テクスチャとレンダーターゲット形式:

GL_EXT_texture_filter_anisotropic

テクスチャのいずれかに異方性フィルタリングを設定する場合、この拡張機能が利用可能でなければなりません。

テクスチャとレンダーターゲット形式:

GL_ARB_seamless_cube_map

Kanzi がこの拡張機能を有効にします(利用可能な場合)。

テクスチャとレンダーターゲット形式:

GL_EXT_texture_rg

RGテクスチャを使用する場合、この拡張機能が利用可能でなければなりません。ただし、プラットフォームがOpenGL ES 3.0以上をサポートしている場合は除きます。

テクスチャとレンダーターゲット形式:

GL_EXT_draw_buffers

Composition Target Render Pass を使用してコンテンツを複数のターゲットにレンダリングする場合、この拡張機能が利用可能でなければなりません。ただし、プラットフォームがOpenGL ES 3.0以上をサポートしている場合は除きます。コンテンツを複数のコンポジションターゲットにレンダリングする を参照してください。

ジオメトリシェーダー

  • GL_ARB_geometry_shader

  • GL_OES_geometry_shader

ジオメトリシェーダーを使用する場合、プラットフォームがOpenGL ES 3.2以上をサポートしていない限り、これらの拡張機能のいずれかが利用可能でなければなりません。ジオメトリシェーダーを使用する を参照してください。

テッセレーションシェーダー

  • GL_ARB_tessellation_shader

  • GL_OES_tessellation_shader

テッセレーションシェーダーを使用する場合、プラットフォームがOpenGL ES 3.2以上をサポートしていない限り、これらの拡張機能のいずれかが利用可能でなければなりません。テッセレーションシェーダーの使用 を参照してください。

高度なカラー合成:

  • GL_KHR_blend_equation_advanced

  • GL_KHR_blend_equation_advanced_coherent

ノードやマテリアルを高度なカラーブレンディングモードに設定する場合、これらの拡張機能が利用可能でなければなりません。高度なカラーブレンディングモード を参照してください。

関連項目

バイナリシェーダーを使用すること

コンポジションターゲットへのコンテンツのレンダリング

アンチエイリアスの適用

メッシュの最適化

テクスチャを圧縮する (Compressing textures)

テクスチャ (Textures)

レンダーターゲットテクスチャ (Render Target Texture) を使用する

コンポジションとブレンディング