在unity中给unity3d 5.6创建地形的地形刷草地是怎么一下子整个场景都绿了

Unity3D游戏开发从零单排(三) - 极速创建狂拽酷炫的游戏地形 - 推酷
Unity3D游戏开发从零单排(三) - 极速创建狂拽酷炫的游戏地形
在Unity工作流程内,地形是一个不可缺少的重要元素,不论是游戏或虚拟现实都会使用到各种类型的地形效果,在这个教学中我们需要了解到地形的制作基本概念与,其中对于Unity的地形操作部分需要大量的操作练习.熟悉这些功能操作之后,相信对于游戏地形的制作与运用将会更得心应手。
环境:windows7 64bit Unity3d4.2.1
所需资源:terrain.raw
File &-& &New project
选择工程存放的位置,同时导入 Skyboxed.unityPackage(天空盒), Terrain Assets.unityPackag(地形)和Tree Creator.unityPackage(树木).
再导入一个包,这个需要导入一个官方的树木,草地的包,
在Hierarchy中,creatte -&Terrain.场景中就自动产生一个平面,这是地形默认使用的基本原型。地形的各种属性在右边的inspector里面
地形的制作通常使用的是heightmap,在unity3d是就是.raw文件,Raw文件里面记录着灰阶的位阶图,藉由灰阶的落差来产生地形的高低。当然也可以用自带的地形工具来创建。
还是在inspector中,点击Import Raw...选择下载的附件terrain.raw,不改动任何设定,直接按下 Import将地形高度贴图导入。
经过贴图的导入后,原本的平面转换成高低起伏的地形,接下来我们就可以开始绘制地形上的纹理效果。
现在需要给山绘制一些纹理,就是第四个工具。首先是导入纹理,导入四种,首先是基本的地面,一种是草地,然后是山顶的石头纹理,还有就是山脚的纹理。
最好导入多种纹理,设置好笔刷,先刷个大概,然后刷些细节,绘制出来的效果就像:
在Terrain(Script)的第五个工具
因为之前导入了Terrain Assets的包,所以这里可以直接导入一些树。参数设置在Setting里面。
然后就是选择各种树漫山遍野地刷!
花草的操作类似,第六个工具,导入一些模型之后就可以开始刷了!
刷子的几个参数,Brash Size,Opacity,Target Strenth都可以自己调节下看看,很好理解。刷的同时按住shift就是删除。
灯光、天空盒和雾还有风
最后要添加的部分虽然不属于地形的创建,但是增加了整合场景的真实程度。
灯光的话直接在Hierarchy中create一个directional light就好了,调整下强度。
默认情况下摄像机的背景是深蓝色的,下面是添加天空盒到摄像机上。选择main camera,在右边的inspector中设置如下:
这时候就有天空了。
这里用最简单的全局雾的效果。Edit-&Rendering Setting设置如下:
风的设置直接在地形的属性中设置就可以了,加上风之后植物就可以随风摆动。
到这里,一个炫酷的地形就完成了,编译运行下,就可以看到最终的场景效果。
究极 Unity 地形制作 - 极速创建华丽的游戏地形 -&/club/thread-.html
《Unity3D game essential》
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致Unity(5)
VR社交(2)
上次讲了动态生成网格,这次说说怎样分层显示纹理。
一般的地形会支持大概4层的纹理,比如草地、岩石之类,然后通过一张遮罩贴图来区分各自的显示区域。这里我做了同样的事情。我写了一个shader,支持4层贴图的显示。先来看看效果,最后贴上shader源码:
这是一张遮罩图片
导入unity自带的地形资源,里面有不同地形纹理的贴图,使用我这个shader,然后设定前两个通道和遮罩通道
把材质赋予给一个面片,会出现这样的效果。
这就是2个通道的融合了。纹理通过拾取遮罩图片不同的颜色值,来显示不同的通道混合,最终显示出来。
这里对应四个纹理通道,我分别用到了图片的RGBA四个值来控制。所以我们可以做一个这样的试验,做一张黑色背景的图片,前面三个数字1、2、4分别用红绿蓝三种颜色,最后右下角在透明通道写一个白色的4。
指定纹理和遮罩:
最后会看到这样的效果。
最后我们结合第一节的生成地形网格,做一个效果测试:
用ps随便画一张高度图,或者你用其他三维软件生成也行
用上一节的脚本,生成了这样一个地形
然后根据地形画出了一张遮罩图片,指定在遮罩的通道
这时候可以看到地形的效果是这样的
再改变一下各个通道的平铺重复次数
一个地形的效果就出来了。
这里由于是使用RGBA四个通道来控制,所以限定最多只能用4个不同的纹理。其实这个是可以自己扩展的,也可以把颜色分成不同的范围,然后逐个范围来指定对应的纹理。这个就自由发挥了。不过我觉得4层纹理应该也够用了。
下面是shader的源码:
Shader &Custom/MyTerrainShader& {
Properties {
_MainTex (&Base (RGB)&, 2D) = &white& {}
_SecondTex(&Second (RGB)&,2D) = &white&{}
_ThirdTex(&ThirdTex (RGB)&,2D) = &white&{}
_FourthTex(&FourthTex (RGB)&,2D) = &white&{}
_Mask(&Mask(RG)&,2D) = &white&{}
//_Color(&Color&,Color) = (1,1,1,1)
SubShader {
Tags { &RenderType&=&Opaque& }
#pragma surface surf Lambert
sampler2D _MainT
sampler2D _SecondT
sampler2D _ThirdT
sampler2D _FourthT
sampler2D _M
struct Input {
float2 uv_MainT
float2 uv_SecondT
float2 uv_ThirdT
float2 uv_FourthT
float2 uv_M
void surf (Input IN, inout SurfaceOutput o) {
half4 c1 = tex2D (_MainTex, IN.uv_MainTex);
half4 c2 = tex2D (_SecondTex, IN.uv_SecondTex);
half4 c3 = tex2D (_ThirdTex, IN.uv_ThirdTex);
half4 c4 = tex2D (_FourthTex, IN.uv_FourthTex);
half4 cm = tex2D (_Mask, IN.uv_Mask);
o.Albedo = c1.rgb*cm.r+c2.rgb*cm.g+c3.rgb*cm.b+c4.rgb*cm.a;
o.Alpha = c1.a;
FallBack &Diffuse&
&&相关文章推荐
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:90次
排名:千里之外Unity地形基础
1.地形绘制
2.地形贴图
3.植物的种植
4.其他细节的实现
在 Unity 5 中,默认导入资源包是空,如下图:
不要着急,需要自己去 Asset Store 下载:
vcmU=" src="/uploadfile/989.png" style="width: 800 height: 733" />
下载完成后,就可以导入 Standard Assets 了。
第一个工具可以实现突起和凹陷效果,选择相应的笔刷,设定所需要的笔刷大小以及笔刷的强度,按住左键就可以对地形进行绘制了,按住 Shift + 左键是对凹陷进行的处理,制作凹陷是可以把笔刷调小点。
效果如下:
第二个工具可以改变地形的高度,可以用来踏平一个地形。
效果如下:
第三个工具是柔滑高度,就是使地面变得比较光滑。
效果图如下:
第四个工具是绘制纹理,定型绘制完后,需要给其添加一些纹理,这时需要使用第四个工具,绘制地形纹理。
点击添加纹理后,弹出下面的对话框:
选择一个地形纹理,点击 Add,效果如下:
可以添加多种纹理,比如添加草地材质,在地形中进行绘制,绘制前可以设置笔刷的大小、强度和融合度。
第五个工具是用来在地形上绘制树木的。点击 Edit Trees,然后点击 Add Tree。
弹出下面的对话框:
选择一个游戏对象,点击添加后,可以对添加的 Trees 进行设置:
参数以及其代表的含义:
Brush Size :笔刷大小
Tree Density : 树的密度
Tree Height : 树的高度
Lock Width to Height : 锁定宽度到高度
Tree Width : 树的宽度(在锁定状态时不可选,在非锁定状态可以设置树的宽度)
Random Tree Rotatio : 树的旋转随机性
如果想在场景中加入大量的树,可以点击 Mass Place Trees,弹出下面的对话框,通过改变 Number Of Trees 的数值来确定最终在场景中种植的树目,还可以通过 shift + 左键去除不想要的树。
在场景中进行树的种植时,不必担心树的悬浮或者插入地面太深的问题,Unity 引擎本身会根据地形的高度自动调节。
第六个工具是绘制草地的细节。
选中第六个工具来绘制草地,添加一个草地的材质。
弹出下面的对话框,选择响应的草地。同时可以根据自己的需要修改下面的参数值。也可以在绘制完后再进行调整。点击 Add 按钮即可。
选中草地之后,按住左键在场景中绘制。我们可以用 PhotoShop 进行草地的绘制,保存成 .psd 格式,再导入到 Unity 中就可以使用了。
第六个工具是有关地形细节的设置。具体的参数有网格优化的容差,Map 距离,光晕图的设置等。一百天系列之unity3d(4)
第一步,当然是新建一个3D工程并进行保存。
第二步,在Hierarchy中Create一个Terrian,即创建地形。
第三步,点击Terrain,使用属性列表中的笔刷。
从左到右,分别是无限制上下地形笔刷,有限制地形笔刷,平滑笔刷,材质笔刷和树木笔刷,草丛笔刷,最右边的是设置键。
分别试用,可以了解它们的特性。
值得注意的:
1.可以从Assets中import package,选择Environment资源包导入,其中有最基础的材质和树木,水的模型。
2.如果想要造成地面下陷的状态,可以在Terrian的第二个地形笔刷中,将Height调至10,然后Flatten。之后再用第一个地形笔刷,按住shift键去触碰地面,即可造成下陷的状态。
3.给Terrain贴图,点击第四个笔刷,选择Edit Textures,AddTexture之后scelect相对应的材质,如果你已经导入了Environment资源包,就可以选择草地的材质。之后草地的材质,树木的材质,和花的材质,也是一样的步骤。
4.如果需要水池的效果,先制作一个下陷的地面,之后将Environment中的Water的模型导入即可(要使用第一个水模型,因为第二个是黑夜效果)。
如果有还是不明白的小伙伴,可以去找siki老师的黑暗奇侠教程,其中将地形讲解的很明白,谢谢。
&&相关文章推荐
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:240次
排名:千里之外

我要回帖

更多关于 unity怎么创建地形 的文章

 

随机推荐