UltKit

Chuyển PNG sang TGA

Đổi texture, sprite và ảnh giao diện PNG thành file Truevision TGA cho các game engine và công cụ yêu cầu Targa làm đầu vào texture. Điểm ảnh trong suốt được ghi vào kênh alpha, nên các vùng cắt và mask vẫn hoạt động bình thường.

Chuyển đổi ảnh

hoặc thả tệp JPG, JPEG, JPE … vào đây ·

Tối đa 95 MB mỗi tệp· Tối đa 20 tệp· Xóa sau 30 phút

Đầu ra

Tệp được xử lý trên máy chủ của chúng tôi và bị xóa sau 30 phút.

Cách sử dụng công cụ này

  1. 1

    Thêm các texture PNG

    Chọn tối đa 20 file PNG, mỗi file tối đa 95 MB. Cả bộ texture (diffuse, normal, roughness, mask) có thể đưa vào một lượt.

  2. 2

    Tắt đổi kích thước với texture cho engine

    Giữ Đổi kích thước ảnh đầu ra ở mục Giữ kích thước gốc để các kích thước lũy thừa của hai như 1024 × 1024 hoặc 2048 × 2048 được giữ chính xác.

  3. 3

    Chuyển sang TGA

    Nhấn Chuyển sang TGA, tải từng file về hoặc tải cả gói ZIP, rồi đưa vào thư mục import của engine.

Vì sao game engine và công cụ texture vẫn yêu cầu TGA

Truevision thiết kế định dạng TGA năm 1984 cho card thu hình TARGA của hãng, và bản sửa đổi năm 1989, TGA 2.0, bổ sung phần footer và vùng mở rộng mà hầu hết phần mềm đọc ngày nay. Định dạng này đủ đơn giản để nạp bằng vài chục dòng code: một header ngắn, bảng màu tùy chọn, rồi đến điểm ảnh thô hoặc mã hóa run-length. Chính sự đơn giản đó khiến các studio game chọn nó từ thập niên 1990 và khiến nhiều quy trình chưa bao giờ chuyển sang định dạng khác.

Lý do thực tế là alpha và tính dự đoán được. TGA 32-bit luôn mang một kênh alpha straight 8-bit bên cạnh màu, không có chunk gamma hay chunk hồ sơ màu để trình import diễn giải khác đi. Họa sĩ texture tin tưởng rằng file từ Photoshop, Substance hay Blender vào engine vẫn giữ nguyên các giá trị.

Chuyển PNG sang TGA cho Unreal, Source, Unity và Blender

Tổ chứcYêu cầuNguồn
Unreal EngineImport TGA, PNG, PSD và các định dạng khác; texture cần các cạnh là lũy thừa của hai để có mipmap và streaming—
Engine Source (vtex)Trình biên dịch texture của Valve đọc TGA và ghi VTF; alpha điều khiển độ mờ và mask—
UnityImport TGA trực tiếp và nén theo từng nền tảng đích khi build—
BlenderĐọc và ghi Targa, có cả đầu ra "Targa" nén RLE và "Targa Raw" không nén—

PNG

Ảnh PNG (Portable Network Graphics)

PNG là định dạng ảnh raster không mất dữ liệu (lossless), được PNG Development Group công bố năm 1996 và sau đó được W3C và ISO chuẩn hóa. Định dạng giữ nguyên chính xác từng điểm ảnh, hỗ trợ đầy đủ kênh alpha cho nền trong suốt và hiển thị văn bản, cạnh sắc nét và mảng màu phẳng mà không bị nhiễu. Độ chính xác đó khiến PNG lý tưởng cho ảnh chụp màn hình, logo, biểu tượng và đồ họa giao diện. Cái giá phải trả là dung lượng: ảnh chụp lưu dưới dạng PNG thường lớn gấp nhiều lần cùng bức ảnh ở dạng JPEG hoặc WebP. Mọi trình duyệt, hệ điều hành và trình chỉnh sửa đều mở được tệp PNG.

Nén
Không mất dữ liệu
Độ trong suốt
Có
Ảnh động
Không
Ra mắt
1996 · PNG Development Group
Công cụ chuyển đổi PNG

TGA

Ảnh Truevision TGA (Targa)

TGA, còn gọi là Targa, do Truevision tạo ra năm 1984 cho các card đồ họa của hãng. Định dạng lưu ảnh raster không nén hoặc nén không mất dữ liệu (lossless) bằng run-length encoding, và hỗ trợ kênh alpha 8 bit. Cấu trúc đơn giản khiến TGA từ lâu được ưa chuộng cho texture game, ảnh render 3D và đồ họa video. Tệp lớn hơn so với PNG, và trình duyệt cũng như điện thoại không hiển thị được TGA. Hầu hết trình chỉnh sửa ảnh, game engine và chương trình 3D đều đọc được định dạng này.

