【解决】Unity Profile | FindMainCamera

开发平台:Unity 2020.3.7f1c1

关键词:FindMainCamera

问题背景


  • ModelViewer 是开发者基于 UnityEngine 编写的相机控制组件。
  • ModelView.Update 中调度52次并触发3次GC.Collect。显然并不期望并尽可能避免 Update 造成的GC 问题。
  • 事实上 FindMainCamera 并不属于脚本内部直接调用所造成。而是通过 Unity API 间接调用造成。

追溯触发 FindMainCamera 来源


这似乎是 Camera.main 造成的。在 ModelView.Update 中引用 Main Camera 检测鼠标是否触碰在 UI 上时造成的。Camera.main 估计类似于 Camera.FindObjectWithTag("MainCamera").GetComponent<Camera>() 形式,每帧执行 FindMainCamera 方法。实际上,Main Camera 的查找仅一次就足够。

解决方式


使用全局变量存储 Main Camera 对象。避免高频下使用 Camera.Main 进行 Main Camera 引用。

相关推荐
tohand5 小时前
Unity 完美假阴影实现文档
unity·游戏引擎
@蓝莓果粒茶5 小时前
【Unity笔记】保姆级AssetBundle详解(含代码+避坑指南)
笔记·游戏·unity
Zephyr_07 小时前
Unity2D游戏制作
游戏·unity
nnsix8 小时前
Unity 动画 Avatar 笔记
笔记·unity·游戏引擎
拾忆丶夜9 小时前
unity 热力图学习
学习·unity·游戏引擎
小贺儿开发9 小时前
Unity3D 旋钮交互视频控制系统 1.0
unity·人机交互·视频·配置文件·videoplayer·输入系统·角度
winlife_11 小时前
在 Unity Editor 里跑 HTTP MCP server:主线程边界与请求 marshal 的实现要点
http·unity·游戏引擎·多线程·mcp
阿松爱学习15 小时前
【Unity开发】Rigidbody中Body Type属性
unity·游戏引擎·unity开发
winlife_15 小时前
AI 怎么验证 Unity PlayMode 行为:截图 + 输入模拟的完整闭环
人工智能·unity·游戏引擎·ai编程·claude·playmode
CandyU218 小时前
Cursor AI Unity
unity