我想完全用C ++编写游戏,但是我想从虚幻引擎提供的功能中受益,尤其是在图形和物理方面。但是,我强烈不喜欢它的视觉编辑器:我发现它笨拙,缓慢且不直观。最后,它迫使我使用Visual Studio而不是我最喜欢的C ++ IDE。
有没有一种方法可以将虚幻引擎用作我可以直接包含在C ++项目中的大型库,还是我不得不使用虚幻编辑器?
有关Unity的问题:如何在最少/不使用可视编辑器的情况下在Unity中构建游戏?
我想完全用C ++编写游戏,但是我想从虚幻引擎提供的功能中受益,尤其是在图形和物理方面。但是,我强烈不喜欢它的视觉编辑器:我发现它笨拙,缓慢且不直观。最后,它迫使我使用Visual Studio而不是我最喜欢的C ++ IDE。
有没有一种方法可以将虚幻引擎用作我可以直接包含在C ++项目中的大型库,还是我不得不使用虚幻编辑器?
有关Unity的问题:如何在最少/不使用可视编辑器的情况下在Unity中构建游戏?
Answers:
分解编辑器提供的功能以及如何避免使用它:
从技术上讲,这是Visual Studio提供的东西,但仍然很重要。编译虚幻引擎并非易事,涉及调用虚幻引擎构建工具来生成一些代码(支持诸如反射,蓝图接口等工作)。可以在不使用Visual Studio的情况下执行此操作,但是很大程度上没有记录。我想最好的起点是研究它如何在Linux上构建并模仿它。
从理论上讲,这可以通过命令行完成,但是如果我不首先运行编辑器,就会遇到奇怪的构建错误。我想这些可以解决。但是同样,它将是无证的,并且很容易出错。
地图格式是二进制的,因此创建地图将是一个问题。我相信虚幻引擎至少需要一个地图才能运行游戏,因此您可能至少必须创建一个空地图。创建完成后,您可以从代码中生成内容。
实际上,有趣的是,由于编辑器实际上已包含在源代码中,因此您也许可以使用编辑器方法来创建一个空的地图并将其保存,而无需使用编辑器。从理论上讲,您甚至可以编写自己的简单地图编辑器,尽管此时您实际上是在重新实现Unreal。
大概您只是不使用任何功能。尽管这很遗憾,因为它很好地将数据与功能分离开来。
您可以使用一些基本材料,但这又可能是一个很大的麻烦。我想您可以直接编写着色器,但是不确定如何将它们用作材质。
我敢肯定,我已经错过了它的某些方面,但总而言之:可能,但是您会遇到很多问题。
至关重要的是,可以从代码访问编辑器功能,因此从理论上讲,您可以实现所需的编辑器部分。但是,所有这些都引出了一个问题,为什么不使用编辑器?简单地减少使用编辑器的时间可能会更好。