【问题标题】:How to use XNA in WPF?如何在 WPF 中使用 XNA?
【发布时间】:2010-11-08 04:28:46
【问题描述】:

所以...我想制作一个游戏,我想用 C# 编写它。过去,我使用 C++ 和 OpenGL 制作了一个 mario 克隆。我非常喜欢 OpenGL,但我不知道它在 C#/WPF 中的支持程度如何。另外,使用实际的游戏库可能会有所帮助吗?我猜 XNA 是 C# 的 游戏库,所以也许我会花一点时间来学习它。

但是,我想为我的关卡编辑器使用 WPF 表单控件...有什么方法可以在 WPF 应用程序中嵌入 XNA(DirectX?)窗口?

具体来说,我不需要任何按钮或东西内部 XNA/DirectX 小部件,只需围绕 它,所以不需要混合...只需要得到我的 WPF 表单中的图形小部件。

【问题讨论】:

  • 您是否设法让鼠标与 XNA/WinForms 一起工作?我正在尝试做同样的事情。键盘可以工作,但我的 XNA 面板中的鼠标输入没有更新。
  • @SpicyWeenie:不,抱歉。我从来没有在这个项目中取得任何进展。我现在正在为 C# 编写 SDL 包装器……它具有出色的键盘/鼠标/控制器支持。

标签: c# wpf xna


【解决方案1】:

Nick Gravelyn explains how to do it on his blog.

虽然,如果只是为了编辑,您可能会发现使用WinForms 更容易且得到更好的支持。

【讨论】:

  • 哈哈......先生,给你两个复选标记!很快就找到了我的交叉帖子。
【解决方案2】:

WPF 使用 DirectX,您可以在主题上直接“互操作”here is a codeProject articleHere is an article 我发现了作者在 XNA 项目中使用 win-forms 和 WPF 控件的地方。可能值得你看看。

【讨论】:

  • K...我是这么认为的,但是...这并不能真正回答问题。我认为 XNA 提供了可以在 DirectX 上下文中渲染的精灵和东西?如果我能够嵌入 DirectX 小部件,然后在其上使用所有 XNA 工具..那就太好了..如何嵌入 DirectX?
  • @mark 我在 google 上找到了一个可能是您正在寻找的链接,并将其添加到“答案”中。
  • re: codeproject: 使用我认为没有必要的互操作。XNA 和 WPF 使用互操作 AFAIK,那么当我把它们放在一起时,为什么我需要这样做呢?回复:xna 游戏中的 wpf 控件:我想反其道而行之…… WPF 中的 XNA。
【解决方案3】:

首先,您应该在 gamedev.stackexchange.com 上提出这个问题。但我看过嵌入 XNA 的教程。

您应该检查this 问题和this 页面。它们在 Windows 窗体上,但它们会有所帮助。

同时查看thisthis 的文章。

记住一件事。 XNA 旨在用于整个游戏,集成对于制作您所说的关卡编辑器很有用,但不适用于完整游戏。

【讨论】:

  • 我认为您的前两个链接谈到将控件放入游戏本身,这不是我需要做的......只是围绕它。
猜你喜欢
  • 2011-08-02
  • 1970-01-01
  • 2014-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多