Python大师!UE5的御用布景师
数字孪生引擎
2022年07月21日 13:53

Part1前言

虚幻引擎已经拥有了蓝图和C++进行开发,为什么还需要Python呢?python相对蓝图和C++有什么优势呢?我认为有以下几点原因: 1、python语言入门简单 2、在虚幻中引入python,可以把海量python生态的库引入到虚幻,这大大加快了开发效率 3、python可以实现虚幻编辑器中自动化工作流程 4、Python目前已经成为制作流程和3D应用程序之间的互操作性的首选语言

不过目前python只能在编辑器模型下工作,所以特别适合于程序化构建场景,从而降低人力成本。

Part2如何使用python

选择Edit--》Plugins--》开启《Python Editor Script Plugin》即可使用。 将cmd调整为python,即可运行python脚本

查看python版本

输出如下:

另外如果要执行python文件,可以在Content文件夹中新建一个Python文件夹,里面的python文件可以在命令行输入文件名直接运行。

Part3vscode编写python

虚幻引擎帮我们提供了非常好的编写python代码的环境,可以通过vscode编辑器来编写代码,而且还会自动有代码提示。 不过想要代码提示需要打开python开发者模型,在edit--》Editor Preferences--》Plugins--》python 选中Developer Mode。如下图所示

之后就会在Intermediate文件夹中生成PythonStub文件夹,把里面的unreal.py配置到vscode即可实现代码提升。 在vscode的settings.json中,增加如下配置即可:

之后调用UE的api即可自动进行代码提示

Part4脚本构建场景

示例展示了通过python读取staticmesh,再通过脚本在UE场景中生成staticmeshactor对象。

生成的对象如下图所示

后续考虑通过python脚本来开发相关插件,来提升场景制作的效率。

Part5总结

本文主要介绍了如何在UE5中使用python脚本,以及通过python脚本自动创建场景。

Part6关于IN VETA

IN VETA是一支由建模、美术、UE5组成的年轻团队。

我们的开源项目: https://github.com/inveta

我们致力于三维数字孪生技术分享与研发。 欢迎与各界朋友一起探讨技术与商务合作,一起推动数字孪生的发展。