monogame

HLSL“优化”使用的变量

这是我的二维多边形着色器。出于某种原因,即使顶点着色器穿过所有墙壁,编译器仍将其视为未使用的变量并将其优化掉,这意味着当我尝试从 monogame 实际设置参数时,参数为 null 并且存在没有设置。我不明白为什么着色器认为 'walls' 变量显然没有被使用。 #if OPENGL #define SV_POSITION POSITION #define VS_SHADERMOD... »

c#

Monogame 使用 Graphics.DrawString(而不是 SpriteBatch.DrawString)渲染文本

使用Graphics.DrawString 将一堆(相当静态的)文本渲染到屏幕外位图,将其转换为Texture2D 一次,然后简单地调用SpriteBatch.Draw,而不是使用内容管道,有什么缺点吗?并使用SpriteFont 渲染文本?这基本上是一页文本,绘制在“一张纸”上,但用户也可以选择调整字体大小,所以这意味着我必须包含不同大小的 spritefonts。 由于这是一个仅限 Wind... »

单人游戏设置

我正在开发一个使用 C# 和 monogame 的平台游戏作为一个有趣的项目来提高我的技能。我想添加对音频、视频、控件等设置的支持,但我不知道最好的方法。 我打算有一个存储所有设置的 XML 文件,如下所示: <Settings> <Audio> <masterVolume>100</masterVolume> <mus... »

c#

Monogame 3.4 和 Windows 10 UAP 项目需要不断更新 Visual Studio 弹出窗口

所以,我一直在尝试使用 Visual Studio 在 Windows Phone 模拟器上启动 Monogame 模板,但无法正常工作。 这是我尝试过的: 在我的项目中,我遇到了在 Visual Studio 中为 Windows UAP 创建 Monogame 项目的问题。我曾尝试使用向导工具创建项目,但在项目创建后我收到需要安装通用平台工具的消息 see picture number ... »

c#

MonoGame XML IntermediateSerializer 接口和初始化器

