Windows phone 8 如何使用Github PR正确更新Monogame

Windows phone 8 如何使用Github PR正确更新Monogame,windows-phone-8,visual-studio-2013,monogame,Windows Phone 8,Visual Studio 2013,Monogame,嘿 我有点小问题。当前可用的Monogame3.2版本没有适用于WindowsPhone8的工作模板。这将导致一个黑屏和一个不工作的应用程序。所以我去了他们的git中心,发现了这个问题,有人修复了它,并发布了一个Pull请求 现在的问题是,我几乎没有构建自己的版本或编辑项目模板文件的经验。我有了一些常识,开始深入研究这一切,并且已经尝试将模板文件复制到我的VisualStudio文件中,构建项目并抛出新的.DLL,但这一切都不想正常工作。我开始使用旧的模板,但我需要新的版本,因为我们需要在win

我有点小问题。当前可用的Monogame3.2版本没有适用于WindowsPhone8的工作模板。这将导致一个黑屏和一个不工作的应用程序。所以我去了他们的git中心,发现了这个问题,有人修复了它,并发布了一个Pull请求

现在的问题是,我几乎没有构建自己的版本或编辑项目模板文件的经验。我有了一些常识,开始深入研究这一切,并且已经尝试将模板文件复制到我的VisualStudio文件中,构建项目并抛出新的.DLL,但这一切都不想正常工作。我开始使用旧的模板,但我需要新的版本,因为我们需要在windows phone 8中适当地支持横向,以用于我们的游戏

现在我的问题是,是否有人知道这样做的正确方法。从要复制的内容到要复制的内容的简短总结


提前感谢。

很容易做到,将其拉入您自己的版本

遵循以下步骤:

  • 分叉单游戏存储库
  • 将您的版本克隆到本地计算机
  • 查找固定代码的存储库
  • 在命令提示下,移动到您的MonoGame文件夹,并在您的机器上使用此行拉取更改。(分支最有可能是主分支)
  • 
    吉特拉力http://github.com/other/repo 分行名称
    

    将拉取请求拉入本地分支后,只需使用VisualStudio构建它

    如果你认为你会经常这样做,你也可以遵循这些步骤


    好吧,这花了我一些时间,但我知道该复制、构建、设置和运行什么

    下载.Zip或使用Github拉入一个空文件夹,完成后将其解压缩

  • 在地图中打开MonoGame.Framework或MonoGame.Framework 将启动visual studio的“目标平台”
  • 构建解决方案/项目(别忘了在ARM、x86和 x64(如果启用和需要)并导航到“已提取” 文件夹“/MonoGame.Framework/bin/“您的目标平台” 打开一个新的浏览器,导航到你的MonoGame安装 默认情况下C:\ProgramFiles(x86)\MonoGame\v3.0
  • 在提取的文件夹中导航到目标平台,然后 构建MonoGame.Framework.dll并将其复制到相反的C:\程序 文件(x86)\MonoGame\v3.0\Assemblies\“目标平台”\“构建”
  • 重建项目/解决方案
  • Gratz你现在更新了你的MonoGame:)

    这可以解决您的问题,但在手机上初始化应用程序或与仿真器DXGI相关的应用程序时,您可能仍然会遇到错误。 如果发生这种情况,请执行以下步骤。问题可能在于您的SharpDX.WP8.dll如何修复此问题?在我的例子中,下载并安装最新的SharpDX,您还可以进一步了解如何仅下载SharpDX.WP8.dll和.winmd

  • 导航到您的SharpDX安装(默认情况下为C:\Program Files (x86)\SharpDX)进一步导航到 Bin\DirectX11_1-“平台”-“构建”\并复制SharpDX.WP8.dll和 .winmd到C:\Program文件 (x86)\MonoGame\v3.0\Assemblies\WindowsPhone\“构建”
  • 重建您的项目/解决方案(如果这仍然不起作用,您可以 需要再次手动将引用添加到SharpDX.WP8.winmd,以便 两个版本)
  • 因此,如果它是好的,这应该解决大多数问题,但有一个左。在Monogame3.0.x和3.2之间,windows phone游戏的项目模板发生了变化,但这在代码中并不顺利。现在我们要更新VisualStudio的项目模板

  • 返回提取的Monogame地图并进入文件夹 “项目模板”\“您的visual studio版本”\WindowsPhone
  • 选择所有文件并创建.Zip(可由集成 windows选项“发送到”)请确保在打开.Zip时 立即查看所有文件,它们不会嵌套到文件夹中 里面是.Zip
  • 导航到C:\Users\“您的电脑名”\Documents\Visual Studio 201X\Templates\ProjectTemplates\Visual C\MonoGame并复制您的 刚刚创建.Zip并覆盖现有文件
  • 由于VS2013内部缺乏对XNA的支持,如果使用不同版本的Visual Studio,可能必须遵循这些步骤。
    现在你应该已经解决了任何可能的问题。如果您的项目仍然出现错误,请尝试重新创建一个新的(这将使用您刚刚复制粘贴的新更新模板,并且可以正常工作)如果仍然无法正常工作,请发布错误,但这一切都应该可以!这些说明也适用于所有其他平台(至少您可以构建这些平台)

    出于某种原因,我无法让您的解决方案工作,因为缺少一些SharpDX参考,拒绝手动添加。虽然您的解决方案可能有效,但如果您有耐心将代码转移到Monogame 3.2项目,并且仍然获得黑屏,我想提出一个替代方案:

    在GamePage.xaml中将DrawingSurface设置为DrawingSurfaceBackgroundGrid。完整的详细信息可以在GamePage.xaml文件底部的注释说明中找到


    来源:

    Heey Khalid,谢谢你的回答,但我已经走了这么远。对我来说,最大的问题是要构建什么项目,在哪里复制什么dll,在哪里修改什么引用。我把它修好了,我会把我的发现贴在这里。你犯了什么错误?一开始我遇到了一个错误,我只能添加x86或ARM版本,如果我回忆正确,不能同时添加这两个版本。但我忘了我是如何用.winmd文件修复的,可能是MonoGame项目下载的问题。它没有SharpDX.dll文件,所以我尝试手动添加它们,这时它说文件版本与此项目/解决方案不兼容。也许会有帮助