ブログに戻る
フォーマット

KTX2 フォーマット: 最新のテクスチャ圧縮の未来

22 最小読み取り

KTX2 (Khronos Texture 2.0) は、テクスチャ コンテナ形式の次の進化を表しており、Vulkan、OpenGL、および新たな WebGPU 標準などの最新のグラフィックス API 向けに特別に設計されています。オリジナルの KTX フォーマットの後継として、KTX2 には、Basis Universal 超圧縮、洗練されたデータ フォーマット記述子 (DFD) システム、以前のフォーマットでは不可能または非効率だった高度なテクスチャ機能のネイティブ サポートなどの革新的な機能が導入されています。 KTX2 は、ユニバーサル GPU 互換性、優れた圧縮率、広範なメタデータ機能に重点を置いているため、AAA ゲームから Web ベースのエクスペリエンスに至る次世代グラフィックス アプリケーションにおけるテクスチャ アセットの決定的な標準となっています。

KTX2フォーマットとは何ですか?

KTX2 は、以前のバージョンの基盤の上に構築され、現代のグラフィックス ワークフローに革新的な機能を導入した最新のテクスチャ コンテナ形式です。主に OpenGL との互換性を目的として設計された KTX1 とは異なり、KTX2 は Vulkan や WebGPU などの最新の API のニーズを中心に構築されており、Basis Universal 超圧縮、データ フォーマット記述子システムによる高度なメタデータ処理、配列、3D テクスチャ、キューブマップなどの複雑なテクスチャ タイプの効率的なストレージをサポートする完全に再設計されたアーキテクチャを特徴としています。

このフォーマットの最も重要な革新は、Basis Universal 超圧縮とのネイティブ統合であり、テクスチャを高度に圧縮された中間フォーマット (ETC1S および UASTC) で保存し、オンデマンドで GPU 固有のフォーマットにトランスコードできるようになります。このユニバーサルな圧縮アプローチにより、さまざまなプラットフォームで複数のテクスチャ形式のバリアントを維持する必要がなくなり、すべてのターゲット デバイスで高いビジュアル品質を維持しながら、アセット ストレージ要件が大幅に削減され、クロスプラットフォームの展開が簡素化されます。

KTX2 は、データ フォーマット ディスクリプタ (DFD) を通じて高度なメタデータ システムも導入しており、テクスチャ データ フォーマット、チャネル レイアウト、および圧縮パラメータに関する詳細で拡張可能な情報を提供します。この豊富なメタデータ エコシステムにより、自動フォーマット検出、適切なテクスチャ サンプリング構成、最新のグラフィックス パイプラインとのシームレスな統合が可能になり、KTX2 は正確なテクスチャ制御と多様なハードウェア プラットフォーム間での最大限の互換性を必要とするアプリケーションにとって理想的な選択肢となります。

KTX1からKTX2への進化

KTX1 から KTX2 への移行は、単なる増分更新ではなく、最新のグラフィックス アプリケーションでテクスチャ データを保存、圧縮、利用する方法の根本的な再考です。

KTX1: 財団 (2011-2020)

KTX1 は、OpenGL および OpenGL ES アプリケーション用のユニバーサル テクスチャ コンテナ フォーマットの概念を確立しました。これは、重要なメタデータを含む圧縮テクスチャを保存するための基本構造を提供し、ETC、PVRTC、BCn などの一般的な圧縮形式をサポートします。

KTX1 は当時としては革新的でしたが、単純なヘッダー構造、基本的なメタデータ機能、超圧縮のサポートなし、最新の GPU 機能との互換性の制限など、重大な制限がありました。従来の OpenGL ワークフローにはうまく機能しましたが、最新の Vulkan ベースのアプリケーションやクロスプラットフォーム展開シナリオの需要を満たすのに苦労しました。

移行期(2018年~2020年)

Vulkan が採用され、モバイル グラフィックスが進化するにつれて、新しいアプローチが必要であることが明らかになりました。 Khronos Group は、主要なグラフィックス会社からの意見を取り入れて、ユニバーサル圧縮、メタデータの改善、最新の API 互換性に重点を置いて KTX2 の開発を開始しました。

