Unigine1.0使用过程整理

标签: node effect sky water physics
6人阅读 评论(0) 收藏 举报
分类:

  本文只是个人使用期间的一些总结,没有写太详细。毕竟这种东西说的太明白了就限制了个人的思维。为什么写这篇文章(虽然不是很实用,大概了解的程度),因为刚开始接触的时候网上基本没有此类可以借鉴参考的东西,手册也都是纯英文的,就想着之后写这么一篇,以供大家学习或者交流,有喜欢的同行我们可以探讨,刚开始写不知道怎么写。




新建场景,打开Unigine SDK,选择New project



创建完成后如下图所示



点击Open folder 打开项目所在地
Notice:清楚每个文件夹的作用,详情请参考  配套资源-word文档
Unigine菜单栏


打开帮助手册,如上图所示找到interface,打开查阅,如下图


Notice找到此页面后有介绍上图菜单栏的属性以及功能,可以尝试在工程里面进行相应的操作。

植被添加
添加引擎中已有的植物:

参考下图样例

或者参考手册中如下图所示


Notice:场景添加特效,场景光,环境光都可以参考帮助手册

Tip:搬运案例或者场景时,需要注意几点。
  1. 图片需要存放到相应的文件夹,包括命名规范。
  2. 材质如需使用案例当中的材质,需要把材质也搬过来,同时项目中需要添加材质库。
  3. 包括遇到路径问题都需要去找到文件找到哪报错然后去修改成为自己的路径。
  4. 场景里面所有可以看到的东西在手册里面都有一一介绍,在这里我就不一一赘述,每个人的理解都不一样,需要亲自尝试后才能知道具体功能。

About Scene

  1. Node
世界中所有的东西都会归类为node编辑器所有(在世界中添加的obj
打开node节点编辑器,如上图所示

1)分别是克隆、删除、上移、下移、导出node文件以及导出node类型的mesh
      2Type是选择node节点下类型
      3Search根据字面意思可以得知是寻找name功能
      4)左侧是这个世界在世界中添加的所有obj列表
      5)右边是点击节点后出现的功能,对其可进行自身相关操作,在手册中有具体的操作流程,这里就不一一道明

话不多说上图
这个是Add a node,在menu栏里面,就是这个图标,跟链条一样的东西。
从上到下
  1. Add一个空的容器,这个功能就相当于一个收集器一样,需要注意的是添加完成后把position归置为0,这样你把其他node放入到子集下面在操作时位置有变化,直接把它位置归零就可以了。
  2. 添加一个坐标
  3.  Add一个node
  4. Add一个世界的部门
  5. Add一个node开关
  6. Import 你所保存成node格式的文件
  7. Add一个nodereference
  8. Add一台相机

在前面的node屁股后面有这个it‘s name =Add an object(注意是an不是a
(竖着看不舒服,我把它横过来了)
1.Add一个静态(staticor具有蒙皮的mesh
      2.Add一个具有dynamicmesh,一般做带有physicobj会用到

      3.Add一个可以收纳相同meshmesh cluster,意思是把具有相同mesh obj都放到里面,好整理+省资源,一般是搭建完成后   会用到。这个简单说下,因为按照文档的步骤可能会成功,步骤如下
            1)添加到场景
            2)选择你需要整合的mesh
            3)在surface里面给到你想整合obj相同的材质
            4)把需要整合的obj都放到此节点的子集(选中需要移动的节点,左键点击(一般是右手食指)如果有多个obj的话
    就按住AIT键,一个个选中,然后再按住AIT键拖动到它的子集下面),点击create,会发现全部都被收到这里面了,
    上面有个这个东西,可以看到被收了多少进来,我的是96个所以显示96
                5)Collect这个收集功能就可以不用把所有都放入到子集,直接点击会从世界中寻找对应的mesh收集进来,两个不
    一的功能,看你需要什么效果
                6)Expandclear分别是扩张和清除功能,有创造就肯定会有摧毁


        4.Add一个杂乱的集群体,比如你想种一片树林或者森林又或者是一小簇植被,就可以用它来完成,里面有大小、步数
  (这个会影响到你植物加载的速度)、密度属性、生成的大小最大值和最小值、植物的朝向、角度等等一些属性,因为
   杂 乱所以它是没有分布规则的,如果你想要有形状分布的话,就用mask来完成,mask:如果你的树林这么大这么方
   条形的话,有红点的地方会有植被出现,也可以只是红点区域没有植被

