Mesh renderer 和 Mesh 和 Mesh Filter

Material 材质

作用:

定义了用于渲染的texture 和 color

 

Shader

包含:

根据不同的显卡定义了不同的渲染对象的方法

任意顶点和不同渲染的片段程序

可指派材质中的纹理属性以及颜色和编号设置

 

Mesh:网格

作用:

由三角形组成。由一个数组存储,前3个元素表示第一个三角形的顶点,然后依次表示第2个、第三个。

 

法线是三角形边和角之间的面方向的插值,法线插值可以用来创建平滑着色,来近似曲面。

为了实现光照射表面的阴影效果,增加了法线。通过入射光方向和法线的夹角进行着色处理。

 

网格的表面是纹理(texturing)

纹理三角形被拉伸和固定以适应网格三角形。纹理三角形的坐标定义在UV坐标系(0,0)(1,1);

和法线一样,每个纹理的坐标是唯一的。

 

Mesh Filter: 网格过滤器

作用:指定mesh(物体的几何形状)

 

Mesh renderer:网格渲染器

网格渲染器从网格过滤器中获得几何体的形状然后进行渲染。

 

1.首先我们创建一个Cube在Unity中,在Hierarchy中点击右键3d Object ->Cube。然后查看右侧的Inspector窗口,如果没有的话,看顶部的Windows菜单,里面有Inspector窗口。如下截图:

包含了Mesh Filter,Mesh Renderer组件,然后再Mesh Filter中包含了Mesh

The Mesh Filter takes a mesh from your assets and passes it to the Mesh Renderer for rendering on the screen.

大体意思是说,Mesh Filter是用了一个从资源里取到的mesh资源,然后通过Mesh Render,渲染到屏幕中

那么这个Mesh中都包含了什么东东?这个问题的发现原因是由于我发现有些Object里有Mesh Filter 但是没有Mesh。所以才想到这个东东可以动过代码创建!怎么创建?首先要知道Mesh里都包含了什么玩意!!

在Mesh中存储着三维模型的数据:vertices(顶点数据数组Vector3[])、triangles(三角形顶点索引数组,int[])、normals(法线向量数组,Vector3[])、uv(纹理坐标数组,Vector2[])。我怎么知道的?看代码哇...

Mesh mesh = new Mesh(); 自己去源代码里看

然后这里需要一些OpenGL相关的知识,如下截图,这里知道就好,理解的话需要看OpenGL相关内容

转载于:https://www.cnblogs.com/Dearmyh/p/9674930.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值