上一页 1 ··· 46 47 48 49 50 51 52 53 54 ··· 56 下一页
  2011年4月1日
摘要: 对Ogre的资源管理子系统需要注意的是:1.它不会到子目录中去寻找,因此,你必须告诉它.2.文件夹的名字是没有意义的.这就是说,如果在不同的文件夹内,有两个文件重名的话,也是不行的.引自http://www.cppblog.com/dreamwaylai/articles/61135.html同一个资源组肯定不能有重名资源了对于不同资源组呢有朋友说 不同资源组用了同名资源也不好使 他不好使的意思是说 对不同资源组的同名资源的使用都导致 用了同一份资源按此http://blog.csdn.net/miaolinvip/archive/2008/08/22/2816770.aspx我有一个猜想 1 阅读全文
posted @ 2011-04-01 11:31 minggoddess 阅读(432) 评论(1) 推荐(0) 编辑
  2011年3月14日
摘要: 资源的状态资源在ResourceGroupManager中可有如下状态:a) Undefined:在此状态Resource没有被实例化。此时Resource的路径已经加入资源路径,但只在文件系统中,Ogre对Resource不做任何处理,即OGRE不会加载在此状态的资源。进入此状态的条件:当调用ResourceGroupManager的addResourceLocation方法时;当资源本是有效的实例,但是调用了ResourceManager::remove或ResourceGroupManager::clearResourceGroup后。b) Declared:此时Resource仍没有被 阅读全文
posted @ 2011-03-14 15:32 minggoddess 阅读(731) 评论(1) 推荐(0) 编辑
  2011年3月2日
摘要: 主题索引:一、剖析C++标准库智能指针(std::auto_ptr) 1.Do you Smart Pointer? 2.std::auto_ptr的设计原理 3.std::auto_ptr高级使用指南 4.你是否觉得std::auto_ptr还不够完美?二、C++条件,寻找构造更强大的智能指针(Smart Pointer)的 策略 1.支持引用记数的多种设计策略 2.支持处理多种资源 3.支持Subclassing 4.支持多线程条件下,线程安全的多种设计策略 5.其它多种特殊要求下,再构造三、Generic Programming基础技术和Smart Pointer 1.回首处理资源中的T 阅读全文
posted @ 2011-03-02 16:06 minggoddess 阅读(538) 评论(2) 推荐(0) 编辑
  2011年2月24日
摘要: 1,entity是没有getPosition的2,node的默认position是原点3,材质脚本中定义的程序段中的source文件名后缀必须与定义的shader文件类型匹配。如:vertex_program Ogre/CelShadingVP1hlsl{ source Example_CelShading1.hlsl entry_point main_vp targetvs_2_0}注意target是hlsl中独占,cg中是profile,且参数不同4,Plugin_CgProgramManager_d.dll 插件一定要有cg.dll配合5,OGRE不支持的中文路径用下面解决:setloc 阅读全文
posted @ 2011-02-24 17:03 minggoddess 阅读(381) 评论(0) 推荐(0) 编辑
摘要: 天龙客户端大致的结构划分和功能描述说明UI系统 CEGUI UI基础系统 CEGUI渲染器 Expat XML解析器 CEGUI依赖,估计编写者不喜欢用 FreeType2 跨平台、开源的字体渲染器 用于绘制中文脚本 luaPlus3D显示引擎 Ogre 开源的高效渲染引擎 使用OGRE确实是很高的一步棋碰撞检测 Opcode 开源,占用内存少 我们可考虑用bullet,ODE,或其他(按实际要求)TinyXML XML的解析工具 游戏中使用的XML解析器,Code们熟悉的Music&Sound Effect FMOD SDK即可struct定义结构全部大写?WX编写系统 WXClie 阅读全文
posted @ 2011-02-24 17:00 minggoddess 阅读(653) 评论(0) 推荐(0) 编辑
摘要: 首先一个Entity对象必须Attach到一个SceneNode。1.创建一个SceneNode:SceneManager::getRootSceneNode()(在SceneManager::init时会创建一个RootNode)àSceneNode::createChildSceneNode()àNode::createChild()主要的操作在这个函数中完成,首先调用虚函数SceneNode::createChildImpl(),此函数又会调用OctreeSceneManager::createSceneNode(),此函数会new一个SceneNode的派生类对象, 阅读全文
posted @ 2011-02-24 16:58 minggoddess 阅读(788) 评论(0) 推荐(0) 编辑
摘要: 如果新开始写一个3D渲染引擎,Mesh应该是一个很好的切入点。当一个看似简单的Mesh渲染到窗口时,说明引擎的架构已经确定,并验证了。想了解Ogre内部的机制,可以先看看Mesh的加载过程,这里主要涉及到Resource是如何管理的,Material是怎样处理的,Resource和HardwareBuffer是如何关联的。对于前面教程代码的执行过程做一下分析:创建一个Entity(加载Mesh及其相关的Material)的调用流程如下:SceneManager::createEntity()->SceneManager::createMovableObject()->Movable 阅读全文
posted @ 2011-02-24 16:58 minggoddess 阅读(346) 评论(0) 推荐(0) 编辑
摘要: ()找到类名去google搜就能得到类关系图了 不用在ogre里扒拉着找了meshSerializer 功能分析AllocatedObject : new deletSerializer: 这里有对二进制文件的处理 This class provides a number of useful methods for exporting / importing data from stream-oriented binary files (e.g. .mesh and .skeleton). */ class _OgreExport Serializer : public SerializerA 阅读全文
posted @ 2011-02-24 16:31 minggoddess 阅读(712) 评论(0) 推荐(0) 编辑
  2011年2月22日
摘要: ogre里似乎不支持中文路径cfg被默认设置成我的文档 因为这几个字是汉字mConfigFileName里面就乱了samplebrower里面是 samplecontext里的 createroot () root()的第二个参数这些路径都存在FileSystemLayer的类里 里面有个mHomePathFileSystemLayer这个类是个接口 具体由FileSystemLayer_win32实现 阅读全文
posted @ 2011-02-22 16:09 minggoddess 阅读(308) 评论(0) 推荐(0) 编辑
  2011年2月21日
摘要: 观察者模式是游戏开发中十分常用的模式,Ogre也大量运用了此模式来监听,比如FrameListener.ResourceListener这种方式比常见的回调函数更好用,因为观察者模式是基于接口的,任何类只要继承这个接口,注册后就可以监听我们需要观察的对象。不想监听,取消注册就行了,具体实现原理,我们以为FrameListener为例子,然后再举一反三在自己的游戏中使用它,比如场景编辑器,我拖动了一个entity,改变了他的位置,那么显示对象属性的控件应该更新这个对象的位置,我们就可以设计一个监听类来监听任何对对象的操作,有变化就通知给显示面板。Ogre的帧监听怎么实现的呢1,先设计了一个基类, 阅读全文
posted @ 2011-02-21 09:48 minggoddess 阅读(742) 评论(0) 推荐(0) 编辑
上一页 1 ··· 46 47 48 49 50 51 52 53 54 ··· 56 下一页