この期間には、超圧縮ソリューションとしての Basis Universal の登場、データ フォーマット記述子システムの開発、および KTX2 がすべてのプラットフォームにわたるゲーム開発者、Web 開発者、およびグラフィックス専門家の多様なニーズを満たすことを保証する広範な業界コラボレーションが見られました。

KTX2: モダンスタンダード (2020-現在)

KTX2 は、最新のグラフィックス ワークフロー向けに特別に設計された完全なアーキテクチャの見直しを表しています。ネイティブ Vulkan サポート、Basis Universal 統合、DFD による高度なメタデータ、ユニバーサル プラットフォーム互換性により、強力な新機能を追加しながら、KTX1 のすべての制限に対処します。

この形式は、新しいプロジェクト、特に Vulkan、WebGPU、クロスプラットフォーム展開を対象としたプロジェクトの事実上の標準になりました。優れた圧縮、広範なメタデータ、ユニバーサル GPU 互換性の組み合わせにより、最新のグラフィックス アプリケーションにとって理想的な選択肢となります。

KTX2フォーマットの主な特徴

基本ユニバーサル超圧縮

ETC1S および UASTC 形式でのユニバーサル テクスチャ圧縮を可能にする Basis Universal スーパー圧縮のネイティブ サポート

高度な超圧縮

ファイル サイズをさらに削減するための Zstandard および ZLIB 超圧縮スキームのサポート

データフォーマット記述子 (DFD)

詳細なフォーマット情報と拡張可能な記述子機能を提供する洗練されたメタデータ システム

ユニバーサル GPU 互換性

フォーマット固有のバリアントを必要とせず、最新のすべての GPU と API でシームレスに動作します

豊富なメタデータのサポート

色空間、方向、ライター情報、カスタムのキーと値のペアを含む包括的なメタデータ

Vulkan と WebGPU ネイティブ

GPU の直接読み込みと最適なパフォーマンス特性を備えた最新の API 向けに特別に設計されています

基本ユニバーサル超圧縮

KTX2 のイノベーションの中心となるのは、Basis Universal 超圧縮との統合であり、さまざまなユースケースに最適化された 2 つの補完的な圧縮アプローチを提供します。

ETC1S (低ビットレート)

許容可能なビジュアル品質を維持しながら、ファイル サイズを最小限に抑えるように最適化された高度に圧縮された形式。 Web アプリケーション、モバイル ゲーム、帯域幅に制約のある環境に最適です。

圧縮率: 非圧縮 PNG より 8 ~ 12 倍小さい

圧縮アーティファクトを伴う優れた視覚品質。拡散テクスチャや背景要素に適しています。

バイナリ透明度をサポート (1 ビット アルファ チャネル)

Web コンテンツ、モバイル アプリケーション、および視覚的な忠実度の最大化よりもファイル サイズが優先されるシナリオに最適

UASTC (高品質)

BC7 に匹敵するビジュアル品質を備えながら、ユニバーサルな互換性を備えた高品質の圧縮形式です。最高の視覚的忠実度を必要とするプレミアム コンテンツやアプリケーションに最適です。

圧縮率: 非圧縮 PNG より 3 ~ 6 倍小さい

アーティファクトを最小限に抑えた優れたビジュアル品質。ヒーローのテクスチャや詳細なコンテンツに適しています。

滑らかなグラデーションを備えたフル 8 ビット アルファ チャネルをサポート

AAA ゲーム、ハイエンド アプリケーション、ファイル サイズよりもビジュアル品質が優先されるシナリオに最適

KTX2 ファイル構造

KTX2 は、効率的な解析とユニバーサルな互換性のために設計された洗練されたファイル構造を備えています。

ファイルヘッダー

マジックナンバー、形式識別子、寸法、メタデータオフセット、形式の詳細などの重要な情報が含まれます。

レベルインデックス

ミップマップ レベルとテクスチャ配列への効率的なランダム アクセスを提供し、特定のミップ レベルの選択的なロードを可能にします。

データフォーマット記述子

テクスチャ データ レイアウト、チャネル構成、および圧縮パラメータを説明する詳細なフォーマット情報

キーと値のデータ

向き、色空間、ライター情報、カスタム アプリケーション データを保存するための拡張可能なメタデータ システム

