vega prime 1.2 (视景仿真)
摘要:Vega Prime 1.2 (视景仿真) MPI的视景仿真渲染工具Vega是世界上领先的应用于实时视景仿真、声音仿真和虚拟现实等领域的软件环境,它用来渲染战场仿真、娱乐、城市仿真、训练模拟器和计算可视化等领域的视景数据库,实现环境效果等的加入和交互控制。它将易用的工具和高级视景仿真功能巧妙地结合起来,从而可使用户简单迅速地创建、编辑、运行复杂的实时三维仿真应用。由于它大幅度减少了源代码的编写,使软件的进一部维护和实时性能的优化变得更容易,从而大大提高了开发效率。使用它可以迅速地创建各种实时交互的三维视觉环境,以满足各行各业的需求。它还拥有一些特定的功能模块,可以满足特定的仿真要求,例如特殊效
阅读全文
用Ogre实现《天龙八部》场景中水面(TerrainLiquid)详解
摘要:本文主要讲的是《天龙八部》游戏中水面(TerrainLiquid)的具体实现,使用C++,Ogre1.6。天龙的水面做的比较简单,虽然没有倒影,但动态纹理+深度图做出的效果还行,看着不是特别假。一般情况下,TerrainLiquid有一层动态纹理,有的还会有一层1D深度图纹理,深度图纹理用来控制不同深度水面的透明度。另外还会给出一个坐标,可以称之为种子坐标,通过这个坐标可以填充整个水面。总的来说要实现天龙的水面只要搞清楚两个问题1.如何利用种子坐标填充整个水面2.如何利用深度图纹理控制水面透明图文章最后我放了TerrainLiquid的代码的链接,配合上篇随笔给的地形Demo代码再加上水面相关
阅读全文
Ogre1.8地形和天空盒的建立(一块地形)
摘要:转自:http://www.cnblogs.com/WindyMax/研究Ogre的程序笔记编译环境 WIN7 32 VS2008 Ogre的版本 1.8Ogre的地形算法是采用Geometry MIPMap的算法,当然贴图也是采用MIPMap的算法,这里有Ogre LOD算法的论文解释:http://www.flipcode.com/articles/article_geomipmaps.pdf看到Ogre的Terrain,突然也想自己实现一个地形的打算,不过估计要过一段时间了,现在来说,ClipMap算法应该更适应现在的游戏,具体的内容可以查看http://www.docin.com/p-
阅读全文
Ogre 1.8 terrain 和 paging 组件
摘要:以下转自:http://hi.baidu.com/xocoder/item/e8d87cf53d87612b753c4cfdOGRE地形生成OGRE可以通过两个接口来生成地形,分别是void TerrainSceneManager::setWorldGeometry( const String& filename )以及void TerrainSceneManager::setWorldGeometry(DataStreamPtr& stream, const String& typeName ),两者的根本区别就是一个是传递地形信息文件名一个是传递地形信息数据流,设计
阅读全文
学会使用Ogitor
摘要:这几天在用Ogre读取Ogitor的场景,遇到了不少问题,在网上也找不到详细的说明,虽然读取Ogitor的场景对很多人来说太简单了,但对一些新手来说就有点难了,我刚开始就觉得是无从下手,因此简单的描述下读取过程和一些常见问题,希望对一些新手有所帮助,高手就可以跳过了O(∩_∩)O~我简单的分为2大步:1.学会简单的使用Ogitor,新建自己的场景,然后导出为scene场景文件Ogitor的简单操作我就不再详述了,直接引用网上的:一、基本控制1.场景中的坐标:x轴z轴表示左右,Y表示上下2.QWEASD:摄像机方向、行走控制(在“Fly”与“Walk”模式下,作用略有不同)3.鼠标中键+移动:晃
阅读全文
Ogre中OctreeSceneManager
摘要:转自:http://blog.csdn.net/yanonsoftware/article/details/1067265既然前面分析Mesh(Entity,SceneNode)的渲染时已经看到了OctreeSceneManager,那么现在正是分析一下它了。所谓SceneManager,我想处理“空间分割”和“可见性判断”是两个主要的任务,后者已经打过一点交道了,是通过下面这个函数完成的:virtual void _findVisibleObjects ( Camera * cam, bool onlyShadowCasters );下面主要就要搞清楚这个函数是如何工作的,以及空间分割是如何
阅读全文
Ogre中TerrainSceneManager
摘要:转自:http://blog.csdn.net/yanonsoftware/article/details/1103665TerrainSceneManager是一个OctreeSceneManager的派生类,并且是在同一个Plugin工程中。 通过调用void TerrainSceneManager::setWorldGeometry( const String& filename )来加载一个地形,参数为一个配置文件的文件名。配置文件中主要有: WorldTexture=terrain_texture.jpg PageSource=Heightmap Heightmap.imag
阅读全文
收藏的博客--Ogre
摘要:1、Ogre一些东西和流程深入讲解 http://blog.csdn.net/yanonsoftware/article/category/2260482、Ogre天龙八部分析http://blog.csdn.net/qq18052887?viewmode=contents
阅读全文
Ogre骨骼动画
摘要:转自:http://blog.csdn.net/yanonsoftware/article/details/1281516OGRE的基本动画控制是很简单的,设置一个动画的操作是这样:// Set idle animationmAnimationState = ent->getAnimationState( "Idle" );mAnimationState->setLoop( true );mAnimationState->setEnabled( true );(上面这段代码来自Intermediate Tutorial1 – Ogre Wiki)从一个En
阅读全文
Oge中Mesh的渲染流程详述
摘要:转自:http://blog.csdn.net/yanonsoftware/article/details/1041396首先一个Entity对象必须Attach到一个SceneNode。1.创建一个SceneNode: SceneManager::getRootSceneNode() (在SceneManager::init时会创建一个RootNode)à SceneNode::createChildSceneNode() àNode::createChild() 主要的操作在这个函数中完成,首先调用虚函数SceneNode::createChildImpl(),此函数又
阅读全文
Ogre中Mesh的加载过程详述
摘要:转自:http://blog.csdn.net/yanonsoftware/article/details/1031891如果新开始写一个3D渲染引擎,Mesh应该是一个很好的切入点。当一个看似简单的Mesh渲染到窗口时,说明引擎的架构已经确定,并验证了。想了解Ogre内部的机制, 可以先看看Mesh的加载过程,这里主要涉及到Resource是如何管理的,Material是怎样处理的,Resource和HardwareBuffer是如何关联的。对于前面教程代码的执行过程做一下分析:创建一个Entity(加载Mesh及其相关的Material)的调用流程如下:SceneManager::crea
阅读全文
Ogre学习笔记Basic Tutorial 前四课总结
摘要:转自:http://blog.csdn.net/yanonsoftware/article/details/1011195OGRE Homepage:http://www.ogre3d.org/ OGRE的WIKI中有一系列的基本教程,这篇笔记就是读完这些教程后的一个总结。教程首页:http://www.ogre3d.org/wiki/index.php/Ogre_Tutorials。 Basic Tutorial 1主要讲了几个OGRE中的基本概念:1. SceneManager:所有屏幕上可见的东西都由SceneManager来管理;有多种类型的SceneManager,分别用来渲染Ter
阅读全文
Ogre碰撞检测
摘要:转自:http://blog.csdn.net/weiqubo/article/details/7108363Ogre采用树桩管理场景中的各种"元素"(摄像机、灯光、物体等),所有的东西都挂在"树"上,不在"树"上的东西不会被渲染。Ogre::SceneManager就是"树"的管理者,Ogre::SceneNode是从SceneManager中创建的(当然BSP和8*树的管理也和这两个类有关,这暂时不讨论)。AABB(轴对齐包围盒)这个东西是碰撞检测的基础,和它类似的还有OBB(有向包围盒),由于OBB创建复杂,
阅读全文
Ogre场景编辑器Ogitor源代码的构建
摘要:本文转自:http://blog.csdn.net/zhengkangchen/article/details/6000769Ogitor-0.4.2源代码构建,不少时间,这里记录一下:下载源代码的地址为:http://hg.ogitor.org/v0-4点击zip(这个搞得我找了很久)可执行程序下载地址为:http://www.ogitor.org/Building+Ogitor&structure=Development(一)构建QT1.环境变量中加入bin路径:PATH--->C:/Qt/4.6.3/bin(我的路径是)2.环境变量中加入qt的路径:QTDIR--->
阅读全文
Ogre的Singleton实现-模版实现,便于重用-(详细分析)以及笔者的改进
摘要:转自:http://www.cppblog.com/sandy/archive/2005/11/30/1436.htmltemplateclassSingleton{protected:staticT*ms_Singleton;public:Singleton(void){assert(!ms_Singleton);ms_Singleton=static_cast(this);}~Singleton(void){assert(ms_Singleton);ms_Singleton=0;}staticT&getSingleton(void){assert(ms_Singleton);ret
阅读全文