已解决
Unreal PythonScriptPlugin
来自网友在路上 157857提问 提问时间:2023-11-06 14:23:53阅读次数: 57
最佳答案 问答题库578位专家为你答疑解惑
Unreal PythonScriptPlugin
文章目录
- Unreal PythonScriptPlugin
- Python vs UnLua
- 官方文档
- PyStub
- DoString
示例代码,引擎里有很多插件已经用 py 写编辑器脚本了
unreal.get_editor_subsystem(unreal.LevelEditorSubsystem).load_level("/Game/maps/UVlayoutTest.UVlayoutTest")
unreal.get_editor_subsystem(unreal.StaticMeshEditorSubsystem).join_static_mesh_actors(list_of_actors, my_options)
unreal.get_editor_subsystem(unreal.StaticMeshEditorSubsystem).join_static_mesh_actors(join_options=my_options, actors_to_join=list_of_actors)
Python vs UnLua
UnLua 的主要缺陷在于缺乏类型和强大的 IDE
TArray<T>
没法提示- IDE 缺乏重构
- 在 Lua 无法进行 OOP
- 无法在 Lua 定义 UClass,UProperty
写小范围的脚本还可以,但是。。
官方文档
https://docs.unrealengine.com/en-US/Engine/Editor/ScriptingAndAutomation/Python/index.html
- init_unreal.py,初始化脚本,可以额外配置
- Python 路径,默认如下,可以额外配置
- Python API
- 支持 UE 反射得到的 蓝图 API
- Python 类型和 UE 类型映射,支持 isinstance 和 type
- Stub 提示文件,Engine\Plugins\Experimental\PythonScriptPlugin\SphinxDocs
- 编辑器相关
- Undo/Redo
- 慢任务进度条
Python 路径
项目文件夹中的 Content/Python 子文件 夹。主虚幻引擎安装中的 Content/Python 子文件 夹。每个启用的插件文件夹中的 Content/Python 子文件 夹。用户目录中的Documents /UnrealEngine/Python文件夹。
例如,在 Windows 10 上,这相当于C:/Users/Username/Documents/UnrealEngine/Python
PyStub
=> unreal.py
类型很关键,这个包含 Engine 和 Game 所有蓝图反射 API,类似 UnLua Intellisense
入口函数
FPyWrapperTypeRegistry::GenerateStubCodeForWrappedTypes
DoString
入口函数
FUnrealEnginePythonModule::RunString
执行没什么,就是准备了 unreal 的环境注入 unreal API
TODO 看眼反射怎么export到python的
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"Unreal PythonScriptPlugin":http://eshow365.cn/6-33691-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: Redis能干啥?细看11种Web应用场景
- 下一篇: 基础Redis-Java客户端操作介绍