超圧縮のグローバルデータ

Basis Universal 画像データや圧縮テーブルなど、超圧縮スキームに必要なグローバル データ

ミップマップレベル

各ミップマップ レベルの圧縮画像データ。Zstandard またはその他のスキームを使用して超圧縮される可能性があります。

画像データ

ミップマップ レベルと配列スライスによって編成された実際の圧縮テクスチャ データ (オプションで追加の超圧縮を使用)

データフォーマット記述子 (DFD) システム

DFD システムは、KTX2 の最も強力なイノベーションの 1 つであり、包括的なフォーマット情報を提供します。

フォーマットの説明

圧縮タイプ、ビット深度、チャネル構成を含むテクスチャ データ フォーマットの詳細な仕様

チャンネルマッピング

データ チャネルからカラー チャネル (R、G、B、A) への正確なマッピングとその解釈 (sRGB、リニアなど)

データのレイアウト

ブロック サイズ、テクセル レイアウト、圧縮ブロック構造などのデータ構成に関する情報

サンプル情報

ビット深度、オフセット、各テクセル内の解釈など、個々のサンプルに関する詳細

サポートされている圧縮形式

KTX2 は、ユニバーサル コンテナ設計を通じて、事実上すべての最新のテクスチャ圧縮フォーマットをサポートしています。

ETC (エリクソン テクスチャ圧縮)

ETC1、ETC2、EAC バリアントなど、モバイルに最適化された圧縮形式。 Android およびモバイル アプリケーションに最適です。

ASTC (適応型スケーラブル テクスチャ圧縮)

さまざまなブロック サイズと品質レベルをサポートする柔軟なブロックベースの圧縮。モバイルおよび最新のプラットフォームに最適です。

BCn (ブロック圧縮)

BC1 ~ BC7 を含む DirectX 互換の圧縮形式。 Windows デスクトップおよびコンソール アプリケーションに最適です。

PVRTC (PowerVR テクスチャ圧縮)

iOS デバイスおよび PowerVR ベースの GPU 向けに最適化された PowerVR 固有の圧縮形式。

非圧縮フォーマット

R8、RG8、RGB8、RGBA8、HDR コンテンツの浮動小数点バリアントなどの非圧縮形式のサポート。

超圧縮スキーム

KTX2 は、ファイル サイズをさらに削減するために複数の超圧縮スキームをサポートしています。

Zスタンダード

すでに圧縮されたテクスチャ データに適用される汎用圧縮により、さらにサイズが削減されます。

ZLIB

既存のツールやパイプラインとの互換性を提供する従来の圧縮スキーム

ベーシスユニバーサル

任意の GPU フォーマットにトランスコードできる ETC1S または UASTC 中間フォーマットを使用したプライマリ超圧縮スキーム

豊富なメタデータのサポート

KTX2 には、テクスチャを適切に解釈するための包括的なメタデータが含まれています。

テクスチャの方向

テクスチャの方向、座標系、および適切な表示に必要な変換に関する情報

色空間情報

さまざまな表示デバイス間で正確な色を再現するための色空間と伝達関数データ

ライター情報

バージョンや作成パラメータを含む、テクスチャを作成したツールまたはアプリケーションに関するメタデータ

圧縮設定

使用される圧縮パラメータ、品質設定、エンコード オプションに関する詳細情報

原色

正確な色空間変換のためにテクスチャで使用される原色の仕様

伝達関数

適切なリニア/sRGB 変換とトーン マッピングのための伝達関数情報

最新のテクスチャ ワークフロー

KTX2 により、最新のグラフィックス開発の合理化されたワークフローが可能になります。

1

アセットの作成

適切な色空間と解像度を備えた標準形式 (PNG、TGA、EXR) で高品質のソース テクスチャを作成します。

2

KTX2エンコーディング

ターゲット プラットフォームに適切な品質設定で Basis Universal 圧縮を使用してテクスチャを KTX2 にエンコードします

3

品質管理

さまざまなターゲット プラットフォームと圧縮レベルにわたる圧縮品質と視覚的な忠実性を検証します。

4

サイズの最適化

圧縮設定と超圧縮を微調整して、特定の使用例に合わせて品質とファイル サイズのバランスをとります