5.Add一个地形,看手册关于地形的章节

6.Add一片海洋,可以设置海水的起伏、表面颜色、体积的颜色、浪的大小、频率、方向等等
具体参数可以参考手册中Add a water去参考

7.Add一顶「苍穹」(sky),可以设置云朵的稀疏,有四层云的模拟,设置出来的云看起来是层层叠叠的
看文档里面有具体的参数介绍,dome里面也有sky的例子

8.添加草
这是一个示例,具体的参数可以看手册


9.添加告示牌,看手册
10.看手册



继续,特效篇

还是原来的menu栏,找到这个,Onclick解锁下面的信息
Particle system粒子特效,长的、方的、圆的、五六七八边形。。。随便你想要什么形状,走向,大小统统都可以实现,看看看手册
参数→Type
  1. 广告牌粒子是最好用的类型。它们代表方形平面,它们总是面向摄像机,它们的顶点是随机的。举个例子,广告牌粒子可以用来制造烟雾
  2. 平面粒子平行于彼此,垂直于粒子系统的z轴。它们很好地模拟了飞机表面的一些效果比如水
  3. 点粒子与广告牌类型相似。他们也总是面对镜头,但有固定的屏幕对准方向
  4. 长度是沿着运动方向延伸的广告牌粒子。拉伸是可调节的因素。Sparks和溅溅可以用这种方式进行有效的模拟
  5. 随机的是随机分布在空间中的粒子。这种类型的粒子可以成功地模拟树叶的下落
  6. 链状的是广告牌上的粒子,它们互相粘在一起形成连续的、视觉上不间断的流动。它们的长度直接取决于发射器的生成速率。这种类型的粒子被用来与移动发射器一起产生链状的轨迹
动态Type
1)-粒子从一个点发射。
2)球-粒子是在一个球内的一个随机点产生的,它有一定的半径。
3)圆柱体-粒子是在圆柱体内的一个随机点产生的,它指定了半径和高度。
4)盒子-粒子是在一个立方体内随机产生的,它有宽度(X)、高度(Y)和深度(Z)的参数。
5)随机-如果选择了随机发射体,粒子会在任意网格或粒子表面的表面产生。为了实现这一目标,应该将目标发射粒子作为子节点设置为父节点。在渲染时,网格的随机顶点将被选择来生成粒子。
6)火花-这个发射器在条件点产生粒子。它可以被用来制造能够产生新粒子的粒子:当第一个粒子与地面碰撞时,在碰撞的时候,新的火花粒子就诞生了。在这种情况下,spark粒子系统应该被作为父类的第一个粒子的子节点。火花发射器可以用来模拟粒子的级联,例如,溶质。
7)移位-只有当系统移动时,粒子才会产生。粒子可以在父节点(需要被指定为子节点)之后移动,或者可以以编程方式定义它们的移动。有了移动发射器,就可以在船上或火箭尾迹上制造出泡沫痕迹。
  1. 制作火焰 
    1.一部分是火苗,一部分是烟雾
    2.火苗的高度,朝向,速度,形状
    3.还有看起来有那种火光刺眼的粒子效果
    4.烟雾的浓度,渐变色,升起的高度,形状
    5.火焰燃烧起来周围那种温度,折射,透明的感觉,使之透过火焰看周围其他景物有种被扭曲的感觉

volumetric object有体积的,You want to do fog
GUI功能,看示例中的dome就可以得到
看图片能看出是跟wind有关,是的,它就是带有风属性的物理特效
这里是灯光系统,里面有白炽灯、电(点)光源、反射光,还有太阳光,建议和fog上文提到的体积特效一起搭配会更好,示例中手册中都有介绍和范例
decal,贴画
可以贴在obj表面的贴画,手册里有介绍还有案例

Notice
Occluder 遮挡
1 可以自行拉取大小的遮挡
2 可以根据mesh的网格生成遮挡,但需要一个个添加
3 地形 terrain 遮挡,需要生成一张跟地形相对应的height图,size也需要一致
遮挡=Occluder=把建筑物或者物体又或者树木等等被挡住看不到的都不进行渲染

