Unity中为什么要烘焙?
把物体模型放进了场景里之后, 引擎会计算光线,光线照到你的物体的表面形成反光和阴影。 如果不烘焙, 游戏运行的时候,这些反光和阴影都是由显卡和CPU计算出来的。你烘焙之后,这些反光和阴影都记录到了你的模型里,变成了新的贴图了,运行的时候,显卡和CPU不需要进行对环境光效果的运算了。如前面的回答,节约CPU资源。
每一个物体上的Static起什么作用?
直面意思就是说这个object是在程序运行时是静止不变的,确保不被改变,一般多用于场景中静止的物体。
在unity内部会有不少操作来检测该object是否为static的,对于static的物体进行一些特殊处理,比如说在Occlusion culling时会对static物体进行patching,在rendering优化时也会根据是否为static来进行不同的优化,在lightmaping时,会根据是否是static来进行光照等等。
静态物体在脚本加载的时候就开始渲染,不随着update 每帧更新,如果要移动物体,就必然要重新刷新,就是动态的了 ,即使你把移动的物体勾选了static,draw calls 也并不会减少,并且效率和原先的一样没有得到优化。
2、可步行区域是通过测试代理可以站的位置而自动从场景的几何图形中构建的。然后,这些位置被连接到一个表面,放置在场景几何的顶部。这个表面被称为导航网格(简称NavMesh)。
3、要找到场景中两个位置之间的路径,我们首先需要将开始和目的地位置映射到它们最近的多边形。然后我们从开始位置开始搜索,访问所有的邻居,直到到达目的地多边形。追踪访问的多边形可以让我们找到从起点到终点的多边形序列。找到路径的常用算法是*(发音为“A星