5

フォーマットの検証

KTX2 ファイルがすべての要件を満たし、ターゲット プラットフォームに必要なメタデータが含まれていることを確認します。

6

クロスプラットフォームの展開

形式固有のバリアントを使用せずに、すべてのターゲット プラットフォームで動作する単一の KTX2 ファイルを展開します。

KTX2フォーマットのメリット

最新の API ネイティブ

Vulkan と WebGPU 向けに特別に設計されており、最適なパフォーマンスと機能サポートを備えています。

ユニバーサルな互換性

単一フォーマットは、複数のフォーマットのバリエーションを必要とせずに、すべてのプラットフォームと GPU で動作します。

優れた圧縮力

Basis Universal は、高いビジュアル品質を維持しながら優れた圧縮率を提供します

下位互換性

従来の形式から最新の KTX2 に変換するためのツールとワークフローが存在します

拡張可能な設計

DFD システムにより、将来のフォーマット拡張とカスタム メタデータ要件が可能になります

将来も安心

積極的な開発と業界での採用により、長期的な存続とサポートが保証されます

理想的な使用例

Vulkan アプリケーション

最適なパフォーマンスと機能の互換性を必要とする最新の Vulkan アプリケーションのネイティブ サポート

WebGPU開発

高性能グラフィックス用の WebGPU を使用した次世代 Web アプリケーションに最適

ゲーム開発

AAA およびインディー ゲームはユニバーサル圧縮とクロスプラットフォーム互換性の恩恵を受けます

モバイルアプリケーション

効率的な圧縮と GPU に優しいデータ レイアウトにより、モバイル プラットフォーム向けに最適化されています。

ウェブエクスペリエンス

帯域幅を効率的に使用した高品質のグラフィックスを必要とする Web アプリケーション

エンタープライズ可視化

正確なテクスチャ制御を必要とするプロフェッショナルなビジュアライゼーションおよび CAD アプリケーション

KTX2 と他のフォーマットの比較

KTX2 を他のテクスチャ フォーマットと比較する方法を理解します。

KTX2 対 KTX1

KTX2 は、Basis Universal 超圧縮、洗練された DFD メタデータ、最新の API サポートを提供し、KTX1 は機能が制限された OpenGL アプリケーションの基本的なコンテナ機能を提供します

KTX2 vs DDS

KTX2 はユニバーサル プラットフォーム互換性と優れた圧縮を提供しますが、DDS は Windows 中心で圧縮オプションとメタデータ機能が制限されています

KTX2 vs ベイシスユニバーサル

KTX2 は圧縮に Basis Universal を使用するコンテナ形式ですが、Basis Universal は圧縮アルゴリズム自体です。 KTX2 は追加のメタデータとフォーマット機能を提供します

KTX2 vs ASTC

KTX2 は ASTC 圧縮データを含めることができるコンテナですが、ASTC は特定の圧縮形式です。 KTX2 は、ASTC のみのソリューションを超えたユニバーサルな互換性を提供します

KTX2 ツールとエコシステム

toktx (KTX2 テクスチャ ツール)

すべての圧縮形式と超圧縮スキームをサポートする、KTX2 ファイルを作成および操作するためのコマンドライン ツール

KTX ソフトウェア スイート

KTX2 ワークフローの検証、変換、検査ユーティリティを含む包括的なツール スイート

バルカンSDK

最適化された読み込みと GPU 互換性を備えた Vulkan SDK でのネイティブ KTX2 サポート

WebGPUの実装

WebGPU ブラウザと次世代 Web グラフィックスのフレームワークにおける KTX2 のサポートの拡大

ユニティエンジン

Unity は、クロスプラットフォームのモバイルおよびデスクトップ アプリケーションの KTX2 インポートとランタイム読み込みをサポートします

アンリアル エンジン

Unreal Engine は、最新のレンダリング パイプラインとクロスプラットフォーム展開のための KTX2 サポートを提供します

KTX2 のベスト プラクティス

ファイル サイズが重要な Web コンテンツやモバイル アプリケーションには ETC1S 圧縮を使用します

最高のビジュアル品質を必要とするプレミアム コンテンツやアプリケーションには UASTC 圧縮を選択してください

