Truevision TGA (.tga)

Truevision Standart

TGA (Targa), Truevision'ın TARGA video yakalama kartlarıyla ilişkilendirilen bir raster biçimidir ve özellikle 1990'lar ile 2000'lerde bazı grafik ve oyun varlığı iş akışlarında kullanılmıştır.

TGA biçimini PNG biçimine dönüştür

Tarayıcında TGA biçimini PNG biçimine ücretsiz dönüştür. Dosyaları cihazında anında dönüştür.

İncele ve Meta Veriler

İşletim sistemleri ve dosya çözümleyicileri, TGA dosyalarını başlangıçtaki ikili sihirli bayt dizisini inceleyerek tanımlar:

Dosyaları buraya seç veya bırak

Özel - dosyalar cihazınızdan asla ayrılmaz

veya yapıştır Ctrl+V
Sıfır Ağ Aktarımı Gizlilik Garantisi: Harici sunuculara 0 bayt yüklendi. Tüm işlemler tarayıcındaki korumalı alanda (sandbox) yerel olarak gerçekleştirildi.

Bayt düzeyinde başlık imzası (sihirli baytlar)

İşletim sistemleri ve dosya çözümleyicileri, TGA dosyalarını başlangıçtaki ikili sihirli bayt dizisini inceleyerek tanımlar:

HEX İMZASI (OFSET 0):

Sabit imza yok

ASCII GÖSTERİMİ: Sabit imza yok

Standartlaştırma: Truevision TGA File Format Specification v2.0

Teknik Özellikler

Kapsayıcı mimarisiArdından görüntü kimliği, renk haritası, tarama piksel verisi ve isteğe bağlı v2.0 altbilgisi gelen 18 baytlık sabit üstbilgi
SıkıştırmaSıkıştırılmamış ham tarama satırları veya kayıpsız paket tabanlı Çalışma Uzunluğu Kodlaması (RLE)
Bayt Düzeni (Endianness)Little-Endian (Intel x86)
Renk UzaylarıDevice RGB
Kanallar ve Yapı8 bit gri tonlama, 16 bit RGB (5-5-5-1), 24 bit RGB veya alfayla 32 bit RGBA
Maksimum Boyutlar65.535 x 65.535 piksel (16 bit boyut alanları)
ŞeffaflıkTam 8 bit alfa kanalı şeffaflığı (32 bit kipinde) veya 1 bit alfa (16 bit kipinde)
Akış ve Aşamalı İşlemeSıralı tarama satırı akışı; yukarıdan aşağıya veya aşağıdan yukarıya yönlendirmeyi destekler

Teknik karşılaştırma matrisi: TGA ve rakipleri

Teknik NitelikTGA (Güncel)PNGBMPDDS
Video Oyunu Doku Kullanımı1990’lar ve 2000’lerde bazı oyun motorları tarafından kullanıldı.Modern 2D arayüz ve web varlıklarıWindows'un eski bit eşlem biçimiDirectX'in modern sıkıştırılmış GPU formatı
Alfa Kanalı DesteğiTemiz 8-bit alfa (32-bit mod)Temiz 8-bit alfaSınırlı 32-bit alfaDXT/BC sıkıştırılmış alfa
Sıkıştırma AlgoritmasıSıkıştırılmamış veya Paket RLEKayıpsız Deflate sıkıştırması; boyut tasarrufu görüntü içeriğine bağlıdır.Sıkıştırılmamış / RLEDoğrudan GPU blok sıkıştırması (BC1-BC7)
İmza Konumu26 baytlık altbilgi ('TRUEVISION-XFILE.')0. bayttaki başlık ('‰PNG....')0. bayttaki başlık ('BM')0. bayttaki başlık ('DDS ')

Yaygın Bozulma Modları ve Hex Kurtarma Kılavuzu

Görüntü baş aşağı ya da yatay olarak ters çevrilmiş biçimde görüntüleniyor.

Kök Neden: Görüntü tanımlayıcı bitleri (17. bayttaki 4. ve 5. bitler) kod çözücü tarafından yanlış okunmuş ya da ters çevrilmiş olabilir.