我不知道如何命名和解释我的问题,所以如果这令人困惑,我深表歉意。 我希望能够使用实现接口的类来创建该接口的实例。但是,该接口不(也不应该,因为它对实现/扩展它的类可能无用)包含某个属性。但是,要让该类完成它的实际工作,我需要它能够正确“记住”或至少在它已经转换为接口之前对其进行初始化。 好吧,我正在尝试做这样简化的代码: 示例代码: public class DoStuff { p... »

c#

如何在数组中显示一组索引到屏幕

我正在使用 BaseItem 列表,我想在每次按下某个按钮时显示数组中的不同索引范围。 这是我尝试添加不可堆叠的不同项目的示例。 Public class BaseItem { public string name {get;set;} public string descrip {get;set;} public bool isStackable {get;set;... »

c#

需要帮助建议通过键盘输入实现动画更改

我是新来的,在编码方面并不是最好的。 (为此使用 XNA 的单游戏变体) 我已经成功地重新创建了一个类来为我制作的精灵表设置动画,但我遇到的问题是,当我尝试实现按键和动画时,动画停止移动(卡在第一帧) 我的更新类看起来像这样 previousKBState = currentKBState; currentKBState = Keyboard.GetState(); ... »

在 Monogame / XNA 中来回移动敌人

我现在正在尝试实现一个非常基本的 2D 游戏,其中一个敌人在屏幕上,它在设定点(50 和 500)之间来回弹跳,有点像太空入侵者之类的东西。我的问题是我只能让它向右走,但不能回到左边重复。 在费心研究它并真正弄清楚之前,我一直在自己编写代码,但我认为我有一些可行的方法,但它没有,我的问题是我不明白为什么。 我的代码应该像开关一样工作,Update 循环中有两个 if 语句,一个打开另一个关闭,... »

c#

在二维向量空间中移动原点

我正在尝试更多地了解 2D 空间中的向量以及如何在游戏开发中使用它们。 我创建了一个小项目,用于使用 Monogame 框架在 C# 中将向量 A“投影”到向量 B 上。 一切正常,但现在我想将我的原点(当前位于左上角)移动到自定义位置。例如,我可以在屏幕中间画线。 我想在没有图书馆帮助的情况下先了解正在发生的事情。 但我不知道如何做到这一点,如果这实际上是向量空间中的最佳实践,或者我... »

c#

Monogame 多顶点纹理

我正在尝试将 2D 游戏转换为 3D,但在纹理方面遇到了一些问题。整个游戏由立方体组成,所以我使用顶点来创建一个立方体并从 draw 方法中调用它。但是,我似乎只能使用基本效果为所有具有一种纹理的立方体着色。我想我需要使用其他类型的效果,所以我可以为每个立方体选择纹理,但不确定该怎么做。任何帮助表示赞赏 将使用如下循环在屏幕上绘制立方体。不知何故,每个立方体的纹理都不同 foreach (Ef... »

c#

在映射驱动器上构建失败,但不是在本地

我正在开发一个使用 VS2013 和 monogame 用 C# 编写的游戏。但是,monogame 不支持 XNA 内容管道(仍然),因此建议使用 Microsoft 的 XNA 和 VS2010 分别构建您的内容。由于我不想让我的主要开发机器 (Win8) 与 VS2010 等杂乱无章,因此我创建了一个 Win7 虚拟机来运行 Win7 以及 VS2010 以及构建内容所需的所有工具。我所有的... »

c#

dotnet 构建时间慢,使用 monogame

单人游戏新手。对于简单的东西,构建时间似乎真的很慢。例如,这个带有几个精灵和一个声音文件的非常小的窗口需要 9 秒。当我调整、构建、调整、构建时,这会加起来。 有没有办法加快构建时间,或者让它们增量?或者也许有不同的方法? dotnet build Microsoft (R) Build Engine version 17.0.0-preview-21378-03+d592862ed for .N... »

c#

.net 5 项目需要安装 .net core 3.1

我正在尝试将我正在开发的 MonoGame 项目升级到 .net 5。我已经升级了所有的 nuget 包。然后我将目标框架更改为.net 5。该项目编译良好并且运行完美。但是,当我尝试通过仅安装 .net 5 工具的 github 操作工作流程运行它时,编译失败并显示以下消息: It was not possible to find any compatible framework versio... »

c#

如何使用 Xamarin/Monogame 在 Android 应用的屏幕底部显示 AdMob 广告?

几个月前,我一直在用 MonoGame 开发一款游戏,几天前我刚刚发布了它。现在,我正在尝试让 AdMob 正常工作,以便发布该应用的免费精简版。我是 Android 布局的新手,所以我不知道自己在做什么。 在网上搜索了一些有关使用 MonoGame 实施 AdMob 的信息后,我能够在我的应用程序中显示广告,但该应用程序始终显示在屏幕顶部。我几乎没有找到任何关于专门使用 MonoGame/Xa... »

如何让我的 Monogame windows 游戏兼容每一种屏幕类型?

首先,我在这里发布了这个问题,而不是在游戏开发中,因为我刚刚开始我的项目,这个问题并不是关于 XNA 或 Monogame 库的。 所以,我正在努力让我的游戏兼容每一种屏幕类型。 我需要注意两个方面 - 比率和像素大小。 在我为我的游戏创建任何图形之前,我需要知道尺寸 我的游戏中的每个对象(玩家、背景等),并获得正确的尺寸以匹配屏幕比例,并随之改变。 我在网上搜索了 XNA/Monogame ... »

c#

单向游戏方向移动

我正在创建一个基于小行星的 2D 游戏。在那个游戏中,我需要将船推向一个方向。 我可以画出船,让它掉头。但是当涉及到向前推进时,我的问题就出现了。 我似乎无法理解这一点。 (这整个制作游戏的事情对我来说是新的^^) 播放器.cs protected Vector2 sVelocity; protected Vector2 sPosition = Vector2.Zero; protecte... »

c#

无法让 JSIL 编译

我曾经尝试使用 XNA 的每个现代版本的 JSIL 都会出现这个错误。 我过去曾在任何地方寻找有关它为什么无法运行的信息,最终都会得到有关 XNA 4.0 未正确安装或其他问题的答案。 此错误在 3 台不同的计算机上重现。 我可以让一个版本的 JSIL 工作,我可以从 git 存储库 (JSIL-0.7.6) 下载其中一个版本,它可以与 XNA 一起工作,只要你不给它任何构建无法提供... »

c#

OS X 上 MonoGame 中的 MGFX

我在 OS X 上尝试将着色器与 MonoGame 一起使用时遇到了很多麻烦。据我了解,它需要一个名为 2MGFX 的命令行工具来将着色器编译为可用格式;但是,我无法找到此工具的下载。我翻遍了 MonoGame 源代码,找到了 2MGFX 的 SLN 文件,但无法编译。我觉得我在某处遗漏了一些非常基本的东西,但我绝对无法弄清楚是什么。任何帮助(或我可以运行的 2GMFX 构建)都会很棒。谢谢!... »