第一阶段_第二部分_功能介绍
第二部分
上一作业
1.z前x右y上;把子物体旋转后;容器的坐标为朝前z,用local选项。
2.Transformer为相对的
3.如果有父物体子相对于父的transformer
Material(材质)
外观包含关系:Mesh renderer->material{color;texture}
材质不是组件,是资源,material是放到mesh renderer组件里的。
Material
Rendering mode
渲染模式{透明,半透明,剪裁}
texture纹理=贴图
Albedo{RGB}颜色
Metallic金属
当图片放到物体上时,会自动生成一个material 放到物体的mesh renderer组件里的
资源->材质->组件->物体
剪裁
1.Material->Rendering mode渲染模式{透明,半透明,剪裁}->Cutout
*什么图片可以cutout,-rgba(a为透明)的才可以cutout。
*远处的树为贴图,降低渲染量
透明
、
淡入淡出
- Material->Rendering mode渲染模式{透明,半透明,剪裁}->fade
- 继续调A;
Shader(材质的本质:着色器)
定义:控制显卡如何运算的算法。
关系重点
Cg语言:GPU渲染
Csharp:游戏逻辑
Shader定义属性,控制功能(不含有具体数值的设定)
Material定义数值,面板(实现具体数值的设定)
物体轮廓
物理着色器
在unity5里创建的材质,standard的shader是物理着色器。
1.节点式开发
视锥
关于摄像机视野渲染
1.视野以外的物体不会渲染
2.视锥体以内都会渲染。
组件
(Tag标签layer层)对物体进行划分的。
Clear flags:空白部分的渲染样式。
Culling mask:哪些层的物体需要显示,摄像机选择不需要渲染的物体。
Projective:(3d和2d切换)
Culling planes:视野范围,视锥范围大小。
天空盒
定义:模拟天空的材质
Material->Skybox->6 Sided
制作
做法1:材质给与摄像机的Skybox的组件中
常用做法2:Window-》lighting-》skybox
默认天空盒时procedure(程序上的)
-
课下作业小地图的制作
- Ctrl+shift+F快速定位摄像机位置
- 创建父物体空player,(摄像机和模型)为子物体,模型相对数值改为0;
(防止模型更改)
- 创建地图摄像机
-
地图摄像机Projection改为2维。
- 人物头上放一个平面/地图人物贴图。Cutout
-
摄像机用culling mask决定各个摄像机可看见的层layer。
-
更改模型layer。
- 进行层的筛选。
-
Clear flags:depth only 删除空白部分
InstantOC(插件)
渲染管线
定义:
通常一个物体一个Draw Call
Cpu准备顶点坐标交给gpu的过程
Cpu收集信息->图形api->gpu
渲染管线流程
Drawcall。手游的<200
渲染管线,图形数据在gpu进过处理的过程。
Occlusion culling(遮挡剔除)
优点:降低darwcall
缺点:cpu任然需要消耗
需要:量大,密集
步骤
-
为物体组添加【标签】和【层】:tag;:layer
- 为【一定是主摄像机】摄像机添加IOCcam脚本。
- 为物体组添加碰撞组件,collider
- 设定IOC组件的值。
LOD(多细节层次)
根据位置更改模型
根据距离镜头离物体的远近,分配配置低,中,高的模型,来节省资源。
缺点占用内存,cpu。
名称必须为【低配:Lod_0】 【中配:Lod_1】 【高配:Lod_2】
什么时候用?:会变化距离的精妙模型。
步骤
光照系统
GI(全局光照)
阴影
灯光透光可以开启阴影解决。
阴影距离上的剔除
笔试1:请简述渲染管线
1.
2.
3.
4.
5.传入缓存
6.缓存输出屏幕。
笔试2:遮挡剔除
定义:视锥内看不到的剔除。
优点:渲染量降低,drawcall降低。
缺点:算法导致cpu消耗性能。
适用性:场景内有大量被遮挡的物体。
笔试3:LOD(可能)
根据距离降低模型质量或更改模型为图片。
优点:降低顶点数和面数
缺点:算法导致cpu消耗性能,内存占用率高,安装包体积变大,美工工作时间延长。
没有降低drawcall。没有变化。
适用性:场景内有没有精密模型,且场景发生大变化。