0

这究竟是做什么的?

Content.RootDirectory = "Content";

以及它与以下内容有何关系:

player.Initialize(Content.Load<Texture2D>("player"), playerPosition);

谢谢。

4

3 回答 3

2

我将假设您的Content对象实际上是一个ContentManager用于加载资产的对象。

第一行设置加载内容项目中资产的默认目录。

Content.RootDirectory = "Content";  

如果您的内容位于项目结构中的其他位置,这可以避免总是必须指定包含文件夹的完整路径。

开始了解如何使用这些的一个好地方可能是阅读一些文档。ContentManager 使加载内容变得非常简单。让您的代码更容易阅读的一个好主意是指定您正在加载的内容的类型,例如,

player.Initialize(Content.Load<Texture2D>("player"), playerPosition);

这使得更容易理解实际加载的内容,因为在加载资产时省略了文件扩展名。

希望有帮助。

于 2012-08-03T01:20:12.470 回答
1
Content.RootDirectory = "Content";

“内容”是物理存储图像和模型资产的文件夹/目录。您的解决方案中应该有一个使用新 XNA 解决方案自动创建的目录。

player.Initialize(Content.Load("player"), playerPosition); 

在这里,一个播放器(我假设是自定义类)正在使用要显示的资产名称(“播放器”)进行初始化,并且它在 2D/3D 空间中的位置。

本质上,第一段代码告诉编译器所有内容都在哪里,而第二段代码为播放器类加载资源。

于 2012-08-03T01:15:13.153 回答
1
Content.RootDirectory = "Content"; 

它为ContentMaganer. 在您的 XNA 解决方案中,您通常有 2 个项目。一个是您的所有逻辑所在的项目,第二个是您放置所有纹理、字体、声音等的内容项目。如果您设置该内容管理器,它将在那里查看以加载资产。

player.Initialize(Content.Load("player"), playerPosition);

这里ContentManager的游戏正在加载播放器以进行播放器初始化。如果您设置 RootDirectory 然后ContentManager将加载Content.Load("Content/player")

于 2012-08-03T01:20:05.943 回答