- ♂️ 作者:海码007
- 专栏:UE虚幻引擎专栏
- 标题:【UE4 Live Coding 热编译】虚幻引擎的实用技巧,提高代码编写效率!!!
- ❣️ 寄语:加油吧!,以后的你会感谢现在奋斗的自己!
- 最后:文章作者技术和水平有限,如果文中出现错误,希望大家能指正
在开发一个UE C++的项目时,往往在C++中写好的功能需要在蓝图中联调。此时就需要同时打开VS工程还有UE工程。但是当我们打开了UE工程时,是不能对VS工程进行编译的(UE 规定的)。虚幻引擎的编译工具会报错,错误代码如下:
UnrealBuildTool : error : Unable to build while Live Coding is active. Exit the editor and game, or press Ctrl+Alt+F11 if iterating on code in the editor or game
常规:设置控制 Live Coding 如何在你的开发环境中运作。
- 启用实时代码编写:启用时,Live Coding将作为虚幻编辑器的编译方法。如果停用,虚幻编辑器会后撤至使用热重载。
- 启动:控制虚幻编辑器启动时Live Coding如何运行,包括是否激活控制台或者令其可见。
- 启用重实例化:控制Live Coding是否使用对象重实例化。启用时,对象的实例会被替换,以此来让代码中的大型变动生效。我们不建议停用该设置,否则变动将会变动不稳定。更多细节请参考使用Live Coding进行对象重实例化小节。
- 自动编译新添加的C++类:启用时,添加C++类将会自动令Live Coding将其编译并添加到应用。
模块(Modules):部分决定在运行编辑器或者应用程序时为Live Coding预载哪些模块。这会让Live Coding在遍历这些模块时性能更快,但是预载的模块越多,启动编辑器或者游戏的时间就越长。
- 项目模块:当前项目源代码中的模块。这包括你的主要模块以及你在源目录中创建的任何额外模块
- 项目插件模块:项目目录中的插件所关联的模块,插件位于(项目名称)/Plugins
- 你还可以使用 预载命名模块(Preload Named Modules) 序列来指定要加载的模块。如果要在大型项目中使用几个特定的模块,或者要加载特定的引擎模块但不想加载整个引擎,该选项会非常有用。
确保已经打开了VS工程和UE的工程,以及启动了Live Coding
学会了Live Coding热编译,这样就可以不用关闭UE工程就可以直接编译VS代码,提高开发效率。