Initialize和LoadContent之间的XNA差异
本文关键字:XNA 差异 之间 LoadContent Initialize | 更新日期: 2023-09-27 18:03:45
Initialize和LoadContent有什么区别?我曾试图通过将事物从LoadContent移动到Initialize并返回来制动XNA游戏,但只要您以适当的方式调用事物,无论我把它放在哪里,一切都可以正常工作。
LoadContent
的文档说明
这个方法由Initialize
调用
Initialize
的文档状态
在从Game派生的类中,需要调用base。Initialize在Initialize中,它将自动枚举所有已添加到game中的游戏组件。组件并调用它们的Initialize方法。
所以基本的initialize方法将在任何内容被加载之前初始化游戏组件,LoadContent方法确保你的资源在适当的时间被加载。
Game.Run()
(参见您的Program.cs,即game.Run()
)是运行的方法:
1) Game.Initialize()
(调用Game1.Initialize()
和初始Game1.LoadContent()
)。
2) Game.BeginRun()
(通常调用Update()
、Draw()
和随后的LoadContent()
/UnloadContent()
)。
MSDN - Game Class
换句话说,初始化的 LoadContent()
语句可以放在 Initialize()
中,但问题是当您想在初始化完成后加载,重新加载或卸载时
简而言之:将所有加载的内容保持在LoadContent()
中,以避免混淆。