Axiom3D学习日记 4.地形,天空,雾
首先需要引用Axiom.SceneManagers.Octree.dll.
地形:
载入地形配置,从一个文件中.
scene.LoadWorldGeometry( "Terrain.xml" );
如果报找不到地形文件的错误,可能是因为,你的地形载入代码在scene = Root.Instance.CreateSceneManager(SceneType.ExteriorClose);之前.
因为在scene = Root.Instance.CreateSceneManager(SceneType.ExteriorClose);之后,引擎才会载入资源.
Terrain.xml
关于该文件详细信息,请看这 [here].
TerrainSceneManager用高度图来生成地形,你可以指定高度图通过Heightmap.image属性, 你可以设置WorldTexture贴图属性, 还允许你指定 "DetailTexture"属性,
它让地形纹理看起来更有细节,所有这些参数都在terrain.xml设定.
天空:
SkyBox(天空盒)
scene.SetSkyBox(true, "Examples/SpaceSkyBox", 1000);
1:是否启用
2:材质名字
3:与相机距离
Sky Domes(天空球)
scene.SetSkyDome( true, "Examples/CloudySky", 5, 8 );
3:曲率,范围:2-65
4:贴图重复次数.
Sky Planes
Plane plane = new Plane();
plane.D = 1000; //Set distance as 1000
plane.Normal = Vector3.NegativeUnitY; //Make the texture face down
scene.SetSkyPlane(true, plane, "Examples/SpaceSkyPlane");
Fog
线性雾
ColorEx fadeColor = ColorEx.WhiteSmoke;
viewport.BackgroundColor = fadeColor;
scene.SetFog(FogMode.Linear, fadeColor, 0, 50, 50);scene.SetFog(FogMode.Exp, fadeColor, 0.005f);scene.SetFog(FogMode.Exp2, fadeColor, 0.003f);
Axiom3D学习日记 4.地形,天空,雾的更多相关文章
- Axiom3D学习日记 2.介绍SceneManager,SceneNode,Entity
SceneManager(场景管理类) 所有出现在屏幕里的东西都受SceneManager管理(最好是这样),当你放置对象在场景里,SceneManager就会跟踪他们的位置,当你为场景创建一个相机, ...
- Axiom3D学习日记 5.Frame Listeners, and Input Handling
Frame Listeners In Ogre's C++, we would register a class to receive notification before and after a ...
- Axiom3D学习日记 0.Axiom基础知识
Axiom 3D Engine An open-source, cross-platform, managed 3D rendering engine for DirectX, XNA and Ope ...
- Axiom3D学习日记 3.Cameras, Lights, and Shadows
Camera 相机: 相机基础知识不写了,需要注意的是:axiom目前不支持同时操作多个相机. 创建,设置位置基本操作. _camera = _scene.CreateCamera("Mai ...
- Axiom3D学习日记 1.程序配置
1.需要引用的库 Axiom Axiom.Framework Axiom.Platforms.Win32 Axiom.Plugins.FreeImageCodecs Axiom.Plugins.Par ...
- Linux学习日记-使用EF6 Code First(四)
一.在linux上使用EF 开发环境 VS2013+mono 3.10.0 +EF 6.1.0 先检测一下EF是不是6的 如果不是 请参阅 Linux学习日记-EF6的安装升级(三) 由于我的数据库 ...
- android学习日记05--Activity间的跳转Intent实现
Activity间的跳转 Android中的Activity就是Android应用与用户的接口,所以了解Activity间的跳转还是必要的.在 Android 中,不同的 Activity 实例可能运 ...
- android学习日记03--常用控件Dialog
常用控件 9.Dialog 我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框 对话框,要创建对话框之前首先要创建Bui ...
- android学习日记03--常用控件checkbox/radiobutton
常用控件3.checkbox 复选框,确定是否勾选,点击一下勾选,点击第二下取消,当有一系列备选项时适合用checkbox控件,方便用户提交数据. 贴上例子Activity的java代码 packag ...
随机推荐
- 修改weblogic11g的JDK版本
1:进入Weblogic域文件夹下面 [wzh@localhost bin]$ pwd/app/wzh/oracle/middleware/user_projects/domains/base_dom ...
- LeetCode解题报告:Reorder List
Reorder List Given a singly linked list L: L0→L1→…→Ln-1→Ln,reorder it to: L0→Ln→L1→Ln-1→L2→Ln-2→… Yo ...
- arp命令(windows ),nmap查看局域网内所有主机IP和MAC
ARP命令详解 ARP是一个重要的TCP/IP协议,并且用于确定对应IP地址的网卡物理地址.实用arp命令,我们能够查看本地计算机或另一台计算机的ARP高速缓存中的当前内容.此外,使用arp命令,也可 ...
- 数学(概率):HNOI2013 游走
[题目描述] 一个无向连通图,顶点从1编号到N,边从1编号到M. 小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点,获得等于这 ...
- 使用VisualStudio进行单元测试之四 顺序测试
前文中所提到的测试都是针对一个方法进行的独立测试,即使是同事测试多个方法,他们之间也没有影响.但是在实际的生产过程中,更多的情况是方法与方法之间是存在相互的逻辑关系的,所以也就有了今天要介绍的顺序测试 ...
- [转载]jquery的extend和fn.extend
jQuery为开发插件提拱了两个方法,分别是: jQuery.fn.extend(object); jQuery.extend(object); jQuery.extend(object); 为扩展j ...
- Hibernate配置文件详解
Hibernate配置方式 Hibernate给人的感受是灵活的,要达到同一个目的,我们可以使用几种不同的办法.就拿Hibernate配置来说,常用的有如下三种方式,任选其一. 在 hibernate ...
- 关于在VMware上装lFEDORA系统
VMware虚拟机启动当中某个操作系统的时候,会出现如下提示 Cannot connect virtual device floppy0. No corresponding device is ava ...
- SVN太旧,要更新问题
同步或者提交的时候出现问题提示 The working copy needs to be upgradedsvn: Working copy 'E:\JAVA\Workspaces\uhr' is t ...
- mxGraph实现按住ctrl键盘拖动图形实现复制图形功能
实现这个功能很easy,仅仅须要重写moveCells方法就能够了.以下是源文件里的代码: mxGraph.prototype.moveCells = function(cells, dx, dy, ...