几何化 光栅化 主体都是GPU
着色器都是可编程的
着色器 走点线面的过程 不要的裁剪掉, 进行屏幕映射,将三角形显示 绘制 成像
几何化 光栅化 主体都是GPU
着色器都是可编程的
着色器 走点线面的过程 不要的裁剪掉, 进行屏幕映射,将三角形显示 绘制 成像
渲染状态 用了什么东西,或者说由什么组成
CPU是甲方 GPU是乙方
静态合批 同样的mesh 同样的材质球 一次处理
动态合批 顶点数小于800 相同的合成一个新的
GPU instance 也是合成一个 降低draw call
渲染流程
光栅化就是根据数据显示图像
应用 相当于在Unity编辑器下
几何 将顶点坐标转换成屏幕空间
光栅 将数据进行图像显示
RAM 主内存
显存 显卡的存储器
draw call 绘制命令 CPU 向GPU 发送的指令 越少越好
准备开始啦,加油
降低draw Call
batches 就是drwaCall 指令 降低批处理 越少越好
Saved by batching 越多越好。
顶点数和三角数越少越好
shadow casters 越少越好
将自己p好的图片效果,放进去进行展示。
反射探针,收集范围内信息,进行反射。
都需要烘焙。
灯光探侦组,反射光照信息,通过增加探针丰富还原光照阴影细节
指定距离内使用的烘焙光,距离外无阴影
在指定距离下,使用的实时光,在距离外,使用烘焙光
高效,但质量低
Meshrender castShadow on off
edit 下
四种,
点,平行,车灯 spotLight ,区域光
Cookie 灯光产生的图案
Flare 耀斑,抬头看太阳
天空盒颜色影响环境光反射
金属物体反射环境光
Model层负责管理数据,Utility层负责提供工具API,及提供API又有状态的代码放在System层
表现逻辑:当Model数据变更时,视图来显示变更后的数据;
交互逻辑:接收用户输入改变Model数据
有没有状态可以理解为这个对象需不需要维护数据
System层中有数据变量和方法
在表现层想要使用System的话,需要通过Command执行
System层的利用率针对不同的项目是不一样的,有可能使用率很高,也可能根本用不上
在构造函数中设定默认值,以及监听数值变化并存储
定义接口,定义继承接口的实现类
IOC容器的两个核心API,1.根据Type注册实例 2.根据Type获取实例
IOC容器中有一个字典,用于存储单例
Init交给子类去实现,并提供必备的注册方法给子类