【问题标题】:Loading content and project layout in XNA在 XNA 中加载内容和项目布局
【发布时间】:2013-01-24 17:14:54
【问题描述】:

我对 XNA 的工作方式有点困惑

所以我试图在 XNA 项目中进行以下布局:

.cs = file
<*>(); = list
new *(); = object
" : " = an inheritance
*(folder) = folder (I think you probably figured that one out)

在 Box.cs 中加载了盒子的纹理(对于墙壁也是如此) 所以当我做 new box();我只需要指定位置。

但我不知道每个文件使用什么,在哪里调用什么,或者我如何加载我的纹理(我在 LoadContent() 中尝试过,但并不总是在正确的时刻调用。)

我尝试搜索具有类似布局的项目以找出这些内容,但我真的找不到一个好的项目,或者我没有输入正确的关键字。

有人可以解释一下我应该如何以及在哪里做事吗? 或者如果你真的很慷慨,一个存在这种布局并且只加载活动关卡的纹理的项目(例如:直到 lvl 2 才加载墙壁)

如果有什么不清楚的地方,欢迎提问,我会尽量解释一下。

【问题讨论】:

  • 很抱歉,但我怀疑您的问题会有很多答案。尝试将其拆分为多个部分。示例:“如何在 XNA 中加载纹理?”,...

标签: c# xna


【解决方案1】:

只需确保在尝试绘制它们之前加载所有纹理,切换关卡时应该这样做。

如果你的游戏没有那么多内容,我之前所做的就是在LoadContent() 中的静态Dictionary&lt;String, Texture2D&gt; 中加载所有纹理,然后每个对象都没有纹理,而是有一个string 该字典的键。

【讨论】:

  • 是的,这是一种方式,我正在考虑将它们加载为静态,这样我就可以一遍又一遍地绘制相同的图像,而不必每次都在内存中加载相同的图像使用它
  • @Kiwi 请记住,ContentManager 保留了已加载对象的内部缓存,因此如果您要求它多次加载相同的纹理,它可以快速检索它而不必再次加载它.
【解决方案2】:

好的,我一直在搜索更多内容,并且获得了 XBOX 现场独立游戏的学生许可证,

在那里我找到了一个演示项目 + 教程(双赢!)明天会研究它,但这应该足以开始我的项目了 :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多