Esc出现以下画面
这里可以打开一些渲染用到的东西,这些在手册里面也有,比较常用的是Render

材质编辑器,同样在menu
从左到右,从上到下
  1. 竖放着的三本书那个是存放material的,打开可以看到你有多少材质包,也可以添加
  2. 这个很熟悉吧,save按钮
  3. 克隆材质
  4. 继承材质
  5. Rename重命名
  6. Delete材质
  7. node节点选中obj后可以把当前的材质赋过去
  8. Library,寻找材质的类型
  9. Search查找

水面上通过光照呈现的三色在这里
  按键盘上R键可进入Render面板,找到相应的菜单就能看到

物理模拟面板,里面的参数需要加入物理属性的obj后调试

欢迎大家在下方评论或者询问

查看评论

垃圾回收算法之标记-整理算法

标记-清除算法会使内存产生碎片,那么如何解决这个问题,很显然,清除以后再整理一下内存不就行了么。然而标记-整理算法不是简单滴整理一下内存。标记-整理(Mark-Compact)算法不直接对可回收对象进...
  • sinat_36246371
  • sinat_36246371
  • 2016-11-01 22:16:02
  • 1834

OPC工作记录整理——第一篇(序)

笔者最近因为项目出差,被老板派去对方公司的中控室做数据获取。起初从场地设备传回中控室是用ModBus协议来获取的,但是由于换了个合作方,合作方一改原来的工作内容,把传感器换成了施耐德电气的设备,协议就...
  • u014801367
  • u014801367
  • 2015-01-23 16:07:14
  • 1662

需求处理的三个步骤:需求梳理、需求分析、需求放大

明确细准的需求是做好产品的前提。 需求要根据实际情况,进行侧重点的划分。我平时遇到是将重点放在当需求出现时,如何更好的梳理需求,并正确的分析需求。首先我们应该将需求从“确认出现”,到“落实设计”中间...
  • wang_shiwei
  • wang_shiwei
  • 2017-01-20 14:50:02
  • 1618

jstack 使用过程整理

问题描述 利用多线程处理文件的过程中,根据文件名将文件平均分配到各个线程当中执行,程序内会将处理过后的文件删除掉。执行一段时间后发现,会有一类问价一直处理不掉,调查后发现这些没有被处理的文件为需要同...
  • weixin_37985611
  • weixin_37985611
  • 2018-01-28 14:24:05
  • 10

数据采集流程整理

数据采集流程与反思。
  • zhangyingjie09
  • zhangyingjie09
  • 2014-01-01 21:31:35
  • 3395

Winform短信猫程序开发总结(一)

1.如何使程序最小化时出现在系统托盘中?  需求:    短信猫的程序要求将程序最小化的同时让程序的图标出现在“系统托盘”的位置上,而不显示在“任务栏”中。鼠标双击系统托盘中的图标时,还原窗体。.Sh...
  • cjolj
  • cjolj
  • 2007-01-18 17:22:00
  • 1335

案例研究:手机APP的UI设计流程

以下内容由Mockplus(http://www.mockplus.cn)团队翻译整理,仅供学习交流。 UI设计——不仅仅是创造漂亮的图像。 面临的挑战 ...
  • jongde1
  • jongde1
  • 2018-01-29 11:47:26
  • 90

Java JVM(二):垃圾回收概念 与 GC 日志

包括 1. 回收区域 ,回收时机和 回收方式;2. 对 GC 日志的分析
  • u014077165
  • u014077165
  • 2014-09-10 18:04:12
  • 1056

Intellij Idea 简单使用学习文档

  • 2018年03月20日 22:32
  • 2.08MB
  • 下载

DB2数据库使用过程整理

1、安装数据库。 2、把当前该用户添加至DB2数据库用户组。 3、到控制中心建立数据库。 4、在新建的数据库中建立表空间,并授予权限。 5、在命令提示符中输入db2cmd,然后切换到需要导入数...
  • yangpeng201203
  • yangpeng201203
  • 2015-04-30 16:45:42
  • 497
    个人资料
    等级:
    访问量: 2046
    积分: 115
    排名: 122万+
    文章分类
    文章存档
    最新评论