Unity核心

50 阅读7分钟

一、认识模型的制作过程

1、建模

美术同学通过建模软件(3Dmax或Maya等等用一个个的面片像捏泥人一样将模型制作出来

面片:3点构成一个面,面的最小单位是三角形建模时可以使用3点以上的面但是建议都使用三角面

网格信息:一般指的就是模型的这些顶点面片信息

说人话:建模其实就是用三角面组装拼凑捏泥人

2、展UV

UV是纹理贴图坐标的简称,它有U轴和V轴类似空间中的xyz轴。纹理坐标中的每一个点都和3D模型上的位置信息是相互联系的

展UV就好像是把做好的3D模型平铺到一张2D图片上,并且把这张图片上对应位置的信息和3D模型上位置信息对应起来,为之后给模型上色做准备

说人话:展UV就好像把一张纸做的立方体拆开变成一张纸

3、材质和纹理贴图

纹理: 一张2D图片

贴图: 把纹理通过UV坐标映射到3D物体表面

纹理贴图: 代指模型的颜色信息、UV信息等等

材质: 模型的表现,通过纹理贴图提供的信息使用不同的着色器算法,呈现出不同的表现效果比如:金属、塑料、玻璃、透明等等效果

着色器: Shader就是着色器,它决定了材质的表现效果

4、骨骼绑定

完成前三步后,模型就制作完成了接着如果想让模型能够栩栩如生的动起来首先要进行骨骼绑定

骨骼绑定就是为模型定义骨骼信息定义骨骼控制哪些网格信息

5、动画制作

骨骼绑定完成后我们就可以利用这些骨骼的旋转来制作3D动画了在一条时间轴上,制作关键帧的位置,通过一些规则决定从上一关键帧到这一关键帧的变化应该如何过渡不停的制作关键帧就可以制作出最终的动画效果

6、总结

美术工种--建模

第一步:建模--三角面片拼凑模型

第二步:展UV--展开模型的网格到平面上产生映射关系

第三步:材质和纹理贴图-使用UV信息画贴图选择材质出效果

美术工种--动作

第四步:骨骼绑定--对模型进行骨骼关联

第五步:动画制作--利用模型骨骼制作动画

二、图片导入相关

1、Unity支持图片格式

unity支持的图片格式有很多

BMP:是windows操作系统的标准图像文件格式,特点是几乎不进行压缩,占磁盘空间大

TIF:基本不损失图片信息的图片格式,缺点是体积大

JPG:一般指JPEG格式,属于有损压缩格式,能够让图像压缩在很小的存储空间,一定程度上会损失图

PNG:无损压缩算法的位图格式,压缩比高,生成文件小,有透明通道

TGA:支持压缩,使用不失真的压缩算法,还支持编码压缩。体积小,效果清晰,兼备BMP的图像质量和JPG的体积优势,有透明

PSD:是Photoshop(Ps)图形处理软件专用的格式,通过一些第三方工具或自制工具可以直接将PSD界面转为UI界面

其它还支持

EXR、GIF、HDR、IFF、PICT等等

其中unity最常用的图片格式是

JPG、PNG、TGA三种格式

2、参数设置-纹理类型

①、Default:默认纹理,大部分导入模型都是该类型。

SRGB(Color Texture):启用可以将纹理存储在伽马空间中(对每一个像素做一次幂函数运算)

Alpha Source:指定如何生成纹理的Alpha通道

{

None:无论输入纹理是否有Alpha通道,导入的纹理都没有Alpha通道

Input Texture Alpha:输入纹理中的Alpha

From Gray Scale:从输入纹理RGB值的平均值生成Alpha

}

Alpha ls Transparency:启用可以避免边缘上的过滤瑕疵

②、Normal map法线贴图格式:

image.png

③、Editor GUl and Legacy GUl一般在编辑器中或者GUI上使用的纹理

④、Sprite (2D and Ul)2D游戏或者UGUI中使用的格式

image.png

image.png

⑤、cursor 自定义光标

设置为鼠标图片

⑥、Cookie光源剪影模式

image.png

⑦、光照贴图格式

⑧、Single Channel 纹理只需要单通道格式

image.png

3、参数设置-纹理形状

image.png

4、参数设置-高级设置

image.png

image.png

image.png

5、参数设置-平铺拉伸

image.png

image.png

6、平台相关

image.png

image.png

image.png

image.png

三、Sprite Editor

1、SpriteEditorSingle图片编辑

①、Sprite Editor介绍

//顾名思义,spriteEditor就是 精灵图片编辑器
//它主要用于编辑2D游戏开发中使用的sprite精灵图片
//它可以用于编辑 图集中提取元素,设置精灵边框,设置九宫格,设置轴心(中心)点等等功能

②、安装2D Sprite

在【窗口】-【包管理器】中-搜索【2D】-选择【2D Sprite】

③、图片编辑功能

//1.Sprite Editor
基础图片设置(右下角窗口)
主要用于设置单张图片的基础属性
//2.custom outline(决定渲染区域)
自定义边缘线设置,可以自定义精灵网格的轮廓形状
默认情况下不修改都是在矩形网格上渲染,边缘外部透明区域会被渲染,浪费性能
使用自定义轮廓,可以调小透明区域,提高性能
//3.Custom Physics shape(决定碰撞判断区域)自定义精灵图片的物理形状,主要用于设置需要物理碰撞判断的2D图形
它决定了之后产生碰撞检测的区域
//4.Secondary Textures(为图片添加特殊效果)
次要纹理设置,可以将其它纹理和该精灵图片关联
着色器可以得到这些辅助纹理然后用于做一些效果处理
让精灵应用其它效果

编辑模式说明:

image.png

编辑模式示例图:

image.png

④、自定义边缘线功能(Custom OutLine)

image.png

注意一定要这些功能改变后点击应用

⑤、自定义物理形状功能(Custom Physics Shape)

与自定义边缘线类似,但是作用于物理检测方面。

⑥、Secondary Textures(次级纹理图片)

目前阶段仅作了解

2、Multiple 图集元素分割

前提操作:纹理类型选择【Sprite(2D和UI)】,Sprite模式选择多个,点击sprite Editor后,可见以下内容:

①、自动生成

image.png

②、按单元格大小分割

image.png

③、按行列数分割

image.png

④、总结

常用:按照自动分割-手动调整框大小位置-点击Trim修剪掉不需要的区域。就能达到最终效果。

3、Polygon 多边形编辑

用于在处理多边形图案时,快速设置。

image.png

上图设置边的数量。

四、Sprite Renderer 精灵渲染器

1、精灵渲染器介绍

顾名思义,Sprite Renderer是精灵渲染器所有2D游戏中游戏资源(除UI外)都是通过spriteRenderer让我们看到的

它是2D游戏开发中的一个极为重要的组件

2、2D对象的建立

使用前提:将纹理类型改为Sprite(2D 和 UI)

建立3种方式:

1、直接拖入(需要经过精灵编辑)

2、右键创建(使用右键创建一个Sprite类型,并向其精灵组件添加图片)

3、创建空物体(需要添加Sprite Renderer组件,并向其添加图片)

3、参数讲解

image.png

image.png

五、SpriteCreate 精灵创造者

在project面板中右键创建-2D-Sprite中各种多边形。

六、SpriteMask 精灵遮罩

1、遮罩使用简介

精灵遮罩是用于游戏中遮挡其他物体,或只让物体在遮罩范围内显示的。

需要创建一个Sprite Mask对象和正常的Sprite对象,并将Sprite对象的Mask Interaction更改。如:

image.png

一个是只能在遮罩内显示,另一个是只在遮罩外显示。

2、遮罩参数介绍

image.png

image.png

对于遮罩层级只要图片大于遮罩Back所属层的显示数,并且小于Front层的显示数就可以显示。