当前位置: 首页 > ai >正文

将infinigen功能集成到UE5--在ue里面写插件(python和c++)

引用https://infinigen.org

1.infinigen功能简述

Infinigen 旨在通过程序化生成技术快速创建无限大规模的开放世界环境,支持高度自定义和动态生态系统。
如下图,可以生成室内场景也可以生成室外场景。
在这里插入图片描述

2.UE5怎么用python写插件

开发 UE5 插件时优先使用 C++,因为它提供了更强的性能和灵活性。蓝图可以作为辅助工具,用于快速开发和原型设计。Python 则适合用于编辑器方面的自动化和脚本处理。
由于Infinigen是用python写的,我们计划不改写它而是直接封装。所以计划先将Infinigen 封装成ue里面的python脚本,然后在插件里面调用这个python脚本,这样就可以达到用python写插件的目的了。

2.1 try:用python写插件:简单打印语句

①确保 Python Editor Script Plugin 被勾选启用:进入 Edit 菜单,选择 Plugins。找到 Scripting 类别下的 Python Editor Script Plugin
在这里插入图片描述

②创建一个插件:在 Unreal 编辑器中,选择 Edit > Plugins。点击右上角的 Create New Plugin。
在这里插入图片描述
③编写 Python 脚本:找到你的插件文件夹,通常在 YourProject/Plugins/YourPluginName。在插件目录下,创建一个新的文件夹,例如 Scripts。在 Scripts 文件夹中,创建一个 Python 脚本文件,例如 my_script.py。(这里我暂时在文件资源管理器搞的,更好的办法是在VS里面干)
在这里插入图片描述

import unreal@unreal.uclass()
class MyPythonClass(unreal.GlobalEditorUtilityBase):@unreal.ufunction(override=True)def run(self):unreal.Log("Hello from my plugin!")# 创建实例并运行
my_instance = MyPythonClass()
my_instance.run()

④查看新插件
在这里插入图片描述

3.插件怎么集成infinigen功能

后续开会助教说一定得用C++写插件,考虑到python确实不能做到环境的完全贴合,所以后续就用c++进行开发。

在虚幻引擎(Unreal Engine,简称UE)中编写C++插件的过程可以分为几个主要步骤。以下是一个详细的指南,帮助您创建和使用C++插件。

创建C++插件

  1. 启动虚幻引擎并且打开一个项目:

    • 打开虚幻引擎编辑器。
      在这里插入图片描述
  2. 创建插件:

    • 在虚幻引擎编辑器中,点击菜单栏的“编辑” -> “插件”。
    • 在插件窗口中,点击左上角的“新建插件”按钮。
    • 选择“空插件”模板,并为插件命名,填写描述等信息。
    • 点击“创建插件”按钮。

在这里插入图片描述

编辑器独立窗口:会弹出一个独立窗口
编辑器工具栏:插件会出现在工具栏
编辑器模式:含有编辑器模式
我选取的是工具栏
  1. 设置插件配置:
    • 插件创建后,您将在Plugins目录下找到新插件的文件夹。
    • 在插件文件夹中,您会看到几个默认文件,例如YourPluginName.uplugin
    • 打开此.uplugin文件,您可以根据需要修改插件的描述、类别等信息。
      在这里插入图片描述

编写C++代码

  1. 打开插件的源代码:

    • 在插件的文件夹中,找到Source目录。如果没有,请手动创建一个。
    • Source目录下,创建一个以您的插件名称命名的子目录(例如YourPluginName)。
  2. 添加C++类:

    • 在您的插件源代码目录中创建C++类。例如,您可以创建一个基础的Actor类或一个自定义功能类。
    • 右键点击项目目录,选择“新建 C++ 类”,然后选择您需要的基类。例如,选择Actor
  3. 实现功能:

    • 打开您创建的C++类文件,添加您的功能实现。可以使用虚幻引擎的API来实现各种功能。

编译插件

  1. 编译项目:

    • 在虚幻引擎编辑器中,点击“编译”按钮,或者在Visual Studio中直接编译项目。
    • 确保没有错误并且插件成功编译。
  2. 启用插件:

    • 编译完成后,返回到虚幻引擎编辑器中的“插件”菜单,找到您的插件并启用它。
    • 一旦启用,您可能需要重启编辑器。

在这里插入图片描述
在这里插入图片描述

http://www.xdnf.cn/news/2835.html

相关文章:

  • 从数据到决策:安科瑞EIoT如何让每一度电“清晰可见”?
  • IF:22.7 InfoMat:一种用于智能假肢的机器学习辅助多功能触觉传感器
  • 考研408-计算机组成原理冲刺考点(4-5章)
  • 方案精讲:71页央国企信创化与数字化转型规划实施【附全文阅读】
  • Logback 日志框架详解
  • 【自然语言处理与大模型】LangChain大模型应用框架入门②
  • Selenium 与 Playwright:浏览器自动化工具的深度对比
  • ComfyUI 学习笔记,案例1:2_pass_txt2img
  • 案例速成GO+Socket,个人笔记
  • WEBSTORM前端 —— 第2章:CSS —— 第4节:盒子模型
  • 【AI News | 20250429】每日AI进展
  • 破茧成蝶:一家传统制造企业的年轻化转型之路
  • VS Code + Linux 远程开发 go
  • 2025年具身智能科技研报
  • C++函数模板基础
  • 【专题五】位运算(1):常见位运算操作总结
  • DeepSeek: 探索未来的深度学习搜索引擎
  • 第十六届蓝桥杯 2025 C/C++组 脉冲强度之和
  • Origin绘图操作:点线图符号显示不全解决方法
  • 接入层架构演变
  • Nginx 核心功能与 LNMP 架构部署
  • C#解析USB - HID手柄上摇杆按键数据
  • Ubuntu 20.04 安装 ROS 2 Foxy Fitzroy
  • xilinx的XCI文件设定输出目录
  • MIT XV6 - 1.1 Lab: Xv6 and Unix utilities - sleep 是怎样练成的?
  • [AI]browser-use + web-ui 大模型实现自动操作浏览器
  • 元宇宙2.0:当区块链成为数字世界的宪法
  • 【C++初阶】--- 模板进阶
  • (三十二)Android开发中AppCompatActivity和Activity之间的详细区别
  • 01_微服务常见问题