Truevision TGA (.tga)
Truevision Tiêu chuẩnTruevision TGA (Targa) là định dạng đồ họa raster lịch sử được tạo ra cho các bo mạch chụp video TARGA mang tính đột phá, trở thành định dạng tài sản trò chơi điện tử và kết cấu 3D định hình của những năm 1990 và 2000.
Chuyển đổi TGA sang PNG
Trình chuyển đổi từ TGA sang PNG miễn phí trên trình duyệt. Chuyển đổi tệp ngay lập tức trên thiết bị của bạn.
Kiểm tra & Siêu dữ liệu
Các hệ điều hành và trình phân tích tệp nhận dạng tệp TGA bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:
Chữ ký tiêu đề ở cấp độ Byte (Magic Bytes)
Các hệ điều hành và trình phân tích tệp nhận dạng tệp TGA bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:
CHỮ KÝ HEX (OFFSET 0):
00 00 02 00 00 00 00 00BIỂU DIỄN ASCII: ........ (Footer: TRUEVISION-XFILE)
Tiêu chuẩn hóa: Truevision TGA File Format Specification v2.0
Thông số kỹ thuật
| Kiến trúc Container | 18-byte fixed header followed by image ID, color map, raster pixel data, and optional v2.0 footer |
| Nén | Uncompressed raw scanlines or lossless packet-based Run-Length Encoding (RLE) |
| Thứ tự byte Endianness | Little-Endian (Intel x86) |
| Không gian màu | Device RGB |
| Kênh & Cấu trúc | 8-bit grayscale, 16-bit RGB (5-5-5-1), 24-bit RGB, or 32-bit RGBA with alpha |
| Kích thước tối đa | 65,535 x 65,535 pixels (16-bit dimension fields) |
| Độ trong suốt | Full 8-bit alpha channel transparency (in 32-bit mode) or 1-bit alpha (in 16-bit mode) |
| Truyền phát & Tăng dần | Sequential scanline streaming; supports top-to-bottom or bottom-to-top orientation |
Ma trận so sánh kỹ thuật: TGA so với các đối thủ
| Thuộc tính kỹ thuật | TGA (Hiện tại) | PNG | BMP | DDS |
|---|---|---|---|---|
| Sử dụng kết cấu trò chơi điện tử | Tiêu chuẩn kế thừa phổ biến thập niên 1990-2000 | Giao diện người dùng 2D hiện đại & tài sản web | Bitmap kế thừa Windows | Định dạng GPU nén hiện đại DirectX |
| Hỗ trợ kênh Alpha | Alpha 8-bit sạch (chế độ 32-bit) | Alpha 8-bit sạch | Alpha 32-bit hạn chế | Alpha nén DXT/BC |
| Thuật toán nén | Không nén hoặc RLE gói | Deflate không mất dữ liệu (nhỏ hơn ~60%) | Không nén / RLE | Nén khối GPU trực tiếp (BC1-BC7) |
| Vị trí chữ ký | Chân trang 26-byte ('TRUEVISION-XFILE.') | Tiêu đề byte 0 ('‰PNG....') | Tiêu đề byte 0 ('BM') | Tiêu đề byte 0 ('DDS ') |
Các chế độ hỏng hóc phổ biến & Hướng dẫn khôi phục Hex
Hình ảnh hiển thị lộn ngược hoặc bị lật theo chiều ngang.
Nguyên nhân gốc rễ: Các bit mô tả hình ảnh (bit 4 và 5 trong byte 17) bị đọc nhầm hoặc bị đảo ngược bởi trình giải mã.
Khắc phục: Chuyển đổi cờ lật dọc/ngang hoặc chuyển đổi bằng Trình chuyển đổi TGA của File2File.
Phân tích bảo mật & Các vectơ tấn công bộ phân tích cú pháp
Trình giải mã TGA xử lý các luồng RLE dựa trên gói, trong đó số lượng độ dài chuỗi bị lỗi có thể kích hoạt ghi heap vượt quá giới hạn.
Các Véc-tơ Tấn công Đã biết
- Độ dài gói RLE vượt quá ranh giới bộ đệm dòng quét đích.
- Tràn bộ đệm khi đọc các mục bản đồ màu vượt quá độ sâu bản đồ màu đã khai báo.
- Tràn số nguyên trong quá trình cấp phát bộ nhớ đệm width * height * (bpp / 8).
Thực tiễn Tốt nhất về Phòng thủ:
Nguồn gốc lịch sử & Các cột mốc
Ưu điểm & Lợi ích chính
- Kiến trúc giải mã cực kỳ đơn giản cho phép tải trực tiếp bộ nhớ kết cấu GPU với chi phí CPU tối thiểu.
- Hỗ trợ kênh alpha RGBA 32-bit đáng tin cậy đã làm cho nó trở thành định dạng ưa thích của ngành cho kết cấu trò chơi điện tử, sprite và decal.
- Hỗ trợ cả tính năng không nén và nén RLE không mất dữ liệu nhẹ.
Hạn chế & Nhược điểm kỹ thuật
- Dung lượng tệp lớn hơn so với các định dạng kết cấu nén hiện đại như DDS, KTX2 hoặc PNG.
- Thiếu quản lý cấu hình màu gốc (không có cấu hình ICC nhúng).
- Các tệp TGA v1.0 gốc thiếu byte nhận dạng chuẩn ở byte 0 (được nhận dạng bởi các trường tiêu đề và chân trang).
Thông tin kỹ thuật thú vị
- TGA được tạo ra để ghi lại các khung hình video phát sóng trên máy tính IBM trước khi màn hình PC tiêu chuẩn thậm chí có thể hiển thị màu 24-bit.
- Các tệp TGA 2.0 rất độc đáo vì chữ ký nhận dạng của chúng ('TRUEVISION-XFILE.') được lưu trữ ở ngay cuối tệp thay vì ở phần đầu.
- Hầu như mọi công cụ trò chơi 3D lớn nào vào thập niên 1990, từ id Tech đến Unreal Engine, đều tải các tài sản kết cấu trực tiếp từ các tệp .TGA.
Các câu hỏi kỹ thuật thường gặp
Tại sao các nhà phát triển trò chơi lại thích định dạng TGA?
Bởi vì các tệp TGA không nén hoặc sử dụng RLE đơn giản, cho phép các công cụ trò chơi tải các kết cấu 32-bit và độ trong suốt alpha trực tiếp vào bộ nhớ video mà không cần giải nén chậm.
Làm cách nào để nhận diện tệp TGA mà không cần byte ma thuật (magic bytes) ở byte 0?
Các tệp TGA 2.0 hiện đại kết thúc bằng chuỗi ASCII 'TRUEVISION-XFILE.' trong 26 byte cuối cùng của tệp.
Làm cách nào để chuyển đổi TGA sang PNG?
Bạn có thể chuyển đổi các kết cấu TGA thành hình ảnh PNG hoặc JPG chất lượng cao trực tiếp trong trình duyệt của mình bằng cách sử dụng File2File.app mà không cần truyền dữ liệu.