Unity学习笔记第一周总结
Unity介绍、工具介绍与基础概念
Unity面板操作准备
- 点击Layout,选择 two-by-three
- 右击project,选择 One Column Layout
面板介绍
- project(置放游戏资源)实现资源导入导出
- Hierarachy(置放放入Scene面板的游戏对象)
- Game(预览面板)
- Scene(场景操作面板)提供设计游戏界面的可视化面板
一组相关联的游戏对象的集合,通常游戏关卡中每个关卡就是一个场景,用于展现当前关卡中的所有物体 - Inspector(检视面板)
面板操作
-
Scene面板操作
-
Inspector面板操作
1.transform(任何对象都具有的组件,调节位置、方向与大小)PositionL:调节对象位置 Rotation:调节物体方向 Scale:调节物体大小比例
2.Mesh Filter(网格过滤器):用于从资源中获取网格信息
3.Mesh Rebderer(网格渲染器):从网格过滤器中获得几何形状,再根据变化组件定义的位置渲染网格过滤器与网格渲染器联合使用,使模型显示到屏幕上
基础概念
- 坐标:X:红色、Y:绿色、Z:蓝色
世界坐标:整个场景的固定坐标,不随物体的旋转而改变
本地作品:物体自身坐标,随旋转而改变
变换工具
变换切换
播放控件
案例实现
-
搭建立体车库
在Hierarchy面板中,右击选择3D Object 中的plane,建立一个平面,右击plane选着copy,复制三个,通过inspector中的transform调节各个物体的位置。 顶点吸附:按住v键,移动光标至合适顶点处,按住左键移动物体进行吸附
-
制作子弹
-
保存(Ctrl+s) 点击左上角File,选择Save Sence
总结
- 初识Unity面板,熟记相应面板操作
- 熟记Scene面板快捷键
打组
- 可拖拽,最好创建一个空物体,将其他物体放入空物体中打组
- 被拖入物体为子类,空物体为父类,子类随父类的改变而改变,但子类的改变不影响父类
- 子类相对于父类,父类相对于世界,将子类坐标归0,子类会回到父类物体坐标位置,而不是世界坐标的原点
Material
Material
-
Project中右击创建Material
-
制作的材质需要拖到组件Mesh Randerer(网格渲染器)中的Element,也可以直接拖到GameObject中
-
修改某种材质,可以直接在材质中修改,也可以找到某个被应用该种材质的某个物体里去修改,同时也会影响其他应用该种材质的GameObject
-
纹理是可以显示在物体表面的一种属性,例如将图片直接拖入,会在project中自动创建一个material
-
Rendering Mode(渲染模式)
Opaque:基础模式 Cutout:可以去掉透明图层 Fade:褪色,可以用来制作淡入淡出的效果 Transparent:可以使物体变透明,需要调节透明度
-
Shader:显示图形图像的算法(程序、代码),具有一个设置指标的功能
不同的Shader能够给Material不同的属性面板
Shader不可以直接拖拽到物体上,需要借助材质 -
Main Maps
纹理、着色器与材质的关系
Shader提供给Material不同的属性面板,Texture、Color等是Material面板中的
属性,最终应用到GameObject(游戏对象)上
Camera
简介
- 附加Camera组件的游戏对象
- 捕获显示世界的设备
- 数量不受限制(但只能在一个Camera中留下Audio Listene,其余的需要将其勾选掉
组件
camera组件属性
Clear Flag
- Depth Only:只显示深度最深的的物体
- Solid Color:可以添加纯色背景,勾选后可以使用Background调节颜色背景
- SkyBox:天空盒,可以显示不同的周围环境,由天空盒参数决定
- Don’t Clear:一般不用,会导致花屏
Culling Mask(选择遮罩)
- 每个物体都具有Layer(层)
- 看见什么渲染什么
- 若不想看见某个物体,可以新建一个层,将物体放进去,然后在Culling Mask将这个物体层勾选掉
Projection
- Perspective 3D模式:可以调节Field of View 调节镜头远近(近大远小)
- Orthographic 2D模式:可以调节Size 调节视口大小
Clipping planes(剪裁面)
- NearL:看清楚的最近距离
- Far:看清楚的最远距离
Viewport Rect(窗口矩形)
- 具有x,y.w.h阈值,数值范围为0~1
- 可以调节game面板显示的大小
Depth(深度值)
- 若有小地图视角(小视角),深度值需要大于主视角,否则会被盖住
- 在前深度大,在后深度小
SkyBox
-
围绕整个场景的包装器,用于模拟天空的材质
-
种类:1、Six Side:主要可以放置六张图片进行包装
2、Procedural:可以设置天空大地的颜色,且有太阳![在这里插入图片描述](https://img-blog.csdnimg.cn/20201126000555690.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FpcWlxaWk=,size_16,color_FFFFFF,t_70#pic_center)
-
使用方法
1、运用材质进行制作
2、点击Window,选择Rendering中的lighting
优点:可在Sence面板中显示,且能够作为反射源影响物体
案例实现
制作小地图
- 生成MapCamera
- 解决地图中角色显示将角色新建层,Clipping Planes勾选掉新建层
- 去掉小地图多余的部分可以调节clear flag,选择Depth Only
快捷键
定位到Sence面板视角位置:Ctrl+Shift+F
InstantOC
渲染管线
GPU:
- 顶点处理:接受模型顶点数据,坐标轴转换
- 图元装配:组装面连接相邻的顶点,绘制为三角面
- 光栅化:计算三角形上的像素,并为后面着色阶段提供合理的插值
- 像素处理:对像素进行着色与缓存
CPU
- Draw call在Came面板中State中叫Batches里显示的有数值
- 判断哪些物体需要显示(渲染)
- 绘制调用Draw call 每帧调用显卡渲染物体的次数
Occlusion Culling
-
优化性能,减少Draw Call
-
属性
-
优缺点
优点:优化性能,减少电脑的负担
缺点:判断是否被挡住cpu会有额外工作量
实用性:存在被遮挡物体多且较密集时使用 -
使用步骤
LOD(Levels Of Detail 多细节层次)
- 判断重要非重要与重要模型
- 缺点:判断是需要占用多余内存
光照系统
Global Illumination
- 简称GI,即全局光照
- GI计算:使光照效果更为丰富
直接光照
提示:Scene面板点选小太阳后才能显示lighting效果
环境光照
反射光照
Shadow(阴影)
- 设置在light里面
- 产生原因:在light组件中的属性Shadow Type(影子类型)中设置
- 怎么取消个别阴影:在单一物体里找到Mesh Randerer,Light中的Cast Shadows选择是否有阴影,或者需要只留下物体或渲染双面阴影,单面物体
间接光照
- 必须是静态物体,不要忘了物体设置为静态(Static)
- 运行前,移动此类物体就会重新缓存计算,运行后就不会动
实时GI
- 四种光都存在
- 需要勾选Precomprated Realtime GI
- 在运行时也能改变光源设置
烘焙GI
-
不动物体标记静态
-
Baking
1.Rraltime:实时 对应PC端
2.bake: 烘焙 对应移动端
3.Miked: 可同时存在 -
勾选Bake GI
-
Area Light 区域光(消耗性能较多,只能烘焙)
-
预览 可以用实时GI进行预览,但会有区别
-
可以在Scene面板中Scene选择查看光照效果
光源侦测(Light Probes
-
使运动的物体与静态物体间接光更加融洽
-
使用
声音
![
上一篇: 真人亦无睡,睡则云烟浮
下一篇: python 输出九九乘法表