1.quality 里面的 texture quality 只要贴图没有开启mipmap,就都是全分辨率渲染,无论你设不设置该属性,如果设置了才会以该地方设置的分辨率渲染, 它表示 开启了mipmap之后,能渲染的最大的level,level越大,越不清楚
2.texture streaming 也是为mipmap 设置的,目的就是通过Memory Budget和 MaxLevelReduction 来节省CPU和GPU资源,控制加载mipmap的哪个通道
Memory Budget 只是一个阈值,表示超过这个阈值之后,在加载开启了mipmap的texture的时候用哪个通道。这对texture占用内存很大的游戏有用
可以通过该选项查看mipmap的情况
【厚积薄发】使用Streaming Mipmap后纹理内存没有下降的疑问
3. c# Task
使用 Async和 Await 的任务异步编程 (TAP) 模型 (C#) | Microsoft Docs
async 关键字 来修饰方法,表示该方法是一个异步方法,该方法一般包含一个或多个await关键字修饰的方法,如果不包含表示该方法是同步的,反过来,如果是同步方法,就不需要async 修饰
结合 async 和 await 来实现异步编程,并不是开启了一个新线程
Task.Run() 用来执行计算复杂的事情,是在后台线程运算
await 表示等待,在它没有返回结果之前,是不可以访问结果的
task 和 await 是两件事,task 表示开启了这项任务,可以同时开启多个,这就是异步,并没有阻碍线程的进行,而不是等待一个完成一个之后,再开启另一项任务
await 表示等待task的结果,有可能你开启的任务,很早就完成了,await 的时候,只是你要用到那个结果了。
它可以用来替代协程
4. Stopwatch 类
Stopwatch 类 (System.Diagnostics) | Microsoft Docs
用来计时用的
5. SRPBatch
通过开启该选项,来降低CPU的负载,原理就是把材质球一些不变的属性,缓存到GPU上,只有在改变的时候,CPU才会重新收集这些,发送给GPU