c# - MonoGame SpriteFont 无法在 iOS 上运行

标签 c# ios xamarin.ios xamarin monogame

我们在 iOS 上的 MonoGame 中将纯 Arial spritefont 作为 XNB 加载时遇到问题。我使用最新的开发分支尝试了这个。这些是在 Windows 上制作的,然后在 Xamarin Studio 中针对 iOS 部分进行跟进:

  • 我们有一个 stub XNA 项目和一个内容项目 <MonoGamePlatform>iOS</MonoGamePlatform>定义
  • 我们还有一个 <Import>指向 MonoGame.ContentPipeline.targets 的语句
  • 我们引用了 MonoGameContentProcessors.dll在内容项目中
  • 添加了带有 Content Processor 的 *.spritefont 文件设置为 MonoGame SpriteFont
  • 编译项​​目,并将生成的 XNB 复制到 iOS 项目中,构建操作设置为 Content .

我在一个带有 Arial 9pt 的空 MonoGame 项目中尝试了这个,我在 Texture2D.cs 的第 228 行中遇到了一个异常,它正在检查 OpenGL 错误。

我们的游戏中还有其他字体被构建为 MonoGame Spritefont from Texture那工作正常。但是我们不能对某些语言(尤其是中文)使用这种方法。

我发现其他人也有这个问题:https://monogame.codeplex.com/workitem/7452

有什么想法吗?字体目前可以在 iOS 上使用吗?

这是我编译的 XNB:https://dl.dropboxusercontent.com/u/3702398/Fonts.zip

更新:试过 Arial 9、12、14、16,因为我听说某些尺寸会导致问题。它们都不起作用。

在此处打开问题:https://github.com/mono/MonoGame/issues/2005

最佳答案

我从讨论中找到了解决方案 here .

  • 将语句放在XNA主工程中(不是内容 项目)
  • 放入XNA主工程
  • 投入XNA内容项目

我只在内容项目中设置了东西,这是错误的地方。 Tom Spilman 提到您根本不需要内容项目中的任何内容,但我只是留下它,因为它有效。

关于c# - MonoGame SpriteFont 无法在 iOS 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18857318/

相关文章:

c# - 如何从 Nuget 包动态加载 Mvc Controller 。 Docker 容器问题

c# - 在 MEF 2 中使用封闭类型组合开放通用类型

ios - 适用于 iOS 12.0 的 Arm64e 架构

iphone - 如何以编程方式 "follow"iOS 应用程序中的 Twitter 提要?

ios - 使用新的UIImage更新UIImageView

c# - asp.net 在一个类中处理

c# - 从解决方案文件夹中重新定位 .vs 文件夹

ios - iOS-选择模型类别

c# - Android和iOS的跨平台网络状态检测——如果不是: how to implement on Android?

c# - MonoTouch 绑定(bind)不能使用字段