OGRE_API
文章平均质量分 76
lengbingteng
这个作者很懒,什么都没留下…
展开
-
Root简述
ogre::root是ogre的入口类,关注它其实就是关注ogre的初始化过程,还有就是从整体把握ogre有那些功能模块。 初始化:m_root = OGRE_NEW Ogre::Root("E:\\study\\ogre\\game\\Debug\\config\\plugins.cfg","E:\\study\\ogre\\game\\Debug\\config\\ogre.cfg...原创 2012-12-17 00:40:46 · 167 阅读 · 0 评论 -
场景的管理 :MovableObject
MovableObject :是可移动的对象,对象是挂接到节点上的,它才是场景中我们真实看的见的东西。 父类:1.AnimableObject : virtual AnimableValuePtr createAnimableValue(const String& valueName) { OGRE_EXCEPT(Exception::ERR_I...原创 2012-12-26 12:56:15 · 434 阅读 · 0 评论 -
动画框架:Animation
在说API之前先了解一下动画的原理:以一个人行走为例,要想使人能够行走,必须在这个人模型上设置一些特真点,然后让这些点在每一帧按照一定的规则进行动,从而改变整个模型的状态。在ogre里面,Keyframe类描述的是一个特征点(一个结点、一根骨头、一个顶点)的某一个关键帧的状态(位置、缩放、朝向等)和对应的时间点。一个可驱动点的所有keyframe组合成一个track,每个可驱动点都有一个他...原创 2012-12-24 22:40:09 · 440 阅读 · 0 评论 -
动画框架:SceneManager
SceneManager:1.动画对象的管理:AnimationList mAnimationsList;AnimationStateSet mAnimationStates;Animation* SceneManager::createAnimation(const String& name, Real length){ OGRE_LOCK_MUTEX(mAn...原创 2012-12-24 13:14:53 · 135 阅读 · 0 评论 -
场景的管理 :SceneManagerEnumerator
如果说root是需要关注的第一个类,那么Scene必须是我们紧接着需要关注的模块,这个模块把各种资源有机的组合到一起。如果说root的主要作用是初始化,那么Scene就是对整个场景的组织和渲染,当然它不会涉及到具体的操作,但是它会调用一些具体的操作。 SceneManagerEnumerator:Scene模块的入口,这个类的出现并不以外,因为场景的管理有好多种方案,以外的是它不...原创 2012-12-21 23:36:00 · 113 阅读 · 0 评论 -
场景的管理 :RenderQueue
RenderQueue渲染队列是送给渲染系统渲染的最终结果集,本质上它与查询队列没什么不同,但由于它的内部做过多次分类排序,所以它查询队列复杂。 RenderQueue :1.RenderQueueGroupID :即是key又是优先级别enum RenderQueueGroupID { /// Use this queue for objects ...原创 2012-12-21 17:45:23 · 347 阅读 · 0 评论 -
场景的管理 :SceneManager
SceneManager是场景管理里面内容最多的一个类,不止是内容多而是也没有太大的规律,一方面它要把各种模块和功能汇集在一起,另一方面它要让使用者更简洁,导致它自己不是太好看。要想看明白这个类,把握住一点,你想用它来干嘛。 SceneManager : static uint32 WORLD_GEOMETRY_TYPE_MASK; // 世界几何 stati...原创 2012-12-20 03:08:56 · 343 阅读 · 0 评论 -
场景的查询框架 :SceneQuery
构建一个场景一般都是比较复杂的,像这样一个复杂的场景我们是不会直接拿去渲染的,这就涉及到我们为了达到各种目的对现有的场景各种目的进行切割,最终我们会使用我们切割的这部分内容。 SceneQuery:这个类里面需要关注的是它定义的一个WorldFragment的结构体,这个结果体描述的是世界整体的一个部分。 enum WorldFragmentType { // Wo...原创 2012-12-19 16:33:40 · 413 阅读 · 0 评论 -
场景的数据结构 :Node&Entity
想了解Scene,了解其数据结构是必不可少的。Scene中有种对象,一个种是Node,它以一种树形结构保存场景中所有节点的当前状态(有位置缩放等数据指标)。另一种是Entity,它挂接在Node上,采用这种方式使得场景的内容的设计变的灵活。 Node:1.构造Node::Node(const String& name) : mParent(0), // 父...原创 2012-12-19 14:53:30 · 748 阅读 · 0 评论 -
场景的管理 :Entity
Entity 的定位:在ogre里面Entity和诸多类似Entity的类一样,它们是场景中资源的实际掌控者。主要包括有网格,骨骼动画,以及对lod的维护。 1.资源加载:void Entity::_initialise(bool forceReinitialise) { if (forceReinitialise) _deinitialise(); // ...原创 2012-12-26 23:19:55 · 330 阅读 · 0 评论