如题,在3d项目生成了重复的成千上万的3d物体,进行了合批处理,打包到微信之后,帧数一直在降低,但是drawcall很正常,vert和tir比较高。请问有什么办法可以处理吗?
降面, 另外drawcall 不是游戏的唯一指标, 太低drawcall意味着cpu压力很大
另外成千上万个你也不可能全部同时渲染, 可以区域划分, 把镜头外的active = false
如果镜头外的也有逻辑, 就逻辑和渲染分离, 这就考验你代码设计能力了
因为游戏镜头是固定的 成千上万的都需要处理在镜头。类似于一个全镜小地图,上面ai和自己走的痕迹。 
那镜头固定,你模型和贴图就不需要太精美了, 那更需要表现和逻辑分离, 不要全部对像加都一个update, 直接像ecs那样, 连辑层只要处理有变化的对像就好, 另外for 循环不要一帧到底, 分帧一批一批运行
先上个图,看看左下角统计,性能消耗点在那
估计就是3d物体多了 面太多
好的 感谢 这就研究一下
你玩其它游戏,脚印时间久了都是会自动消失的 
目前是这种解决方式 但是这边需求还是要完整的留着
脚印片不应该用这种方法处理, 你可以参考一下网上unity 如何处理雪地留下印,
弄一个camera, 然后clear Flags改为Don’t Clear, 镜头的内容都只渲染脚印并投射到render texture上, 然后一开始a camera 渲染, 其间生成一个脚印就下一帧销毁, 因为clear Flags = Don’t Clear 你会发现上帧渲染的脚印像还在, 最后renderTexture作为地板的纹理就好
如果脚印要按时消息, 那就两个camera, 其中一个投影成黑白色, 然后shader 每帧把rgb值下降, 然后跟另一个镜头的脚印混合(就是裁剪图原理)
这种方法 你每车都只有一个脚印节点, 就不会成千上万过影响性能了
好的 感谢大佬。
必须砍需求 
最高效做法,你是懂行的
牛逼6666
你是说自己写 code,判断node是否在镜头外,镜头外面的active =fasle?
但是我感觉这功能应该引擎提供比较好啊?
不太明白你说啥, 我方法只是用一个镜头拍下所有脚印, 然后投影到一张rendertexture上, 然后把这张texture做为一个平面的纹理就好

