Camera 相机:

相机基础知识不写了,需要注意的是:axiom目前不支持同时操作多个相机.

创建,设置位置基本操作.

_camera  =  _scene.CreateCamera("MainCamera");
_camera.Position = new Vector3(, , );
_camera.LookAt(Vector3.Zero);

_camera.Near = 5;决定了相机可视范围.

ViewPort(视口)

当要显示多个窗口时候用,这个我不怎么需要,就不写了.

Shadows in Axiom(重点来了)

Axiom有3种不同阴影.

    1. 纹理阴影:计算成本最低的一种.
    2. Modulative Stencil Shadows:较第三种没那么密集
    3. Additive Stencil Shadows:会叠加计算每个灯光的阴影,对GPU来说是比较大的负担.

遗憾的是:Axiom不支持软阴影,如果需要软阴影,需要自己写顶点和片段程序.

使用阴影非常容易:

scene.AmbientLight   = ColorEx.Black;
scene.ShadowTechnique = ShadowTechnique.StencilAdditive; Entity ent = scene.CreateEntity("ninja", "ninja.mesh");
ent.CastShadows = true;
scene.RootSceneNode.CreateChildSceneNode().AttachObject(ent);

灯光:

灯光类型:

    1. Point (LightType.Point) - 点光源,各个方向.
    2. Spotlight (LightType.Spotlight) - 聚光灯
    3. Directional (LightType.Directional) - 平行光

创建灯:

Light pointLight = scene.CreateLight("pointLight");
pointLight.Type = LightType.Point;
pointLight.Position = new Vector3(, , ); pointLight.DiffuseColor = ColorEx.Red;
pointLight.SpecularColor = ColorEx.Red;
Light spotLight = scene.CreateLight("spotLight");
spotLight.Type = LightType.SpotLight;
spotLight.DiffuseColor = ColorEx.Blue;
spotLight.SpecularColor = ColorEx.Blue;
spotLight.Direction = new Vector3(-, -, );
spotLight.Position = new Vector3(, , );

Axiom3D学习日记 3.Cameras, Lights, and Shadows的更多相关文章

  1. 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 ...

  2. Axiom3D学习日记 4.地形,天空,雾

    首先需要引用Axiom.SceneManagers.Octree.dll. 地形: 载入地形配置,从一个文件中. scene.LoadWorldGeometry( "Terrain.xml& ...

  3. Axiom3D学习日记 0.Axiom基础知识

    Axiom 3D Engine An open-source, cross-platform, managed 3D rendering engine for DirectX, XNA and Ope ...

  4. Axiom3D学习日记 2.介绍SceneManager,SceneNode,Entity

    SceneManager(场景管理类) 所有出现在屏幕里的东西都受SceneManager管理(最好是这样),当你放置对象在场景里,SceneManager就会跟踪他们的位置,当你为场景创建一个相机, ...

  5. Axiom3D学习日记 1.程序配置

    1.需要引用的库 Axiom Axiom.Framework Axiom.Platforms.Win32 Axiom.Plugins.FreeImageCodecs Axiom.Plugins.Par ...

  6. Linux学习日记-使用EF6 Code First(四)

    一.在linux上使用EF 开发环境 VS2013+mono 3.10.0 +EF 6.1.0 先检测一下EF是不是6的 如果不是  请参阅 Linux学习日记-EF6的安装升级(三) 由于我的数据库 ...

  7. android学习日记05--Activity间的跳转Intent实现

    Activity间的跳转 Android中的Activity就是Android应用与用户的接口,所以了解Activity间的跳转还是必要的.在 Android 中,不同的 Activity 实例可能运 ...

  8. android学习日记03--常用控件Dialog

    常用控件 9.Dialog 我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框 对话框,要创建对话框之前首先要创建Bui ...

  9. android学习日记03--常用控件checkbox/radiobutton

    常用控件3.checkbox 复选框,确定是否勾选,点击一下勾选,点击第二下取消,当有一系列备选项时适合用checkbox控件,方便用户提交数据. 贴上例子Activity的java代码 packag ...

随机推荐

  1. xcode 环境,多工程联编设置【转】

    http://blog.csdn.net/vienna_zj/article/details/8467522 一.xcode4中的环境变量 $(BUILT_PRODUCTS_DIR) build成功后 ...

  2. 用了OneAPM CT,宕机早知道!

    Twitter 的公司网站和移动应用在 1 月 19 日早上出现宕机,导致全球部分地区用户无法正常访问.这次宕机影响了很多用户,英国和印度用户已经无法访问 Twitter .第三方监测机构 DownD ...

  3. [SQL Server]一次执行资料夹内的.sql 指令码

    原文:[SQL Server]一次执行资料夹内的.sql 指令码 初始资料库时,我们Developers们会准备很多.sql指令码来建立资料表.检视甚至初始资料,那麽要怎麽一次执行资料夹内的*.sql ...

  4. Oracle 字符集的查看和修改 -转

    一.什么是Oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库 ...

  5. PuTTY 'modmul()' 函数缓冲区下溢漏洞(CVE-2013-4206)

    漏洞版本: PuTTY 0.52 - 0.63 漏洞描述: BUGTRAQ ID: 61645 CVE(CAN) ID: CVE-2013-4206 PuTTY是Windows和Unix平台上的PuT ...

  6. Java基础之String,StringBuilder,StringBuffer

    在创建字符串的时候总是习惯性的使用String str = "...";,str = str+"abcd";也有听说过StringBuffer,StringBu ...

  7. [SSD大法好]神舟K480-I5-D3鸟枪换炮M6S

    Hello,SSD 期盼已久,终于入手了M6S的256G固态硬盘,白天就不安生一直百度.谷歌.必应,势必要把所有相关消息查个清楚这神舟K480I5D3怎生拆呢. 最后心里隐约有了安装的法门. 但到得开 ...

  8. 内存模型(memory models)和命名空间(namespace)

    继续<C++ premier plus > 先来解释一下scope和linkage,所谓scope,是指变量的作用范围,所谓linkage,是指变量能否在不同文件中共享 1,自动变量(au ...

  9. 计算1到n整数中,字符ch出现的次数

    个位ch个数 + 十位ch个数 * 10 + 百位ch个数 * 100:同时如果某一位刚好等于ch,还需要减去多算的一部分值. #include <stdio.h> //整数1到n,字符c ...

  10. 最常用的 Eclipse 快捷键总结

    本文是一些最实用.最齐全.最省时间的 Eclipse 快捷键总结,这些快捷键可以让帮助你完成工作中的任何一个操作.欢迎参考. 1. ctrl+shift+r:打开资源 这可能是所有快捷键组合中最省时间 ...