android - 在项目中添加 Monogame 的正确方法
问题描述
我想用 MonoGame 制作一个跨平台的游戏应用程序。
此处将Monogame安装到Visual Studio的方法似乎并没有在我的IDE中添加创建跨平台MG proj的选项,虽然外观有所改变,但创建项目的步骤和选项仍然相同。然后我去了 Monogames 网站上的文档,没有提到将 Nuget 包添加到项目、跨平台或其他方式。以其他方式安装它是唯一的方法吗?不过,您绝对可以根据此页面使用 Nuget 包。
我进入 VS 将它们添加到我的项目中。现在我有 Monogame Android 和 iOS 包,并且 monogame.framework.WindowsDX 安装到我的解决方案中的 3 个项目(每个项目都有 .WindowsDX)。我是否只将相应的 Nuget 包添加到 Android 和 iOs 应用程序(这就是我现在的方式)?
解决方案
由于 Monogame 是一个开源社区,我更喜欢通过 dotnet 的命令行创建项目文件,而不是使用 Visual Studio。只是预计模板在最新版本的 Visual Studio 中可能不完全兼容
要制作项目,首先确保您已安装了用于 dotnet 的 NuGet 模板
dotnet new -i Monogame.CSharp.Templates
现在,您可以通过 dotnet new 创建项目
例如,您可以通过以下方式创建一个 monogame android、windows 和 uw[ 项目
dotnet new mgandroid
dotnet new mgwindows
dotnet new mguwp
您可以通过以下方式查看其他可用的软件包
dotnet new -h
为了为跨平台游戏创建一个通用库,我制作了一个 netstandard 库并将 NuGet 引用添加到 Monogame.DesktopGL.Core 库。然后,各个平台特定的项目将引用这个公共库。
完成此操作后,您可以在根文件夹中创建一个 sln 来保存所有创建的项目。您可以通过 dotnet 再次执行此操作
dotnet new sln
或者使用 Visual Studio 创建一个新的 sln 并在其中添加所有这些项目。
您可以在https://github.com/AzuxirenLeadGuy/Azuxiren.MG.Template查看并下载我的跨平台单人游戏模板
(我确实计划在不久的将来用它制作一个 NuGet 模板)
推荐阅读
- apache-spark-ml - 如何将具有多个输入列的 Spark ML 模型转换为 ONNX 并将其用于对动态批量大小进行评分?
- r - 打破 x 轴
- function - 在 MATLAB 中使用 Simulink 模块
- reactjs - React useState 没有更新 Array.map 函数中的值
- python - c++ 中是否有类似 python 中的 subprocess.Popen() 的功能?
- reactjs - Why is my component rendered twice in react.js 16.x?
- python - 在 Python 中删除回车的问题
- c++ - 关于类的一些问题
- php - 来自 Sql Server 数据库的 Woocommerce 提要产品
- mysql - 乘以函数mysql