Ogre 编码&设计原理

编码&设计原理
Coding&Design philosophy
英文原文: http://www.ogre3d.org/wiki/index.php/Coding%26Design_philosophy

编码/设计原理

类的继承

    这里有一张表 , 显示了类的继承关系, 也许可以一些概念更清晰些
    虽然Ogre是一个场景图表, 但是它的光源, 相机和一些东西并不继承自节点. 这些东西并不需要挂接至场景节点(虽然他们可以挂接)

自定义对象

    当创建重复使用的自定义对象时使用Movable Object Factories(可移动对象工厂), 例如粒子系统, 水网格(mesh)(例子中的water demo可以重写为可移动对象)
        这使得创建和管理更加简单
        修改和重新使用的时候更容易操作

场景管理器

    当你需要单独的场景管理时写一个自定义场景管理器
        例如 已存在的BSP, Octree(八叉树) 场景管理器
        自定义的场景管理器很少需要, 八叉树管理器对于大多数情况是非常棒的缺省选择
        在同一时间内, 不能运行多个场景管理器

场景定义

    通常使用dotScene XML格式
    大多数模型制作者可以导出场景为该模式
    在CVS中的OgreAddons源码找到dotScene例子实现

主要循环/初始化

    你无需使用FrameListener更新每个帧, 如你需要循环的时候可以手工调用渲染循环
    你无需在所有的demo中使用ExampleApplication, 这也许会帮助或者阻碍新手. 可以见下面修改的例子, 可以帮助更清晰的理解ogre需要初始化什么内容
        非常干净的代码, 使用FrameListener进行渲染器更新
       'Hello world'例子
        手工渲染循环例子(只用于window)
        一个完整的框架, 统合了许多的库

你可能感兴趣的:(xml,框架,object,cvs,网格)