デバイス間で正確な色を再現するために、常に適切な色空間メタデータを含めてください。

さまざまな表示距離で適切なテクスチャ フィルタリングを行うためにミップマップ チェーンを利用します。

大きなテクスチャのファイル サイズをさらに削減するには、Zstandard による超圧縮を検討してください。

導入前に ktxinfo ツールを使用して KTX2 ファイルを検証し、互換性を確保します

GPU パフォーマンスを最適化するには、適切なテクスチャ サイズ (2 の累乗) を使用します。

方向メタデータを含めて、さまざまな座標系にわたって適切なテクスチャ表示を確保します。

KTX2への移行

既存のテクスチャ アセットを KTX2 に移行するための戦略:

KTX1から

toktx ツールを使用して、Basis Universal 超圧縮を使用して KTX1 ファイルを KTX2 に変換し、圧縮率を向上させ、最新の API をサポートします

DDSから

適切な圧縮設定を使用して DDS ファイルを KTX2 に変換し、クロスプラットフォームの互換性を確保しながらビジュアル品質を維持します。

PNG/ソース画像から

Basis Universal 圧縮を使用してソース画像を KTX2 に直接エンコードし、最適な品質とファイル サイズを実現します

基本ユニバーサルバリアントの作成

ETC1S と UASTC の両方のバリアントを生成して、さまざまな品質とファイル サイズの要件をサポートします

パフォーマンスに関する考慮事項

KTX2 のパフォーマンス特性を理解する:

圧縮性能

エンコード時間は形式によって異なります。ETC1S は高速ですが、UASTC は低速で​​すが高品質です。

GPUのパフォーマンス

GPU の直接読み込みにより、CPU オーバーヘッドとメモリ使用量を最小限に抑えながら最適なパフォーマンスを実現します。

メモリ使用量

ストリーミングのサポートと選択的なミップマップ レベルの読み込みによる効率的なメモリ使用

読み込みパフォーマンス

最新の GPU およびプラットフォームでのトランスコーディング オーバーヘッドを最小限に抑えた高速読み込み

KTX2の将来

KTX2開発の将来のロードマップ:

AI 強化圧縮

機械学習技術の統合による圧縮品質とパフォーマンスの向上

リアルタイム圧縮

動的コンテンツ生成と手続き型テクスチャのためのリアルタイム テクスチャ圧縮

クラウドベースの処理

大規模なテクスチャ処理と最適化ワークフローのためのクラウド サービス

強化されたクロスプラットフォーム サポート

新しいハードウェアにわたるプラットフォームのサポートと GPU の互換性の継続的な拡大

結論

KTX2 は、テクスチャ コンテナ テクノロジの大幅な進歩を表しており、Basis Universal 超圧縮、洗練されたメタデータ システム、およびユニバーサル プラットフォーム互換性の革新的な組み合わせを通じて、最新のグラフィックス アプリケーションの複雑なニーズに対応します。グラフィックス開発が Vulkan、WebGPU、およびクロスプラットフォーム展開シナリオに向けて進化し続ける中、KTX2 はモバイル デバイスからハイエンド ゲーム PC まで拡張する効率的で高品質のテクスチャ ワークフローの基盤を提供します。

新しいプロジェクトを開始する開発者、または既存の資産の移行を計画している開発者に、KTX2 は圧縮効率、ビジュアル品質、展開の柔軟性のバランスをとった将来性のあるソリューションを提供します。この形式の広範な業界サポート、積極的な開発、包括的なツール エコシステムにより、この形式が今後何年にもわたってテクスチャの保存と配布の標準であり続けることが保証されます。

KTX2 を今すぐ採用することで、開発者はテクスチャ ワークフローを合理化し、アセット ストレージ要件を軽減し、アプリケーションが次世代のグラフィックス ハードウェアと API に対応できるようにすることができます。 Web アプリケーション、モバイル ゲーム、または AAA タイトルのいずれを構築している場合でも、KTX2 は、すべてのプラットフォームで優れたビジュアル エクスペリエンスを提供するために必要なツールと機能を提供します。

参考文献と詳細情報

KTX2 フォーマットをより深く理解するには、次のリソースを参照してください。