问题标签 [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.
c# - XNA 4 和外部参考
我试图在 Shawn Hargreaves 博客上实现类似于外部引用示例的东西
我遇到的问题是,当 VS 尝试编译 xml 文件时,它会抛出一个错误,例如
错误 1 构建内容引发 ArgumentException:外部引用“C:\Work\Company\Project\trunk\Project.Content\Sprites\Effects\EffectsSprite.tga”不是已编译的 .xnb 文件。在 Microsoft.Xna.Framework.Content.Pipeline.Serialization.Compiler.ContentWriter.WriteExternalReference[T](ExternalReference
1 reference) at Microsoft.Xna.Framework.Content.Pipeline.Serialization.Compiler.ExternalReferenceWriter
1.Write(ContentWriter 输出,ExternalReference1 value) at Microsoft.Xna.Framework.Content.Pipeline.Serialization.Compiler.ContentTypeWriter
1.Microsoft.Xna.Framework.Content.Pipeline.Serialization.Compiler.ContentWriter.InvokeWriter[T](T value, ContentTypeWriter writer) 在 Microsoft.Xna.Framework.Content.Pipeline.Serialization 中写入(ContentWriter output, Object value) .Compiler.ContentWriter.WriteObject[T](T 值) 在 Microsoft.Xna.Framework.Content.Pipeline.Serialization.Compiler.ContentWriter.WriteSharedResources() 在 Microsoft.Xna.Framework.Content.Pipeline.Serialization.Compiler.ContentWriter。 Microsoft.Xna.Framework.Xna.Framework.Content.Pipeline.Serialization.Compiler.ContentCompiler.Compile 的 FlushOutput()(流输出,对象值,TargetPlatform targetPlatform,GraphicsProfile targetProfile,Boolean compressContent,String rootDirectory,String referenceRelocationPath)在 Microsoft.Xna.Framework。 Content.Pipeline.BuildCoordinator。Microsoft.Xna.Framework.Content.Pipeline.BuildCoordinator.SerializeAsset(BuildItem item, ObjectassetData) 在 Microsoft.Xna.Framework.Content.Pipeline.BuildCoordinator.BuildAssetWorker(BuildItem item) 的 SerializeOutputAsset(BuildItem item, ObjectassetData, String outputFilename)在 Microsoft.Xna.Framework.Content.Pipeline.BuildCoordinator.BuildAsset(BuildItem item) 在 Microsoft.Xna.Framework.Content.Pipeline.BuildCoordinator.RunTheBuild() 在 Microsoft.Xna.Framework.Content.Pipeline.Tasks.BuildContent.RemoteProxy .RunTheBuild(BuildCoordinatorSettings 设置, TimestampCache timestampCache, ITaskItem[] sourceAssets, String[]& outputContent, String[]& rebuiltContent, String[]& 中间体, DictionaryMicrosoft.Xna.Framework.Content.Pipeline.BuildCoordinator.BuildAssetWorker(BuildItem item) 在 Microsoft.Xna.Framework.Content.Pipeline.BuildCoordinator.BuildAsset(BuildItem item) 在 Microsoft.Xna 的 BuildCoordinator.SerializeAsset(BuildItem item, ObjectassetData) .Framework.Content.Pipeline.BuildCoordinator.RunTheBuild() 在 Microsoft.Xna.Framework.Content.Pipeline.Tasks.BuildContent.RemoteProxy.RunTheBuild(BuildCoordinatorSettings 设置, TimestampCache timestampCache, ITaskItem[] sourceAssets, String[]& outputContent, String[ ]& rebuiltContent, String[]& 中间体, 字典Microsoft.Xna.Framework.Content.Pipeline.BuildCoordinator.BuildAssetWorker(BuildItem item) 在 Microsoft.Xna.Framework.Content.Pipeline.BuildCoordinator.BuildAsset(BuildItem item) 在 Microsoft.Xna 的 BuildCoordinator.SerializeAsset(BuildItem item, ObjectassetData) .Framework.Content.Pipeline.BuildCoordinator.RunTheBuild() 在 Microsoft.Xna.Framework.Content.Pipeline.Tasks.BuildContent.RemoteProxy.RunTheBuild(BuildCoordinatorSettings 设置, TimestampCache timestampCache, ITaskItem[] sourceAssets, String[]& outputContent, String[ ]& rebuiltContent, String[]& 中间体, 字典Microsoft.Xna.Framework.Content.Pipeline.Tasks.BuildContent.RemoteProxy.RunTheBuild(BuildCoordinatorSettings settings, TimestampCache timestampCache, ITaskItem[] sourceAssets , String[]& outputContent, String[]& rebuiltContent, String[]& 中间体, DictionaryMicrosoft.Xna.Framework.Content.Pipeline.Tasks.BuildContent.RemoteProxy.RunTheBuild(BuildCoordinatorSettings settings, TimestampCache timestampCache, ITaskItem[] sourceAssets , String[]& outputContent, String[]& rebuiltContent, String[]& 中间体, Dictionary2& dependencyTimestamps, KeyValuePair
2[]& 警告)C:\Work\Company\Project\trunk\Project.Content\Sprites\Effects\AtlasAuto.xml 项目
我应该如何处理 Xml 文件引用的文件?鉴于它与 xml 文件位于同一文件夹中,我尝试:
- 包含在内容项目中并使用 Texture - XNA 框架对其进行处理,
- 将其从项目中排除并
- 不要构建文件,而只是将其作为内容复制...
似乎没有任何效果。我想知道该示例是否适用于 XNA4,或者是否适用于 XNA3,并且他们改变了它在 XNA4 上的工作方式......
任何想法?
windows-phone-7 - 在 XNA 中捕获 3D 模型上的触摸事件
我正在使用 XNA 4.0 为 Windows Phone 7 开发 3D 游戏。我想问的是如何在 3D 模型上捕捉触摸?目前我在高度图上有一个 3D 主角和一个 3D 怪物。我想要做的是当我碰到怪物时,主角色会砍他。任何的想法?
xna - XNA 是否存在相机库?
XNA 是否存在不同相机的库?我四处搜索,发现许多不同的相机类具有不同的接口(或根本没有定义的接口),但没有标准相机定义的通用接口。
我觉得一定有一些我遗漏的东西,这似乎是任何游戏的一个重要方面,所以缺少相机库一定是有充分理由的。
c# - 如何用字符串定义结构?
我有
无论如何我可以使用数组中的字符串来定义按钮吗?示例(尽管这不起作用):
编辑:我希望这是有道理的,我不确定我是否解释得很好。
c# - XNA 可以处理多少个(低多边形)模型?
我知道以下是一个模糊的问题,但我遇到了我在 XNA 中没有预料到的性能问题。
我有一个低多边形模型(它有 18 个面和 14 个顶点),我试图在屏幕上绘制(高!)次。在我绘制这个模型 5000 多次之前,我得到了超过 60 FPS(在一台像样的机器上)。我在这里问太多了吗?我非常希望至少将该数字增加一倍或三倍(10-15k)。
下面给出了我实际绘制模型的代码。我试图从绘制周期中消除尽可能多的计算,我可以从中挤出更多,还是更好的替代方案?
注意: tile.Offset 在初始化期间计算一次,而不是每个周期。
xna - 可点击的瓷砖
我最近决定使用 XNA 框架学习和制作小型 2D 游戏。因此,我首先在 Kurt Jaegers 和 atm 的“XNA 4.0 Game Development by Example”一书中编辑了一个示例,我一直坚持显示精灵。 . 所以我展示了一个带有随机碎片的板,但不知道如何绘制不同颜色的点击瓷砖以表明我已经选择了它。这是主要的 Game1 类:
板级:
和 GameTile 类:
这就是它的外观:http: //i55.tinypic.com/2yuizbl.png
c# - 在 XNA 中创建第二个 runloop
我正在将游戏引擎从 Java 移植到 Windows Phone 7 XNA。我正在努力解决的一件事是如何创建模式对话框。该对话框使用 SpriteBatch 在 XNA 中呈现,就像其他所有内容一样,但我基本上想要的是这样的:
在Dialog.Ask
用户单击其中一个按钮之前不会返回。我所做的唯一一件事就是不断调用RunOneFrame()
游戏的方法:
这样做有几个问题:
RunOneFrame
仅用于调试目的。- 输入无效!调用
TouchPanel.GetState()
orGamePad.GetState(PlayerIndex.One)
不返回新值。
有没有办法在不丢弃 Game 类和它为初始化所做的一切的情况下启动运行循环?而且我真的不知道如何没有 Game 类,因为在 Windows Phone 7 XNA 应用程序中没有 Main() 方法。它直接进入 Game 构造函数。
c# - 在 XNA 4.0 中使用多个屏幕
我正在努力寻找如何在 XNA 4.0 中检测可用屏幕的信息。
我要做的是获取可用“屏幕”的列表,选择一个并在该屏幕上全屏启动我的 XNA 应用程序。
具体来说,我不想在通过 HDMI 电缆连接的全高清电视上以全屏模式打开 XNA 窗口。
谢谢,斯特凡
c# - HLSL - 组合纹理
我正在尝试在 HLSL 中组合两个纹理 - 具体来说,我想从基础图像中获取 alpha 值,并从叠加图像中获取颜色数据。
我的像素着色器看起来像这样:
我的混合状态如下所示:
这给我留下的是应该是覆盖颜色的褪色版本。我已经尝试了 BlendState 设置的多种排列,并且玩了很多像素着色器数学,但无济于事。
谁能指出我正确的方向?
提前感谢=)
graphics - 如何检查两张图片是否相互“接触”?
我正在编写一个游戏,其中用户拥有一艘宇宙飞船,需要“杀死”一些试图杀死他的敌人。
我为用户的飞船图片、子弹图片和敌人图片提供了“纹理 2d”。
我想知道,用户将子弹射向敌人后,如何检查子弹是否伤害了敌人?
换句话说 - 什么功能检查一张图片是否“覆盖”(甚至部分)另一张图片?
谢谢!:-)