Unity Mesh基础系列(一)生成网格(程序生成)

目录1 渲染事物2 创建顶点网格3 创建Mesh4 生成附加顶点数据本文主要内容:1、创建一个点阵网格2、用协程分析点阵网格的位置3、用三角形定义表面4、自动生成法线5、增加纹理坐标和切...
摘要由CSDN通过智能技术生成

目录

1 渲染事物

2 创建顶点网格

3 创建Mesh

4 生成附加顶点数据

本文主要内容:

1、创建一个点阵网格

2、用协程分析点阵网格的位置

3、用三角形定义表面

4、自动生成法线

5、增加纹理坐标和切线

在本教程中,我们将创建一个由顶点和三角形组成的简单网格。

本教程假设你已经熟悉Unity Scripting的基本知识了。如果不清楚的可以看 时钟 的章节学习Unity的基础知识。而 构建分形 的章节里也提供了协程的基本介绍。

这个章节的示例是用Unity5.0.1制作的,但是可以向上兼容更高的版本。

本教程是CatLikeCoding系列的一部分,原文地址见文章底部。“原创”标识意为原创翻译而非原创教程。

(复杂的外表下面是简单的几何学)

1 渲染事物

Unity是基于mesh去做渲染的,也就是说你想在Unity里看见东西的话,就必须要使用mesh。它可以来自于其他软件制作的3D模型进行导入,可以是由代码动态生成出来的,也可以是一个sprite、UI元素或者是粒子系统,这些统统都是要用到mesh的,就连一些屏幕的后处理特效都需要使用mesh来渲染。

所以,那么到底Mesh是什么呢?从概念上讲,mesh是图形硬件用来绘制复杂事物的的框架。它至少包含一个顶点集合(这些顶点是三维空间中的一些坐标,)以及连接这些点的一组三角形(最基本的2D形状)。这些三角形集合在一起就构成任何mesh所代表的表面形状。

由于三角形是平的,是直线的边,所以它们可以用来完美地显示平面和直线的事物,就比如一个立方体的表面。而曲面或圆曲面只能用许多小三角形来逼近的模拟。如果三角形足够小(比如小于一个像素),那么你就看不出来这是一个近似的模拟值。但通常,这是在当下的硬件设备上是不可能的,因为性能不允许。所以你看到的3D物体表面总是会出现一定程度的锯齿状。

(Unity的默认的 胶囊,立方体,球体的阴影与线框展示)

怎么显示 线框模式?(Wireframe)

在Scene的视窗下面有个下拉菜单,点击之后可以在Scene的视窗里看到不同的渲染模式。

如果你想用一个GameObject展示一个3D的模型,那么它必须要两个components才可以。第一个是mesh filter,它决定了你想展示那个mesh;第二个是mesh renderer,它决定了你应该如何渲染mesh,比如使用什么材质球,是否接受阴影或者投影等等。

(Unity默认的 cube 物体)

为什么materials是复数的?

mesh renderer

  • 10
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值