COLLADA (for ''COLLA''borative ''D''esign ''A''ctivity) is an interchange
file format
A file format is a Computer standard, standard way that information is encoded for storage in a computer file. It specifies how bits are used to encode information in a digital storage medium. File formats may be either proprietary format, pr ...
for interactive
3D applications. It is managed by the nonprofit technology consortium, the
Khronos Group
The Khronos Group, Inc. is an open, non-profit, member-driven consortium of 170 organizations developing, publishing and maintaining royalty-free interoperability standards for 3D graphics, virtual reality, augmented reality, parallel computat ...
, and has been adopted by
ISO as a publicly available specification, ISO/PAS 17506.
COLLADA defines an
open standard
An open standard is a standard that is openly accessible and usable by anyone. It is also a prerequisite to use open license, non-discrimination and extensibility. Typically, anybody can participate in the development. There is no single definitio ...
XML schema
An XML schema is a description of a type of Extensible Markup Language, XML document, typically expressed in terms of constraints on the structure and content of documents of that type, above and beyond the basic syntactical constraints imposed ...
for exchanging
digital asset
A digital asset is anything that exists only in digital form and comes with a distinct usage right. Data that do not possess that right are not considered assets.
''Digital assets'' include but are not exclusive to: digital documents, audible ...
s among various graphics
software applications that might otherwise store their assets in incompatible file formats. COLLADA documents that describe digital assets are XML files, usually identified with a .dae (digital asset exchange)
filename extension
A filename extension, file name extension or file extension is a suffix to the name of a computer file (e.g., .txt, .docx, .md). The extension indicates a characteristic of the file contents or its intended use. A filename extension is typically ...
.
History
Originally created at
Sony Computer Entertainment
Sony Interactive Entertainment (SIE), formerly known as Sony Computer Entertainment (SCE), is a multinational video game and digital entertainment company wholly owned by multinational conglomerate Sony. The SIE Group is made up of two legal co ...
by Rémi Arnaud and Mark C. Barnes, it has since become the property of the
Khronos Group
The Khronos Group, Inc. is an open, non-profit, member-driven consortium of 170 organizations developing, publishing and maintaining royalty-free interoperability standards for 3D graphics, virtual reality, augmented reality, parallel computat ...
, a member-funded industry consortium, which now shares the copyright with Sony. The COLLADA schema and specification are freely available from the Khronos Group. The COLLADA DOM uses th
SCEA Shared Source License 1.0
Several graphics companies collaborated with
Sony
, commonly stylized as SONY, is a Japanese multinational conglomerate corporation headquartered in Minato, Tokyo, Japan. As a major technology company, it operates as one of the world's largest manufacturers of consumer and professional ...
from COLLADA's beginnings to create a tool that would be useful to the widest possible audience, and COLLADA continues to evolve through the efforts of Khronos contributors. Early collaborators included
Alias Systems Corporation,
Criterion Software,
Autodesk, Inc., and
Avid Technology. Dozens of commercial game studios and
game engines have adopted the standard.
In March 2011, Khronos released the COLLADA Conformance Test Suite (CTS). The suite allows applications that import and export COLLADA to test against a large suite of examples, ensuring that they conform properly to the specification. In July 2012, the CTS software was released on
GitHub
GitHub, Inc. () is an Internet hosting service for software development and version control using Git. It provides the distributed version control of Git plus access control, bug tracking, software feature requests, task management, co ...
, allowing for community contributions.
ISO/PAS 17506:2012 ''Industrial automation systems and integration -- COLLADA digital asset schema specification for 3D visualization of industrial data'' was published in July 2012.
Software tools
COLLADA was originally intended as an intermediate format for transporting data from one
digital content creation (DCC) tool to another application. Applications exist to support the usage of several DCCs, including:
Game engines
Originally intended as an interchange format, many game engines now support COLLADA, including:
Applications
Some games and 3D applications have started to support COLLADA:
Libraries
There are several libraries available to read and write COLLADA files under programmatic control:
COLLADA DOM(
C++) - The COLLADA DOM is generated at compile-time from the COLLADA schema. It provides a low-level interface that eliminates the need for hand-written parsing routines, but is limited to reading and writing only one version of COLLADA, making it difficult to upgrade as new versions are released.
FCollada(C++) - A utility library available from
Feeling Software
Feelings are subjective self-contained phenomenal experiences. According to the ''APA Dictionary of Psychology'', a feeling is "a self-contained phenomenal experience"; and feelings are "subjective, evaluative, and independent of the sensations ...
. In contrast to the COLLADA DOM, Feeling Software's FCollada provides a higher-level interface. FCollada is used i
ColladaMayaColladaMax and several commercial game engines. The development of the open source part was discontinued by Feeling Software in 2008. The company continues to support its paying customers and licenses with improved versions of its software.
OpenCOLLADA(C++) - The OpenCOLLADA project provides plugins for
3ds Max and
Maya
Maya may refer to:
Civilizations
* Maya peoples, of southern Mexico and northern Central America
** Maya civilization, the historical civilization of the Maya peoples
** Maya language, the languages of the Maya peoples
* Maya (Ethiopia), a popu ...
and the sources of utility libraries which were developed for the plugins.
pycollada (
Python) - A Python module for creating, editing and loading COLLADA. The library allows the application to load a COLLADA file and interact with it as a Python object. In addition, it supports creating a COLLADA Python object from scratch, as well as in-place editing.
Scene Kit(
Objective-C
Objective-C is a general-purpose, object-oriented programming language that adds Smalltalk-style messaging to the C programming language. Originally developed by Brad Cox and Tom Love in the early 1980s, it was selected by NeXT for its N ...
) - An Objective-C framework introduced in
OS X 10.8 Mountain Lion
OS X Mountain Lion (version 10.8) is the ninth major release of macOS, Apple Inc.'s desktop and server operating system for Macintosh computers. OS X Mountain Lion was released on July 25, 2012, for purchase and download through Apple's Mac App ...
that allows reading, high-level manipulation and display of COLLADA scenes.
*
GLGE (
JavaScript
JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
) - a JavaScript library presenting COLLADA files in a web browser using
WebGL.
*
Three.js (JavaScript) - a 3D Javascript library capable of loading COLLADA files in a web browser.
*
StormEngineC
StormEngineC is a 3D computer graphics, 3D graphics library written in JavaScript utilizing several HTML5 features such as WebGL, WebCL, and WebSockets. The library provides an easy way to load objects in the OBJ or Collada format and adds them ...
(
JavaScript
JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
) - Javascript 3D graphics library with option of loading COLLADA files.
Physics
As of version 1.4,
physics
Physics is the natural science that studies matter, its fundamental constituents, its motion and behavior through space and time, and the related entities of energy and force. "Physical science is that department of knowledge which rel ...
support was added to the COLLADA standard. The goal is to allow content creators to define various physical attributes in visual scenes. For example, one can define surface material properties such as friction. Furthermore, content creators can define the physical attributes for the objects in the scene. This is done by defining the rigid bodies that should be linked to the visual representations. More features include support for ragdolls, collision volumes, physical constraints between physical objects, and global physical properties such as gravitation.
Physics middleware products that support this standard include
Bullet Physics Library,
Open Dynamics Engine
The Open Dynamics Engine (ODE) is a physics engine written in C/C++. Its two main components are a rigid body dynamics simulation engine and a collision detection engine. It is free software licensed both under the BSD license and the LGPL ...
,
PAL and NVIDIA's
PhysX
PhysX is an open-source realtime physics engine middleware SDK developed by Nvidia as a part of Nvidia GameWorks software suite.
Initially, video games supporting PhysX were meant to be accelerated by PhysX PPU ( expansion cards designed by ...
. These products support by reading the abstract found in the COLLADA file and transferring it into a form that the middleware can support and represent in a physical simulation. This also enables different middleware and tools to exchange physics data in a standardized manner.
The
Physics Abstraction Layer
The Physics Abstraction Layer (PAL) is an open-source cross-platform physical simulation API abstraction system. It is similar to a physics engine wrapper, however it is far more flexible providing extended abilities. PAL is free software, relea ...
provides support for COLLADA Physics to multiple physics engines that do not natively provide COLLADA support including
JigLib,
OpenTissue,
Tokamak physics engine
The Tokamak Game Physics SDK is an open-source physics engine.
At its beginnings, Tokamak was free for non commercial uses only. Since May 2007, it has become open sourced under a BSD License. Now it can be used under BSD or Zlib license, in ...
and True Axis.
PAL also provides support for COLLADA to physics engines that also feature a native interface.
Versions
* 1.0: October 2004
* 1.2: February 2005
* 1.3: June 2005
* 1.4.0: January 2006; added features such as character skinning and
morph targets, rigid body dynamics, support for OpenGL ES materials, and shader effects for multiple shading languages including the
Cg programming language,
GLSL, and
HLSL. First release through Khronos.
* 1.4.1: July 2006; primarily a patch release.
* 1.5.0: August 2008; added
kinematics and
B-rep as well as some FX redesign and
OpenGL ES
OpenGL for Embedded Systems (OpenGL ES or GLES) is a subset of the OpenGL computer graphics rendering application programming interface (API) for rendering 2D and 3D computer graphics such as those used by video games, typically hardware-ac ...
support.
Formalised as ISO/PAS 17506:2012.
See also
*
glTF
glTF is a standard file format for three-dimensional scenes and models. A glTF file uses one of two possible file extensions: .gltf (JSON/ASCII) or .glb ( binary). Both .gltf and .glb files may reference external binary and texture resources. A ...
(Graphics Library Transmission Format)
*
FBX
FBX (''Filmbox'') is a proprietary file format () developed by Kaydara and owned by Autodesk since 2006. It is used to provide interoperability between digital content creation applications. FBX is also part of Autodesk Gameware, a series of vid ...
(Filmbox)
*
List of vector graphics markup languages
*
Open Game Engine Exchange
The Open Game Engine Exchange (OpenGEX) format is a text-based file format designed to facilitate the transfer of complex 3D scene data between applications such as modeling tools and game engines. The OpenGEX format is built upon the data structu ...
(OpenGEX)
*
Universal Scene Description (USD)
*
Universal 3D (U3D)
*
VRML
*
WebGL
*
X3D (Extensible 3D Graphics)
References
External links
*
COLLADA DOMOpenCOLLADA ProjectpycolladaThe Open-Asset-Importer-Lib(ASSIMP)
GLC-Player
{{DEFAULTSORT:Collada
2004 software
3D graphics file formats
3D graphics software
CAD file formats
Graphics standards
XML-based standards