unity3d - Unity,我应该将我的游戏引擎脚本附加到什么对象

我和我的 friend 正在构建一个简单的闲置游戏,作为我们在 Unity 中的第一个项目。 我们已经构建了一个脚本来处理所有计算,并与玩家看到的每个 GameObject 进行通信。

现在,我们应该将此脚本附加到什么?

我们宁愿不使用 GameObject 因为:

1) GameObject 有点矫枉过正

2) GameObject 位于我所有“物理”对象所在的空间(那将是无用的,因为脚本不必“存在于某处”)

第一次在stackoverflow发帖,如有错误请指出^^

最佳答案

惯例是将其放在主摄像头或空的 GameObject 上。

如果你真的不想做其中任何一个,你可以让你的类静态化。

如果您的类继承自 MonoBehaviour,您必须将其附加到 GameObject。如果您想将它附加到 GameObject,它必须继承自 MonoBehaviour

如果您想更好地理解 Unity 方式,我建议您阅读实体组件系统:

GameObject 是实体

MonoBehaviour 是组件

服务和管理器通常在 Unity 中作为组件实现,然后附加到主摄像头或以它们命名的空 GameObject

https://stackoverflow.com/questions/39846420/

相关文章:

python - 如何删除 Tkinter OptionMenu 小部件的边框

hibernate - Spring Boot/JPA/Hibernate,如何根据Spring配置

sql-server - 为什么即使回滚事务,SQL Server 仍保持可变状态?

php - 使用带有表前缀的 DB::raw()

sql - dplyr sql连接

python - 如何使用 python 从网站上抓取图表?

java - 从测试用例调用 Controller 时,使用自动连线组件测试 Controller

python - 如何清除 PYQTGRAPH 中的 ScatterPlotItem

coldfusion - 如何从 Coldfusion 中的结构数组中删除重复项

apache-kafka - 监控kafka的UI工具