Unity5 怎么把Mesh渲染成unity rendertexture

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity5 怎么把Mesh渲染成unity rendertexture相关的知识,希望对你有一定的参考价值。

参考技术A 画树模型Hierarchy标签栏中,点击Create–Tree可以创建一个树的模型,设置自己的树木模型,这里我们先导入系统自带的树木模型,以后在讨论自定义模型的制作。因为新建的工程中是没有树木和草地的贴图元素,可以在Unity D的标准资源库中导入,导入的方法和上一章介绍的一样。打开Unity D在Project标签栏中鼠标右键Importpackage–TreeCreator将标准树木资源模型导入工程。点击EditTextures出现一个下拉列表addTree添加一个树的模型EditTree编辑树的模型RemoveTree删除树的模型红框内是设置树木的一些关键重要参数BrushSize:画笔绘制一次树木添加数量,数值越大越多,越小则越少,取值范围 到 。TreeDensity:树之间的百分比,在一片树中间在放入量一片树就得修改这个数值了,取值范围 到 。ColorVariation:树之间颜色差的范围,取值范围 到 。TreeHeight:树的高度,它是与场景模型有一定比例,越大树越高,取值范围 到 。Variation:树与树之间的高度比例,取值范围 到 。TreeWidth:树的宽度,它是与场景模型有一定比例,越大树越宽,取值范围 到 。Variation:树与树之间的宽度比例,取值范围 到 。有了这些参数,我们就可以创建一些更贴切的 D树的模型在场景中啦。TreeNone(GameObject)添加树木的模型.设置树木的模型完毕后,用鼠标在场景中点击添加树木把,按住Shift点击鼠标可以消除之前场景中已有的树木。画草模型:起始它不仅能草,还能画一些自定义模型,可以处理一些零碎的小东西丰富游戏场景,如下图所示,AddGrassTexture为添加一个草的纹理图,AddDetailMesh添加一个自定义的模型。BrushSize:和上面一样,标志绘制的面积。Opacity:绘制的高度TargetStrength:绘制的密度。具体绘制的方法与添加模型的方法和画树类似,这里就不贴图概述了,盆友们打开编辑器试一试就OK啦。。看一看草绘制出来的效果具体编辑,移动草,拖动,以及模型的方法和上面类似,快快构建场景中的小玩意吧。嘎嘎~~可以百jjop度搜:编.程.回.忆.录.之.unity d.都是从零基础开始讲解的其他设置.主要设置一些 D游戏地形的一些参数一下面列出一些主要参数的介绍,盆友们可以自己拖动鼠标修改一下其中的具体数值就可以在游戏视图中清晰的看到效果。PixelError:控制地形密度容差,数值越大越圆滑,越小地形角度越明显。BaseMapDist:控制地形贴图的距离.Caseshadows:是否显示地形阴影Draw:是否绘制绘制场景模型,比如树,草等等。WindSettings地形中风的设置Speed:风速Size:风的范围 参考技术B RTT啊
先把mesh渲染到framebuffer
然后在渲染到屏幕呗本回答被提问者采纳

关于Unity中Mesh网格的详解

3D模型

通过3D建模软件所建出来的点和面,如以三角形为主的点和面,比如人的脑袋一个球,就是由各种各样的三角形组成的点和面。

点和面以及纹理坐标都是通过3D建模软件建模出来的。

Unity会帮我们把模型的信息存到Mesh里面来,Mesh翻译成中文是网格。

顶点,三角形,纹理坐标,法线和切线。

 

 

3D建模软件

1:Autodesk 3D Studio Max 支持mac os windows;
2: Autodesk 3D Maya 支持windows
3: Cinema4D 支持mac os windows
4: Blender 开源跨平台的全能三维制作软件, 支持mac os windows, linux;
5: Cheetah3D: 支持mac os
6: Unity与建模软件的单位比例:
unity系统单位为m, 建模软件的m的尺寸大小不一样,所以导入的时候有差异:

       内部米      导入unity后的尺寸/m        与Unity单位的比例关系
3Dmax       1        0.01             100:1
Maya         1        100               1:100
Cinema 4D     1        100               1:100
Light Wave     1        0.01                 100:1

 


网格Mesh

1: Unity提供一个Mesh类,允许脚本来创建和修改,通过Mesh类能生成或修改物体的网格,能做出非常酷炫的物体变形特效;
2: Mesh filter 网格过滤器从资源中拿出网格并将其传递给MeshRender,用于绘制, 导入模型的时候,Unity会自动创建一个这样的组件;
3: Mesh 是网格过滤器实例化的Mesh, Mesh中存储物体的网格数据的属性和生成或修改物体网格的方法
4: 点---->顶点数组<Vector3>: 每个顶点的x, y, z坐标。Vector3对象,面与面有共用的顶点,所以为了节约内存,先存顶点,然后再存三角形;
5: 面---->三角形索引数组<int>: Mesh里面每个三角形为一个面,由于面与面的顶点公用,所以,用索引来表示三角形的一个面,可以节约模型内存空间, 0, 1, 2面,对应的顶点时在顶点数组中的索引,三角形顶点的顺序为逆时针为正面,顺时针为反面。
6: 顶点法线: 面的法线是与面垂直的线, 严格意义上讲,点是没有法线的, 在光照计算的时候,使用法线来进行光照计算,

 如果一个面上所有的法线都是一样,那么光着色也一样,看起来会很奇怪,所以通过某种算法,把多个面公用的顶点的法线根据算法综合插值,得到顶点法线;
7: 顶点纹理坐标<Vector2>: 顶点对应的纹理上的UV坐标;
6: 顶点切线<Vector4> 顶点切线,知道有这个东西就行了;

 

 

Mesh的重要属性

(1) vertices 网格顶点数组;
(2) normals 网格的法线数组;
(3) tangents 网格的切线数组;
(4) uv 网格的基础纹理坐标;
(5) uv2 网格设定的第二个纹理坐标;
(6) bounds 网格的包围盒;
(7) Colors 网格的顶点颜色数组;
(8) triangles 包含所有三角形的顶点索引数组;
(9) vectexCount 网格中的顶点数量(只读的);
(10) subMeshCount 子网格的数量,每个材质都有一个独立的网格列表;
(11) bonesWeights: 每个顶点的骨骼权重;
(12) bindposes: 绑定姿势,每个索引绑定的姿势使用具有相同的索引骨骼;
































以上是关于Unity5 怎么把Mesh渲染成unity rendertexture的主要内容,如果未能解决你的问题,请参考以下文章

Unity5 GI与PBS渲染从用法到着色代码

unity5怎样正确导入FBX,模型大小为啥会发生变化

unity5怎么样让材质自发光

unity系统模块开发Unity5.5.2UI打包AssetBundle

Unity3D网格 Mesh ( 网格概念 | 网格示例 | Unity 中 3D 物体渲染模式 | 着色模式 | 线框模式 | 线框着色模式 )

unity5eventtrigger怎么用