Nén
Không mất dữ liệu
Độ trong suốt
Có
Ảnh động
Không
Ra mắt
1984 · Truevision
Công cụ chuyển đổi TGA

PNG được chuyển sang TGA khi game engine, công cụ mod hoặc quy trình render được thiết lập quanh texture Targa có kênh alpha 8-bit; TGA được chuyển lại sang PNG khi cần xem trước texture trong trình duyệt hoặc chia sẻ ra ngoài quy trình đó.

Kênh alpha TGA, nén RLE và đầu ra 32-bit

RLE (mã hóa độ dài loạt)TGA nén · TGA kiểu ảnh 10
Kiểu nén duy nhất mà TGA định nghĩa. Chuỗi điểm ảnh giống nhau được lưu một lần kèm số lần lặp, giúp giảm mạnh dung lượng ảnh giao diện phẳng và mask, nhưng gần như không giúp ích với texture ảnh chụp. Image type 2 trong header nghĩa là true color không nén; type 10 nghĩa là cùng dữ liệu đó được mã hóa run-length.

Mọi engine và trình chỉnh sửa đọc được TGA đều đọc cả biến thể thường lẫn RLE, nên lựa chọn này hiếm khi ảnh hưởng đến việc import. Nó quan trọng hơn với quản lý phiên bản: TGA không nén so sánh và lưu trữ dễ dự đoán hơn, nên một số studio cấm RLE trong quy tắc asset. Photoshop có cùng lựa chọn này dưới dạng ô Compress (RLE) trong hộp thoại lưu Targa.

Một điều cần kiểm tra trước khi chuyển là alpha của PNG. Nhiều trình xuất ghi đủ kênh alpha ngay cả với ảnh đục, khiến engine coi texture là trong suốt, tốn chi phí sắp xếp và overdraw. Nếu alpha vô nghĩa, hãy xóa nó trong trình chỉnh sửa trước. Về kiến thức nền của định dạng PNG, xem JPG, JPEG và PNG khác nhau thế nào; khi cần đưa TGA trở lại để xem trước trong trình duyệt, TGA sang PNG làm ngược lại trang này.

Câu hỏi về chuyển texture PNG sang TGA

File TGA sẽ là 24-bit hay 32-bit?

PNG có kênh alpha sẽ thành TGA 32-bit: mỗi kênh đỏ, lục, lam và alpha 8 bit. PNG không trong suốt chỉ cần 24 bit. Nếu engine bắt buộc 32-bit cho texture không có độ trong suốt, hãy thêm vào PNG một kênh alpha hoàn toàn đục trước khi chuyển.

Chuyển PNG sang TGA có mất chất lượng không?

Với PNG 8-bit thông thường thì có: mọi giá trị màu và alpha được sao chép chính xác. PNG 16-bit mỗi kênh, thường gặp ở height map xuất từ công cụ sculpt, sẽ bị giảm xuống 8 bit vì TGA không có chế độ true-color sâu hơn. Hãy giữ các map đó ở dạng PNG hoặc EXR nếu engine hỗ trợ.

Vì sao file TGA bị lộn ngược trong một số chương trình?

TGA có thể lưu các hàng từ dưới lên hoặc từ trên xuống, với một cờ trong phần header cho biết hướng nào. Hầu hết công cụ đọc cờ này; một số trình xem cũ và trình nạp tự viết bỏ qua nên ảnh bị lật. Hãy lật ảnh trong trình nạp hoặc trong trình chỉnh sửa thay vì chuyển đổi lại.

Nên dùng TGA hay DDS cho texture game?

TGA là file nguồn bạn giữ và import lại; DDS chứa dữ liệu nén cho GPU mà card đồ họa đọc trực tiếp. Unreal và Unity nhận TGA và tự nén khi import. Các bản mod và engine cũ nạp texture mà không qua bước import thường cần DDS, định dạng mà PNG sang DDS tạo ra.

Vì sao file TGA nặng hơn PNG nhiều như vậy?

PNG dùng nén Deflate; TGA tốt nhất chỉ dùng mã hóa run-length đơn giản, chỉ hiệu quả ở các vùng màu phẳng. Một texture 2048 × 2048 nhiều chi tiết có alpha nặng khoảng 16 MB khi lưu TGA không nén. Engine sẽ nén lại khi build game, nên dung lượng trên đĩa chỉ ảnh hưởng đến thư mục dự án của bạn.