Kurtarma: Dikey ve yatay çevirme ayarlarını değiştir veya File2File.app TGA Converter ile dönüştür.

Güvenlik Analizi ve Ayrıştırıcı Saldırı Vektörleri

TGA kod çözücüler, hatalı biçimlendirilmiş çalışma uzunluğu sayımlarının sınır dışı yığın (heap) yazmalarını tetikleyebileceği paket tabanlı RLE akışlarını işler.

Bilinen Saldırı Vektörleri

  • Hedef tarama çizgisi arabelleği sınırını aşan RLE paket uzunluğu.
  • Bildirilen renk haritası derinliğini aşan renk haritası girdileri okunurken arabellek taşması.
  • Genişlik * yükseklik * (bpp / 8) bellek arabelleği tahsisi sırasında tamsayı taşması.

Savunmaya yönelik en iyi uygulamalar: RLE paketlerini açarken her tarama satırının sınırlarını sıkı biçimde denetle.

Tarihsel kökenler ve önemli dönüm noktaları

1998TGA, doğrudan renk ve alfa verisini desteklediği için oyun grafiği iş akışlarında yaygınlaştı; id Software’in Quake II’si gibi oyun motorları dokular için TGA kullandı.
1989Truevision, standartlaştırılmış 26 baytlık 'TRUEVISION-XFILE' altbilgisini ekleyerek TGA Dosya Formatı v2.0'ı yayınlar.
1984Truevision, TARGA (Truevision Advanced Raster Graphics Adapter) video kartını ve TGA formatını tanıtır.

Temel Avantajlar ve Artılar

  • Son derece basit kod çözme mimarisi, minimum CPU yüküyle doğrudan GPU doku belleği yüklemesine olanak tanır.
  • TGA, alfa kanalı dahil 24 bit RGB veya 32 bit RGBA verilerini saklayabilir; bu nedenle bazı oyun dokusu, sprite ve kaplama iş akışlarında kullanışlıydı.
  • Hem sıkıştırılmamış hem de hafif kayıpsız RLE sıkıştırmasını destekler.

Teknik Kısıtlamalar ve Eksiler

  • DDS, KTX2 veya PNG gibi modern sıkıştırılmış doku formatlarına göre daha büyük dosya boyutları.
  • Yerel renk profili yönetiminden yoksundur (gömülü ICC profili yoktur).
  • Orijinal v1.0 TGA dosyalarında 0. baytta standartlaştırılmış bir sihirli bayt (magic byte) bulunmaz (başlık alanları ve altbilgi ile tanımlanır).

İlginç Teknik Bilgiler

  • TGA, standart PC monitörleri henüz 24-bit rengi bile görüntüleyemezken IBM PC'de yayın videosu karelerini yakalamak için oluşturulmuştur.
  • TGA 2.0 dosyaları benzersizdir çünkü sihirli imzaları ('TRUEVISION-XFILE.') başlangıçta değil, dosyanın en sonunda saklanır.
  • TGA, id Software ve Valve oyunları dâhil bazı 1990’lar oyun motorlarında dokular için kullanıldı.

Sıkça Sorulan Teknik Sorular

Oyun geliştiricileri neden TGA formatını sevdi?

Çünkü TGA dosyaları sıkıştırılmamıştı veya basit RLE formatındaydı; bu sayede oyun motorlarının yavaş bir dekompresyona gerek kalmadan 32-bit dokuları ve alfa şeffaflığını doğrudan video belleğine yüklemesine olanak tanıyordu.

Bayt 0'da sihirli baytlar (magic bytes) olmayan bir TGA dosyasını nasıl tanımlarım?

Modern TGA 2.0 dosyaları, dosyanın son 26 baytında 'TRUEVISION-XFILE.' ASCII dizesiyle biter.

TGA'yı PNG'ye nasıl dönüştürebilirim?

TGA dosyaları oyun dokularında kullanılan bir alfa kanalı içerebilir. Saydamlığı korumak için PNG’ye, daha küçük ve opak bir görüntü için JPEG’e dönüştürün; bu dönüştürücü tarayıcınızda çalışır.