Che cosa è successo alla COLLADA?


13

Qualche anno fa sembrava che COLLADA sarebbe stata una cosa abbastanza grande, forse alla fine un formato abbastanza standardizzato per portare risorse 3D da un pacchetto DCC nella pipeline di strumenti di un gioco. E sembrava una buona opzione per uno sviluppatore indipendente che non voleva bloccarsi in un singolo pacchetto 3D scrivendo plugin di esportazione personalizzati.

Ma non ne ho sentito parlare molto di recente. E Feeling Software, che aveva supportato il formato con i loro esportatori Max / Maya e la lib FCollada sembra aver ritirato qualsiasi versione gratuita di quegli strumenti.

COLLADA sta vedendo molto uso in questi giorni? Ci sono lib / strumenti gratuiti / economici per aiutare a gestire il formato, o le persone stanno semplicemente leggendo l'XML grezzo?

O c'è un'opzione migliore in questi giorni - diciamo per uno sviluppatore indipendente che vuole ottenere modelli / animazioni da potenzialmente Max, Maya o Blender nel loro motore? - FBX? Qualcos'altro?

Risposte:


5

Per quanto riguarda gli strumenti, la mia esperienza è che la soluzione popolare per accedere ai file .dae è collada-dom . Analizza solo l'xml e ti dà accesso alla struttura ad albero. Sviluppato originariamente da Sony, ora è un progetto open source (e l'implementazione di riferimento).

Recentemente, opencollada sembra attirare l'attenzione, ma non l'ho mai usato. Viene fornito con plugin per 3DS, Maya, Blender e un SDK.

La raffineria COLLADA è uno strumento per elaborare i .daefile (ad es. Triangolare le superfici).

Per quanto riguarda la sua adozione, la maggior parte degli strumenti di creazione tradizionali (3DS, Maya, Houdini, Blender, Sketchup) la supportano per impostazione predefinita. Tuttavia, è possibile ottenere risultati negativi durante l'importazione di un modello esportato tra diversi software. Devi anche stare attento con le varie versioni simultanee esistenti in natura (1.3, 1.4, 1.4.1).

FWIW, l' account twitter ufficiale di COLLADA fa spesso annunci di strumenti e applicazioni che hanno ottenuto il supporto COLLADA. Questo può dare un'idea del supporto nel settore.

Nella mia esperienza, è un modo abbastanza buono per scambiare dati tra sistemi. Da un punto di vista di gioco, non penso che sia una buona soluzione pronta all'uso. Dipende da cosa fai, ma a questo punto è probabile che sia necessario un importatore che elabora il file (o il DOM) per il tuo motore. Ho anche assistito a importatori molto lenti, quindi per un motore di gioco, andrei con un convertitore COLLADA, piuttosto che un importatore.


4
Le persone sembrano mancare un po 'dove non dovrebbe essere un formato con cui carichi tutti i tuoi modelli di gioco nel tuo gioco. È un formato che puoi archiviare e condividere facilmente tra gli strumenti di creazione dei contenuti. Il tuo gioco doveva sempre avere il suo formato ottimizzato in cui convertire, da collada.
jsimmons,

... e come formato per condividere i dati tra strumenti, è un'idea terribile, tranne per i set di dati più banali. A meno che tutti i pacchetti 3D non renderanno tutti i file COLLADA uguali, non si ottengono i vantaggi del pacchetto multiplo che sono stati propagandati.
dash-tom-bang,

10

Secondo me, COLLADA era troppo complesso. Soffrito dai progettisti che cercano di far sì che gestisca ogni possibile combinazione di risorse 3D; ad es. ogni possibile formato e configurazione vertice / indice.

Sembra fantastico, ma in pratica questo ha comportato un enorme onere per qualsiasi software che fosse necessario per leggere il formato.

Non ha aiutato il fatto che ogni strumento apparentemente compatibile avesse le proprie idee su cose come l'ordine di avvolgimento, la mano assiale, ecc. Cercare di usarlo come formato di interscambio tra DCC ti ha immerso in un mondo di geometria rovesciata in miniatura, UV rovinati, tu nominalo.

Ciò di cui abbiamo bisogno è un formato dal design semplice che copra il 90% delle esigenze in un unico modo canonico.


In questo momento le scelte per le risorse di gioco sono .obj (se non ti dispiace non avere animazione e nessuna compressione), .x (se stai usando DirectX) o un formato proprietario. Ps Vorrei aggiungere che un mio amico sta lavorando a qualcosa chiamato "OpenMDL" che sembra davvero molto promettente.
knight666,

3
In effetti, inoltre, non esistono librerie standard e quelle disponibili sono buggy non aiuta. COLLADA è troppo gonfiore di IMO e sta cercando di essere tutto per tutti - non è per battere l'idea che è lodevole
zebrabox

2

Penso che COLLADA sarebbe / potrebbe essere molto più utile se avesse effettivamente un'implementazione standard e aperta per la lettura e la scrittura del formato, oltre alla definizione XML abbastanza spaventosa.

Il suo potere è anche il suo fallimento: la capacità di descrivere quasi tutto, e in una moltitudine di modi diversi, suona benissimo dal punto di vista dell'esportazione, ma è un PITA da importare e dare un senso.

Tuttavia, se perseveri, ottieni un formato che rappresenta praticamente tutto ciò di cui potresti avere bisogno, è supportato da diversi strumenti e può essere esteso.

È fin troppo allettante andare con un formato più semplice, e poi a metà dello sviluppo ti renderai conto che hai bisogno di alcuni dati extra e non c'è modo di ottenerli.

Inoltre, se questo è per l'uso in una pipeline di produzione interna, piuttosto che per una versione generale, è possibile ridurre la definizione e supportare solo ciò che effettivamente esce dai pacchetti che si stanno utilizzando, piuttosto che cercare di essere eccessivamente generici .

Quindi sì, è imperfetto e complesso, ma funziona e non ci sono molte opzioni là fuori.


1
Se scrivi un esportatore e in seguito non riesci a capire come esportare alcuni nuovi dati di cui hai bisogno, non dovresti scrivere strumenti. Sto solo dicendo.
dash-tom-bang,

2

So che questo argomento è contrassegnato come 'risolto', ma IMO dovresti esaminare FBX. Autodesk utilizza questo formato ed è il formato di scambio di tutti i principali programmi 3D.

Quindi non preoccuparti di Collada.

È gonfio, non intuitivo - e non supportato dai principali giocatori.

Che è Autodesk: stanno acquistando praticamente tutte le app 3D là fuori.

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


2
Sì, questo non lo rende giusto! Bloccare tutti in un formato di file chiuso proprietario aiuta solo Autodesk
zebrabox

Non è supportato da qualcuno che vuole rinchiuderti nei propri strumenti. Sorpresa! Un giocatore importante che utilizza Collada, tuttavia, è Epic Games in particolare UE3.
jsimmons,

Seriamente, FBX ha esattamente lo stesso problema di tanti altri formati "moderni": è proprietario. Ciò lo rende un completo non-principiante per l'uso come "formato standard" o davvero per chiunque non voglia essere bloccato in un singolo fornitore.
snogglethorpe,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.