问题标签 [xna-4.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xna - XNA SOUND 播放问题
我目前正在开发 XNA 游戏,但是当我命令它播放 mp3 文件时,当我的文件不受 DRM 保护时,它会引发 DRM 错误。谁能向我解释为什么会这样?
windows-phone-7 - 在 Windows Phone 7 和 XNA 4.0 中使用 XML 文件
我正在为 Windows Phone 7 上的 XNA 4.0 开发一个基本的平铺引擎。我有一堆带有所有平铺位置、通电位置等的 mapdata xml 文件。
我想知道使用这些的最佳方法是什么?我已经读过,如果我想将它们与 Content 一起使用,那么我必须更改 xml 文件的布局。
有没有办法将这些文件加载到项目中的设备上并从中读取数据?
非常感谢,蚂蚁。
xna - XNA 游戏工作室 3 和 Visual Studio 2010
我使用 Visual Studio 2010 和 XNA Game Studio 4 进行游戏开发。现在我想测试“XNA Racing Game”(请参阅此处:http ://create.msdn.com/en-US/education/catalog/sample/racing_game )。我已经下载了存档,提取了文件,并使用 Visual Studio 打开了解决方案。在 Visual Studio 中出现错误 - 游戏是使用 XNA Game studio 3 构建的,我需要安装 GS 3。好的,我下载了 GS 3 并尝试安装它。现在的问题是 GS 3 需要 Visual Studio 2008。我没有 Visual Studio 2008。
是否可以将 Visual Studio 2010 与 GS 3 一起使用?
.net - 如何让 XNA 4.0 游戏在其他机器上运行?
每当我尝试在非用于开发的机器上运行用 XNA 4.0 制作的游戏时,它就无法运行。我已按照此处的说明确保所有依赖项都存在。
为了清楚起见,我做了以下事情:
- 确保我没有使用 and 中包含的任何内容
GamerServices
,Microsoft.Xna.Net.*
我的参考如下:
Microsoft.Xna.Framework
Microsoft.Xna.Framework.Avatar
Microsoft.Xna.Framework.Game
Microsoft.Xna.Framework.Graphics
Microsoft.Xna.Framework.Storage
Microsoft.Xna.Framework.Video
Microsoft.Xna.Framework.Xact
mscorlib
系统系统.Core
System.Windows.Forms
System.Xml
System.Xml.Linq
我还遵循了此处的建议,以确保问题不在代码本身之内。
我尝试了以下方法让它运行(在 Vista 和 7 上):
- 使用内置的发布功能。这会导致错误提示
Microsoft.Xna.Input.Touch
需要出现在 GAC 中。我已经尝试添加Microsoft.Xna.Input.Touch
到引用中,但这并不能解决问题。 - 将 XNA dll 文件复制到本地。这会导致一条错误消息指出
Microsoft.Xna.Game.dll or one of its dependencies could not be located
. - 复制包含在
Release
. 这会在它开始的第二个导致一个Application X stopped working...
或APPCRASH
错误消息。我的代码永远无法到达。
有什么办法可以让它工作吗?我一直在尝试修复它,随着最后期限的临近,它成为了不必要的压力的来源。
c# - XNA 4.0 - 使用 spriteBatch 和 basicEffect 滞后
我目前正在开发一款游戏,我们需要将DrawUserIndexedPrimitives和普通spriteBatch.Draw的使用结合起来。没有组合,因为我们同时使用它们,但我们首先必须使用 spriteBatch 绘制一些 2d 精灵,然后我们禁用 spriteBatch 以启用 basicEffect 并绘制图元,最后再次启用 spriteBatch。下面的代码显示了发生问题的代码部分。
如果下面的代码被引用,则延迟停止。
真的是我们不能同时使用 spriteBatch 和 basicEffect 游戏没有很多滞后吗?它已经在 3 台不同的计算机上进行了测试,从非常旧的笔记本电脑到全新的游戏玩家 PC。游戏因延迟而无法玩。
lighting - XNA 4.0 for Xbox 360 中的照明设计模式?
我想知道是否有人有任何好的模式来处理 Xbox 360 的 XNA 中的照明。我目前正在尝试实现聚光灯组件。我读过关于延迟着色作为降低复杂性的一种方法。我还听说这对 Xbox 360 来说不是一个好主意,而且在 XNA 4.0 中比在 XNA 3.0 中更难。我的目标是制作一个可重用的组件,它封装了可在游戏中使用的聚光灯效果。
谢谢,
-约翰
compiler-construction - (XNA 4.0) 是否有 (XNA 3.1 "Effect.CompileFromFIle") 等效项?
我正在为 D3D9、D3D10、OpenGL 和 XNA 之间的跨平台游戏和工具制作 .NET 3D 库,它们将在 Windows、XBOX、Phone7、MacOSX 和 Linux(可能是 iPhone 和 Android)上运行。
所以我的问题是......,我希望能够像在 XNA 3.1 中一样在 XNA 4.0 中编译效果文件......微软取消此功能的借口是不合法的,因为它杀死了 XNA 用于制作工具为您的游戏(如效果编辑器)。
如果有人知道解决此问题的方法并且可以发布一些代码或将我指向正确的方向,那将是很好的 tnx。
c# - Draw() 20,000 32 x 32 纹理或 1 个大纹理 20,000 次
我正在使用 .NET Framework 4 在 C# 中进行编程,并打算使用 XNA 制作基于图块的游戏。我有一个大纹理(256 像素 x 4096 像素)。请记住,这是一个基于图块的游戏,所以这个纹理之所以如此庞大只是因为它包含许多图块,每个图块都是 32 像素 x 32 像素。我想专家们肯定会知道基于图块的游戏是什么样的。方向是正交的(如棋盘),而不是等距的。
在 Game.Draw() 方法中,我有两个选择,其中一个会比另一个更有效率。
选择/方法#1:
半伪代码:
说明: 因此,有效地,第一种方法是多次引用一个大纹理,每次使用这个大纹理的一个小矩形来绘制适当的平铺图像。
选择/方法#2:
半伪代码:
说明: 所以,实际上,第二种方法是多次绘制许多小纹理。
问题:使用哪种方法,为什么?就个人而言,我认为使用第一种方法会更加有效。如果您考虑一下这对地图中的瓦片数组意味着什么(例如,考虑具有 2000 x 2000 个瓦片的大地图),每个瓦片对象只需包含 2 个整数,用于源的 X 和 Y 位置一个大纹理中的矩形 - 8 个字节。但是,如果您使用方法 #2,则地图瓦片数组中的每个瓦片对象都必须存储一个 32×32 纹理 - 一个图像 - 必须为 RGBA 像素分配 32 x 32 倍的内存 - 每个瓦片 4096 字节然后?那么,哪种方法以及为什么?第一要务是速度,然后是内存负载,然后是效率或专家认为的任何东西。
c# - XNA 3D 点云
我正在尝试使用 XNA 和 Kinect 输出实时 3D 点云(307,200 点);然而,自从我上次使用 XNA 已经很久了,4.0 改变了一些东西。
谁能指出我正确的方向?我一直在修改 Primitives3D 演示,但我有点希望有一个库或其他东西可以帮助我不要在这上面浪费太多时间,因为它只是一个概念证明。
谢谢!
ironpython - XNA - XBOX 上的脚本?
我已经将 IronPython 整合到我在 Windows 上的 XNA 游戏中,但是,当然,这在紧凑的框架上不起作用,因为 DLR 的东西不可用。
是否有任何可用的脚本对象实现可与紧凑框架一起使用?无需重新编译即可实时调整系统非常方便。