2012-08-31 42 views
5

Tôi muốn đưa các tệp hình ảnh kết cấu vào tệp collada của mình. Bây giờ tôi có nhiều tệp: tệp .dae và tệp kết cấu .png.Bao gồm các tệp kết cấu vào tệp collada

Tuy nhiên, tôi chỉ muốn có một tệp: .dae, nhưng với các họa tiết được bao gồm trong đó.

Bằng cách nào đó tôi có thể lưu trữ hình ảnh .png trong tệp .dae? Có thể không? Cảm ơn bạn trước!

Trả lời

-2

Bạn không thể nhúng hình ảnh bên trong tệp .dae. Cách để làm điều này là đặt chúng lại với nhau thành một tệp zip. Đường dẫn đến các kết cấu bên trong tệp COLLADA phải liên quan đến vị trí của tệp .dae bên trong tệp lưu trữ.

Tệp zip đôi khi được đổi tên thành phần mở rộng .zae. Các COLLADA 1.5 spec xác định những chính thức trên trang 20, lặp đi lặp lại vào đây để hoàn thành:

Lưu Trữ Bao bì

Mở nhập khẩu và xuất khẩu, công cụ DCC phải hỗ trợ các định dạng .zae, đó là một kho lưu trữ zip của một hoặc một số. các tệp dae (tài liệu COLLADA) và tất cả nội dung được tham chiếu (họa tiết). Kho lưu trữ phải bao gồm tệp có tên manifest.xml, tệp được mã hóa XML có chứa phần tử <dae_root>. Phần tử này là mã hóa UTF8 của URI tương đối trỏ đến tệp .dae. Nếu URI chứa một đoạn thì phần tử được chỉ định là điểm bắt đầu để tải ứng dụng kho lưu trữ .zae. Nếu không, thành phần <scene> sẽ là điểm bắt đầu để tải ứng dụng lưu trữ .zae. Nếu không đáp ứng được các điều kiện này thì hành vi sẽ không được xác định.

Các URI trong tệp .zae có thể tham chiếu bất kỳ tệp nào khác trong lưu trữ sử dụng đường dẫn tương đối từ gốc của tệp lưu trữ, theo tiêu chuẩn URI .

Bản lưu trữ có thể bao gồm các lưu trữ khác (zip, rar, kmz, zae). URI để tham chiếu tài liệu bên trong kho lưu trữ lồng nhau, chính nó bên trong kho lưu trữ .zae, sẽ sử dụng tên của lưu trữ lồng nhau trong đường dẫn.

Ví dụ:

./internal_archive.zip/directory/document.dae#element 

Nó không phải là có thể tham khảo bên ngoài nội dung của một kho lưu trữ sử dụng một tương đối URI, nhưng nó là hợp lệ để tham khảo nội dung sử dụng một tuyệt đối URI, chẳng hạn như:

file:///other_directory/other_document.dae#element 
+0

Cảm ơn bạn đã trả lời detaild! Điều này thực sự hữu ích! – Fract

16

Mặc dù câu trả lời trước cho biết, hoàn toàn có thể nhúng hình ảnh trong chính tệp COLLADA. Trong phần tử <init_from> bạn sẽ thấy rằng bạn có thể chỉ định tên tệp bằng phần tử <ref> hoặc cách khác, bạn có thể chỉ định <hex format="PNG"> mà bạn có thể chỉ định dữ liệu hình ảnh dưới dạng chuỗi octet nhị phân được mã hóa thập lục phân. Điều này có phần kém hiệu quả về lưu trữ hơn là bao gồm tệp hình ảnh trong kho lưu trữ .zae (thực sự là tệp .zip với phần mở rộng khác và tệp siêu dữ liệu đặc biệt), tuy nhiên, do mã hóa thập lục phân.

Tôi biết rằng câu hỏi này là vài tháng tuổi nhưng tôi đã phải sửa câu trả lời trước.

+0

Cảm ơn bạn đã bình luận. Điều này rất hữu ích. – Fract

+2

Lưu ý rằng phần tử là dành cho Collada 1.5. Nếu bạn đang sử dụng Collada 1.4, thay vào đó, nó là một phần tử . Các thông số kỹ thuật (và lược đồ) có sẵn tại https://www.khronos.org/collada/ –

+0

Cảm ơn, điều này đã giúp rất nhiều. Đối với bất cứ ai khác đang tìm kiếm nó trên trang 315 của tài liệu ở đây: https://www.khronos.org/files/collada_spec_1_5.pdf – Seiche

Các vấn đề liên quan