今天开始看scene impl部分。场景管理部分是该引擎的核心,我们要开始最精彩的部分落!当然首先从内容最少的文件开始入手。CSeneNodeAnimatorFlyCircle.h/.cpp,实现了转换动画场景结点的类。CSceneNodeAnimatorRotation.h/.cpp和其一样,也是场景结点的动画转换运算。
在CStaticMeshOBJ.h/.cpp中,声明了一个CStaticMeshOBJ类,用于处理网格,如:载入obj文件,返回帧数,返回细节层次的网格等等。事实上这个类只考虑静态网格的情况。另外还实现了5个处理字符串的成员函数,用于截取单词。
在CTestSceneNode.h/.cpp中,声明的CTestSceneNode类实现了渲染节点、获取节点的边界盒、获取材质等与该结点相关的操作。貌似这个类只是用测试一下场景节点的渲染情况,该类只是渲染了一个正方体,场景节点也只使用了一种材质。
接下来是八叉树(Octree)了,在OctTree.h中实现了一个八叉树的模板类。八叉树是一种用于描述三维空间的树状数据结构。八叉树的每个节点表示一个正方体的体积元素,每个节点有八个子节点&#