COLLADA™ 是面向交互式
3D 应用程序的基于 XML 的
数字资产交换方案,使 3D 创作应用程序可以自由地交换数字资产而不损失信息 - 使多种DCC和3D处理
软件包可以组合成强大的工具链管道。
独特的交互模式提供了广泛全面的视觉编译。COLLADA FX支持使用 OpenGL ES 着色语言创作和封装着色器,以使一流的 3D 创作工具可以有效协作创建 OpenGL / OpenGL ES 应用程序和资产
COLLADA是一个开放的标准,最初用于3D软件数据交换,由SCEA发起,现在则被许多著名厂家支持如Autodesk、XSI等。COLLADA不仅仅可以用于建模工具之间交换数据之用,也可以作为场景描述语言用于小规模的
实时渲染。因为COLLADA DOM拥有丰富的内容用于表现场景中的各种元素,从多边形几何体到摄像机无所不包。我们可以通过COLLADA DOM库来进行场景文件的读取与处理操作。COLLADA DOM的编程方式类似COM。
COLLADA DOM在操作过程中几乎都是与指针打交道,在开始不熟悉的情况下频频访问违规出错等等是很正常的,只要注意老老实实的调用getElementName 、getTypeName、getCount查看当前操作对象的名称和元素数据,而后逐步的找到自己需要的资源。
COLLADA DOM的底层使用的是SAX进行XML文件的访问操作,构建于LibXML2库之上,所以我推荐从DAE
文件头开始依次处理Geometry、 Visual Scene等等,减少运行库在来回搜索的损耗。默认COLLADA DOM是
静态库,导致链接后的程序着实非常巨大,所以推荐使用
动态链接。