【问题标题】:Does adding many game GameObjects in scene (not rendered) inefficient for performance? [Unity]在场景中添加许多游戏游戏对象(未渲染)是否会降低性能? [统一]
【发布时间】:2014-12-28 21:22:39
【问题描述】:

我正在使用 Unity 4.6 开发 2D 游戏。我想知道场景中有很多游戏对象(相机视线之外)是否会对性能产生相当大的影响。 例如,制作一个可滚动的姓名列表(比如 1000 个姓名)是否有效? (每个都是一个游戏对象,有一个文本、一个按钮等) 我将它们遮盖在指定区域(例如其中 10 个同时可见)。

提前致谢!

【问题讨论】:

    标签: performance unity3d scrollable gameobject


    【解决方案1】:

    取决于对象是否具有可见组件。如果它们这样做了,即使它们“离机”,引擎也会绘制它们。一个游戏对象本身的负载很轻——基于图块的游戏可能有数千个内存。如果您计划在离机场景中绘制大量数字,则需要切换精灵的可见性。这就是 SpriteManager 的用武之地。它将检查精灵是否在相机的矩形中,并禁用不在的精灵。如果有点复杂,这里有一个半官方的例子:

    http://wiki.unity3d.com/index.php?title=SpriteManager

    【讨论】:

    • Unity 的内置 2D 功能(如 SpriteRenderer)是否管理此问题?或者我必须在 SpriteRenderer 离开相机后禁用它? Unity 4.6 最近添加的新 GUI 系统中的 UI 元素怎么样?
    • 目前引擎将继续从相机中绘制精灵。 UI 元素通常在相机视图中定义,因此不会带来任何变化。我不知道 Unity 是否计划改变这种行为 - 虽然许多 3d 游戏受益于绘制相机对象,但基于 2d 瓷砖的游戏却没有那么多。也许统一 5.0+
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多