Điều gì đã xảy ra với COLLADA?


13

Vài năm trước, có vẻ như COLLADA sẽ là một vấn đề lớn, cuối cùng có thể là một định dạng khá chuẩn để đưa tài sản 3D từ gói DCC vào hệ thống công cụ của trò chơi. Và nó có vẻ như là một lựa chọn tốt cho một nhà phát triển độc lập không muốn tự khóa mình vào một gói 3D bằng cách viết các plugin xuất tùy chỉnh.

Nhưng tôi đã không nghe nhiều về nó gần đây. Và Feeling Software, người đã hỗ trợ định dạng với các nhà xuất khẩu Max / Maya của họ và FCollada lib dường như đã rút bất kỳ phiên bản miễn phí nào của các công cụ đó.

Có phải COLLADA đang sử dụng nhiều trong những ngày này? Có bất kỳ lib / công cụ miễn phí / rẻ tiền nào để hỗ trợ xử lý định dạng này không, hay mọi người chỉ đang đọc XML thô?

Hoặc có một lựa chọn tốt hơn những ngày này - nói cho một nhà phát triển độc lập muốn đưa các mô hình / hoạt hình từ tiềm năng Max, Maya hoặc Blender vào công cụ của họ? - FBX? Thứ gì khác?

Câu trả lời:


5

Liên quan đến các công cụ, kinh nghiệm của tôi là giải pháp phổ biến để truy cập các tệp .dae là collada-dom . Nó chỉ phân tích cú pháp xml và cung cấp cho bạn quyền truy cập vào cấu trúc cây. Được phát triển đầu tiên bởi Sony, giờ đây nó là một dự án nguồn mở (và triển khai tham chiếu).

Gần đây, opencollada dường như được chú ý, nhưng tôi chưa bao giờ sử dụng nó. Nó đi kèm với các plugin cho 3DS, Maya, Blender và SDK.

Nhà máy lọc dầu COLLADA là một công cụ để xử lý .daecác tệp (ví dụ: bề mặt tam giác).

Liên quan đến việc áp dụng nó, hầu hết các công cụ tạo chính thống (3DS, Maya, Houdini, Blender, Sketchup) đều hỗ trợ nó theo mặc định. Tuy nhiên, có thể có kết quả xấu khi nhập mô hình xuất giữa các phần mềm khác nhau. Bạn cũng phải cẩn thận với các phiên bản đồng thời khác nhau tồn tại trong tự nhiên (1.3, 1.4, 1.4.1).

FWIW, tài khoản twitter chính thức của COLLADA thường đưa ra thông báo về các công cụ và ứng dụng có hỗ trợ của COLLADA. Điều này có thể đưa ra một ý tưởng về sự hỗ trợ trong ngành.

Theo kinh nghiệm của tôi, đó là một cách đủ tốt để trao đổi dữ liệu giữa các hệ thống. Từ quan điểm của gamedev, tôi không nghĩ rằng đó là một giải pháp vượt trội. Nó phụ thuộc vào những gì bạn làm, nhưng tại thời điểm này, một nhà nhập khẩu xử lý tệp (hoặc DOM) cho công cụ của bạn có thể là cần thiết. Tôi cũng đã chứng kiến ​​các nhà nhập khẩu rất chậm, vì vậy, đối với một công cụ trò chơi, tôi sẽ đi với một công cụ chuyển đổi COLLADA, thay vì một nhà nhập khẩu.


4
Mọi người dường như bỏ lỡ một chút khi nó không phải là định dạng mà bạn tải tất cả các mô hình trò chơi vào trò chơi của mình. Đây là định dạng mà bạn có thể lưu trữ và dễ dàng chia sẻ giữa các công cụ tạo nội dung. Trò chơi của bạn luôn được cho là có định dạng tối ưu hóa riêng mà bạn chuyển đổi từ collada.
jsimmons

... Và là một định dạng để chia sẻ dữ liệu giữa các công cụ, đó là một ý tưởng tồi tệ ngoại trừ các bộ dữ liệu tầm thường nhất. Trừ khi tất cả các gói 3D sẽ hiển thị mọi tệp COLLADA giống nhau, bạn sẽ không nhận được các lợi ích gói chéo được chào hàng.
dash-tom-bang

10

Theo quan điểm của tôi, COLLADA quá phức tạp. Bị các nhà thiết kế cố gắng làm cho nó xử lý mọi sự kết hợp có thể hiểu được của tài sản 3D; ví dụ: mọi định dạng và cấu hình đỉnh / chỉ mục có thể.

