Truevision TGA (.tga)

Truevision 標準

Truevision TGA(Targa)は、画期的なTARGAビデオキャプチャボード向けに開発された歴史的なラスターグラフィックス形式であり、1990年代から2000年代にかけて決定版の3Dテクスチャおよびビデオゲームアセット形式となりました。

TGA を PNG に変換

無料のブラウザ内 TGA から PNG へのコンバーター。お使いのデバイスでファイルを即座に変換します。

調査とメタデータ

オペレーティングシステムやファイル解析ツールは、先頭のバイナリバイトシーケンスを検査することで TGA ファイルを識別します:

ここにファイルを選択またはドロップ

100%プライベートなブラウザ内変換 - ファイルがデバイスから外部に出ることはありません

または貼り付け Ctrl+V
ネットワーク送信ゼロのプライバシー保証: 外部サーバーへのデータ送信は0バイトです。すべての処理はお使いのブラウザのサンドボックス内でローカルに実行されます。

バイトレベルのヘッダーシグネチャ (マジックバイト)

オペレーティングシステムやファイル解析ツールは、先頭のバイナリバイトシーケンスを検査することで TGA ファイルを識別します:

16進数シグネチャ (オフセット 0):

00 00 02 00 00 00 00 00

ASCII表現: ........ (Footer: TRUEVISION-XFILE)

標準化: Truevision TGA File Format Specification v2.0

技術仕様

コンテナアーキテクチャ18-byte fixed header followed by image ID, color map, raster pixel data, and optional v2.0 footer
圧縮Uncompressed raw scanlines or lossless packet-based Run-Length Encoding (RLE)
バイトエンディアンLittle-Endian (Intel x86)
色空間Device RGB
チャンネルと構造8-bit grayscale, 16-bit RGB (5-5-5-1), 24-bit RGB, or 32-bit RGBA with alpha
最大寸法65,535 x 65,535 pixels (16-bit dimension fields)
透過性Full 8-bit alpha channel transparency (in 32-bit mode) or 1-bit alpha (in 16-bit mode)
ストリーミングとプログレッシブSequential scanline streaming; supports top-to-bottom or bottom-to-top orientation

技術比較マトリックス: TGA 対 競合製品

技術属性TGA (現在)PNGBMPDDS
ビデオゲームテクスチャでの使用1990〜2000年代の普遍的なレガシー標準最新の2D UIおよびWebアセットWindowsレガシービットマップDirectXの最新圧縮GPU形式
アルファチャンネルのサポートクリーンな8ビットアルファ(32ビットモード)クリーンな8ビットアルファ制限付き32ビットアルファDXT/BC圧縮アルファ
圧縮アルゴリズム非圧縮またはパケットRLEロスレスDeflate(約60%小型)非圧縮 / RLE直接GPUブロック圧縮(BC1-BC7)
署名の場所26バイトのフッター(「TRUEVISION-XFILE.」)バイト0のヘッダー(「‰PNG....」)バイト0のヘッダー(「BM」)バイト0のヘッダー(「DDS 」)

一般的な破損モードと16進数リカバリガイド

画像が上下逆または水平方向に反転して描画される。

根本原因: 画像記述子のビット(バイト17のビット4および5)がデコーダーによって誤読または反転されている。

復旧: 垂直/水平反転フラグを切り替えるか、File2File TGAコンバーターを使用して変換します。

セキュリティ分析とパーサー攻撃ベクトル

TGAデコーダーはパケットベースのRLEストリームを処理するため、不正なランレングス数によって領域外ヒープ書き込みを引き起こす可能性があります。

既知の攻撃ベクター

  • 宛先スキャンラインバッファの境界を超えるRLEパケット長。
  • 宣言されたカラーマップ深度を超えるカラーマップエントリを読み取る際のバッファオーバーフロー。
  • 幅 × 高さ × (bpp / 8) のメモリバッファ割り当て中の整数オーバーフロー。

防御的ベストプラクティス:

歴史的背景とマイルストーン

1998ValveのHalf-Lifeおよびid SoftwareのQuake IIが、TGAを標準的なビデオゲーム用テクスチャアセット形式として普及させました。
1989TruevisionがTGAファイル形式v2.0をリリースし、標準化された26バイトの「TRUEVISION-XFILE」フッターを追加しました。
1984TruevisionがTARGA(Truevision Advanced Raster Graphics Adapter)ビデオボードとTGA形式を導入しました。

主な利点とメリット

  • 極めて単純なデコードアーキテクチャにより、最小限のCPUオーバーヘッドでGPUテクスチャメモリへの直接ロードが可能です。
  • 信頼性の高い32ビットRGBAアルファチャンネルサポートにより、ビデオゲームのテクスチャ、スプライト、デカールで業界の定番となりました。
  • 非圧縮と軽量なロスレスRLE圧縮の両方をサポートしています。

技術的な制限とデメリット

  • DDS、KTX2、PNGなどの最新の圧縮テクスチャ形式と比較してファイルサイズが大きくなります。
  • ネイティブなカラープロファイル管理が欠如しています(埋め込みICCプロファイルなし)。
  • オリジナルのv1.0 TGAファイルには、バイト0に標準化されたマジックバイトがありません(ヘッダーフィールドとフッターで識別されます)。

興味深い技術トリビア

  • TGAは、標準的なPCモニターが24ビットカラーを表示できるようになる前、IBM PCで放送用ビデオフレームをキャプチャするために作成されました。
  • TGA 2.0ファイルは、マジック署名(「TRUEVISION-XFILE.」)がファイルの先頭ではなく最後尾に格納されているという特徴があります。
  • id TechからUnreal Engineに至るまで、1990年代の主要な3Dゲームエンジンのほとんどすべてが、.TGAファイルから直接テクスチャアセットをロードしていました。

よくある技術的な質問

なぜゲーム開発者はTGA形式を好んだのですか?

TGAファイルは非圧縮またはシンプルなRLEであり、ゲームエンジンが低速な解凍処理を行うことなく、32ビットのテクスチャやアルファ透明度をビデオメモリに直接読み込むことができたためです。

バイト0にマジックバイトがないTGAファイルをどのように識別しますか?

最新のTGA 2.0ファイルは、ファイルの最後の26バイトにASCII文字列「TRUEVISION-XFILE.」が含まれています。

TGAをPNGに変換するにはどうすればよいですか?

データを一切送信することなく、ブラウザから直接File2File.appを使用して、TGAテクスチャを高品質なPNGまたはJPG画像に変換できます。