我正在使用DirectX用C++编写一个小型游戏和游戏引擎。目的是教育和娱乐。
我的下一个目标是构建一个简单的世界编辑器,它使用游戏引擎。为此,我需要将引擎移动到dll中,以便游戏和/或编辑器可以使用它。世界编辑器将是一个独立的工具,而不是游戏的一部分。主要目的是读取并显示我的(自定义)场景文件,并允许我在世界对象(网格)上注释/修改属性,克隆对象,拾起和移动对象并放置它们,缩放对象等,然后保存修改后的场景,以便稍后由游戏读取。
有人建议我在编辑器中使用wxWidgets。经过一些研究,我发现wxWidgets有点老旧且笨重,虽然我相信可以使用它编写非常好的GUI。但这是一个陡峭的学习曲线,我不期待它。我已经成功构建并运行了示例,但是这很麻烦。
我做了更多的研究,发现我可以使用D3DImage将DirectX集成到WPF应用程序中。我在WPF方面做了一些尝试,没有发现太大难度,而且有很多好的书籍可供使用(只有一个旧版本的wxWidgets),以及大量的网络信息。我已经成功运行了旋转三角形示例,它似乎非常简单。
所以我的问题是:
WPF能否让我构建一个很好的小型世界编辑器应用程序来重用我的游戏引擎?
我的游戏引擎目前使用RawInput进行鼠标和键盘输入;这将如何与WPF一起工作?
WPF如何影响我的消息泵?
看起来我将不得不编写很多函数(外观模式?)以使WPF与我的游戏引擎交互。是否有一种简单的方法将其分离出来,以便它不会被编译到游戏中?
如果您对如何继续进行有任何其他提示或想法,将不胜感激!
谢谢。
我的下一个目标是构建一个简单的世界编辑器,它使用游戏引擎。为此,我需要将引擎移动到dll中,以便游戏和/或编辑器可以使用它。世界编辑器将是一个独立的工具,而不是游戏的一部分。主要目的是读取并显示我的(自定义)场景文件,并允许我在世界对象(网格)上注释/修改属性,克隆对象,拾起和移动对象并放置它们,缩放对象等,然后保存修改后的场景,以便稍后由游戏读取。
有人建议我在编辑器中使用wxWidgets。经过一些研究,我发现wxWidgets有点老旧且笨重,虽然我相信可以使用它编写非常好的GUI。但这是一个陡峭的学习曲线,我不期待它。我已经成功构建并运行了示例,但是这很麻烦。
我做了更多的研究,发现我可以使用D3DImage将DirectX集成到WPF应用程序中。我在WPF方面做了一些尝试,没有发现太大难度,而且有很多好的书籍可供使用(只有一个旧版本的wxWidgets),以及大量的网络信息。我已经成功运行了旋转三角形示例,它似乎非常简单。
所以我的问题是:
WPF能否让我构建一个很好的小型世界编辑器应用程序来重用我的游戏引擎?
我的游戏引擎目前使用RawInput进行鼠标和键盘输入;这将如何与WPF一起工作?
WPF如何影响我的消息泵?
看起来我将不得不编写很多函数(外观模式?)以使WPF与我的游戏引擎交互。是否有一种简单的方法将其分离出来,以便它不会被编译到游戏中?
如果您对如何继续进行有任何其他提示或想法,将不胜感激!
谢谢。