节选自《论简化三维流水线和逼近真实流水线快速构造引擎(三)》 (http://bbs.gameres.com/showthread.asp?threadid=94927)
3DS MAX标准文本导出格式ASE的文件结构
如果你正在寻找它的几何体存放在哪的话,事实上,这不是描述具体信息层级关系的图示,而是类似XML的一种存储规范,它具有独立标签和嵌套标签,独立标签有名称和值表,而嵌套标签不仅可以嵌套子标签,还可以嵌套“子嵌套标签”,如此递归下去。这种格式固然带来很大的灵活性,但是非常浪费时间。需要对它们全部解套然后利用一致的算法,提供一个匹配标签名进行标签取出和迭代。
*3DSMAX_ASCIIEXPORT 200
*COMMENT "AsciiExport 版本 2.00 - Wed Sep 19 22:16:39 2007"
*SCENE {
*SCENE_FILENAME "box.max"
*SCENE_FIRSTFRAME 0
*SCENE_LASTFRAME 100
*SCENE_FRAMESPEED 30
*SCENE_TICKSPERFRAME 160
*SCENE_BACKGROUND_STATIC 0.00000000 0.00000000 0.00000000
*SCENE_AMBIENT_STATIC 0.00000000 0.00000000 0.00000000
}
第二行使用了双引号对值进行了限定,避免被分割成子单元。我们可以假设*SCENE块还可以内嵌子块,假如存在,便可将此子块作为独立单元进行递归分解。直到所有嵌套子块全部被遍历。