通常,当使用 XNA 的内容管道加载内容时,编译后的 .xnb 文件是使用分配的“ Assets 名称”访问的,该 Assets 名称可以在 Visual Studio GUI 中定义。默认情况下,此名称与内容的文件名相同,没有扩展名。因此,您通常无法加载名称仅扩展名不同的两个文件,因为生成的 .xnb 文件会具有冲突的名称。如果您手动更改其中一个文件的 Assets 名称,生成的 .xnb 文件将不再冲突。
对于我正在编写的关卡加载系统,我希望能够从两个具有相同名称(level1.png 和 level1.col)的单独文件中加载纹理数据和碰撞数据,其中碰撞数据只是一个文本文件。我已经编写了一个自定义内容处理器来使用内容管道加载碰撞数据。
似乎无法在普通游戏代码中直接修改 Assets 名称,但我无法确定是否可以在自定义内容处理器中完成。这可能吗?还是我必须手动修改所有 Assets 名称才能执行此操作?
我会在 App Hub 论坛上问这个问题,但我在尝试登录该站点时遇到了相当困难的时间,而没有为开发人员包注册(并提供信用卡信息)。我目前正在使用 XNA 开发 Windows 平台游戏,目前对为 X360 开发没有兴趣。
最佳答案
为了提供我发现的内容,似乎也无法从自定义内容处理器中更改 Assets 名称。
关于c# - 是否可以在自定义 XNA 内容处理器中定义 Assets 名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6398767/