摘要:
3、Ogre中的单例类实现在Ogresinglton.h[代码] 需要使用 Singleton 的类,只要继承它即可: class MyClass : public Singleton<MyClass>{// ..} 但在OGRE 的源码中我们可以发现,从Singleton 继承的类都Override 了Singleton 的成员getSingleton 和 getSingleto... 阅读全文
摘要:
3、Ogre中的单例类实现在Ogresinglton.h[代码] 需要使用 Singleton 的类,只要继承它即可: class MyClass : public Singleton<MyClass>{// ..} 但在OGRE 的源码中我们可以发现,从Singleton 继承的类都Override 了Singleton 的成员getSingleton 和 getSingleto... 阅读全文
摘要:
游戏引擎中经常用到单例(singleton)类,即应用程序只存在该类的一个实例,下面是它的实现方式:1、c++ professional中的单例日志类:定义一个protected的static Logger sInstance;然后通过public静态函数static Logger& instance();返回sInstance,从而实现对该类中函数的访问。同时,该类的构造函数是私有的,我... 阅读全文
摘要:
前面的碰撞检测都是基于AABB的,并不精确, MOC利用射线场景查询,通过遍历Mesh的三角片,求得Mesh级别的碰撞检测,是个很好的轻量级碰撞检测工具。而且支持ETM和TSM两种地形。下载地址:http://www.artifexterra3d.com/另外该作者编写的编辑器也不错。 阅读全文
摘要:
通过运行时类型识别(RTTI), 我们能够使用基类的指针或引用来判定这些指针或引用实际指向对象的类型。这要求基类中至少要有一个虚函数。判定的方法包括dynamic_cast和typeid: 1、dynamic_cast 动态转化 它的格式为:dynamic_cast<T*>(basestr) 或 dynamic<T&>(basetype)basestr必须是0( 此... 阅读全文
摘要:
在3中,我提到检测到碰撞时候,后移一个单位,摄像机会抖动,现在通过记录摄像机上步移动偏移量,如果检测到碰撞则反移回来,可以解决这个问题。下面是修改后的代码:[代码] 阅读全文
摘要:
[代码] 程序会输出什么呢?A:tt2,而不是B:tt2,就是说B 虽然覆盖了tt1, 但B调用tt2时候,仍会调用A中tt2。 阅读全文
|