Nghe có vẻ hay nhưng trong thực tế, điều này đặt một gánh nặng lớn lên bất kỳ phần mềm nào cần đọc định dạng.

Không có ích gì khi mọi công cụ được cho là tương thích đều có những ý tưởng riêng về những thứ như trật tự quanh co, độ thuận trục v.v ... Cố gắng sử dụng nó như một định dạng trao đổi giữa các DCC đã đưa bạn vào một thế giới hình học lộn ngược thu nhỏ, UV bị vỡ, bạn gọi tên nó.

Những gì chúng ta cần là một định dạng được thiết kế đơn giản, đáp ứng 90% nhu cầu theo một cách duy nhất, chính tắc.


Ngay bây giờ cho các lựa chọn cho tài sản trò chơi là .obj (nếu bạn không nhớ không có hoạt hình và không nén), .x (nếu bạn đang sử dụng DirectX) hoặc một số định dạng độc quyền. Ps tôi muốn thêm một người bạn của tôi đang làm việc về một thứ gọi là "OpenMDL" trông có vẻ rất hứa hẹn.
hiệp sĩ666

3
Thật vậy, cộng với không có libs tiêu chuẩn và những cái có sẵn là lỗi không giúp được. COLLADA quá cồng kềnh IMO và đang cố gắng trở thành tất cả mọi thứ cho tất cả mọi người - điều đó không thể đánh gục ý tưởng đó là một điều đáng khen ngợi
z Zebrabox

2

Tôi nghĩ rằng COLLADA sẽ / có thể hữu ích hơn nhiều nếu nó thực sự có một triển khai chuẩn và mở để đọc và viết định dạng, bên cạnh định nghĩa XML khá đáng sợ.

Sức mạnh của nó cũng là sự thất bại của nó - khả năng mô tả hầu hết mọi thứ, và theo vô số cách khác nhau, nghe có vẻ tuyệt vời từ quan điểm xuất khẩu nhưng là một PITA để nhập khẩu và có ý nghĩa.

Tuy nhiên, nếu bạn kiên trì, bạn sẽ có được một định dạng đại diện cho hầu hết mọi thứ bạn có thể cần, được hỗ trợ bởi khá nhiều công cụ và có thể được mở rộng.

Tất cả đều quá hấp dẫn với một định dạng đơn giản hơn, và sau đó đi được nửa chặng đường phát triển của bạn, bạn sẽ nhận ra rằng bạn cần một số dữ liệu bổ sung và không có cách nào để có được nó.

Ngoài ra, nếu điều này được sử dụng trong một đường ống sản xuất nội bộ, thay vì phát hành chung, bạn có thể giảm bớt định nghĩa và chỉ hỗ trợ những gì thực sự xuất phát từ gói bạn đang sử dụng, thay vì cố gắng quá chung chung .

Vì vậy, vâng, nó thiếu sót và phức tạp, nhưng nó hoạt động, và không có nhiều lựa chọn ngoài kia.


1
Nếu bạn viết một nhà xuất khẩu và sau đó không thể tìm ra cách xuất một số dữ liệu mới mà bạn cần, thì bạn không nên viết công cụ. Chỉ cần nói.
dash-tom-bang

2

Tôi biết chủ đề này được gắn cờ là 'đã giải quyết', nhưng IMO bạn nên xem xét FBX. Autodesk đang sử dụng định dạng đó và đó là định dạng trao đổi của tất cả các chương trình 3D chính.

Vì vậy, đừng bận tâm với Collada.

Nó bồng bềnh, không trực quan - và không được hỗ trợ bởi những người chơi chính.

Đó là Autodesk - họ đang mua khá nhiều ứng dụng 3D ngoài kia.

Autodesk FBX SDK: http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=7478532


2
Vâng, điều đó không đúng! Việc khóa tất cả mọi người vào một định dạng tệp đóng độc quyền chỉ giúp Autodesk
zebrabox

Nó không được hỗ trợ bởi ai đó muốn khóa bạn vào các công cụ của riêng họ. Sự ngạc nhiên! Tuy nhiên, một người chơi chính sử dụng collada là Epic Games nói riêng về UE3.
jsimmons

Nghiêm túc mà nói, FBX có chính xác vấn đề giống như rất nhiều định dạng "hiện đại" khác: Đó là độc quyền. Điều đó làm cho nó không phải là bộ khởi động hoàn chỉnh để sử dụng như một "định dạng chuẩn" hoặc thực sự cho bất kỳ ai không muốn bị khóa trong một nhà cung cấp duy nhất.
snogglethorpe
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.