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

虚幻5入门教程:如何在虚幻5中创建一个C++的Plugin

虚幻引擎版本: Unreal Engine 5.6
编辑器: Rider For Unreal

文章目录

  • 0. 一点先导知识
    • 0.1 虚幻引擎的Plugin是什么东东?
    • 0.2 哪些东东可以整理成为Plugin?
  • 1. 如何在虚幻5中创建一个C++的Plugin
    • 1.1 准备一个UE5的C++项目
      • 1.1.1 启动引擎
      • 1.1.2 创建C++项目
      • 1.1.3 创建C++的Plugin
      • 1.1.4 为Plugin添加C++代码
  • 2. C++ Plugin的使用
  • 3. 小结

0. 一点先导知识

0.1 虚幻引擎的Plugin是什么东东?

虚幻引擎中的 ‌Plugin(插件)‌ 是扩展引擎核心功能的模块化组件,它是不依赖于某个主程序(Game)的功能模块,其最大的意义就在于可以在不同的项目中进行复用,使用虚幻引擎开发游戏项目,经常会使用虚幻提供的Plugin以及第三方Plugin,如果你是一个长期的虚幻引擎使用者,那么把你常用的代码甚至是资源整理成为一个或多个Plguin,对于功能在不同项目中迁移,以及提高开发效率是非常必要的。

0.2 哪些东东可以整理成为Plugin?

理论上讲,你所有的常用游戏资源(模型,材质)、蓝图模块以及C++代码都可以整理成为Plugin

1. 如何在虚幻5中创建一个C++的Plugin

接下来我们将创建一个C++的Plugin,在此过程中你也会了解其它类型Plugin的创建方式,因为相对来讲C++的Plugin创建是最复杂的。好!让我们开始今天的教程吧!

1.1 准备一个UE5的C++项目

我们需要在一个UE项目中创建Plugin,本文中使用的虚幻版本是5.6,如果你使用其它版本虚幻引擎,方法基本上是一样的。因为我们要创建一个C++版本的Plugin,最好的方式是从一个C++虚幻项目开始。

1.1.1 启动引擎

在这里插入图片描述

1.1.2 创建C++项目

注意: 这里的CPPPlugin是我们的项目名称,当然你也可以用其它的命名

在这里插入图片描述

简单查看一下我们的项目内容
在这里插入图片描述

以下(红框中部分)是当前项目中代码的内容
在这里插入图片描述

1.1.3 创建C++的Plugin

在编辑器中点击Edit>Plugins

在这里插入图片描述

创建以恶搞Blank类型的Plugin
在这里插入图片描述

我们将这个Plugin命名为RPGCharacter,在下面的Descriptor Data部分可以添加一些插件的说明,这部分内容,在插件创建成功以后也是可以修改的
在这里插入图片描述

等待编译结束
在这里插入图片描述
编译结束以后,UE编辑器一般会自动关闭,我们先看一下当前代码的内容,绿色框中的部分就是新生成的RPGCharacter插件内容

在这里插入图片描述

再次通过Rider运行项目
在这里插入图片描述

项目启动以后我们现在Content Browser中勾选显示C++和Plugin内容的选项
在这里插入图片描述
然后就可以在Content Browser看到我们的插件RPGCharacter的文件夹了
在这里插入图片描述

此时在编辑器的Plugins中,我们也可以找到这个插件,并看到它已经被启用了,此时我们可以继续更改它的说明内容

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

1.1.4 为Plugin添加C++代码

接下来,我们添加一写C++代码,在本例中,我们想为自己游戏常用的Character功能配置一个基类。和添加普通的C++代码类似,直接在Tools中点击New C++ Class

在这里插入图片描述

选择Character基类

注意: 不要直接点击Create Class,在新的编辑器中,为Plugin添加代码还需要一个步骤,所以我们选择Next

在这里插入图片描述

为新添加的Character子类命名为RPGCharacterBase,注意一定要将后面的下拉列表选为RPGCharacter(Runtime)即为RPGCharacter插件添加代码,这是和在游戏中主体中添加C++代码唯一的不同,然后点击Create Class

,在这里插入图片描述

这时候回到Rider编辑器中我们就可以看到新生成的C++代码了
在这里插入图片描述

再次运行项目
在这里插入图片描述

编辑器再次启动以后我们可以看到我们新生成的RPGCharacterBase类,它就想系统自带的其它Actor类一样
在这里插入图片描述

我们可以直接把它拖拽到场景中,当然也可以通过蓝图派生它再使用。虽然它还没有什么功能,但一个C++ Plugin的基本框架已经诞生了
在这里插入图片描述

2. C++ Plugin的使用

我们在浏览器中看一下当前项目的目录,在项目根目录下的Plugins中,可以看到RPGCharacter插件的全部内容

在这里插入图片描述

我们把Plugins中的RPGCharacter文件夹拷贝到其它虚幻5.6项目的Plugins文件夹下就可以使用这个插件了(当然有的时候我们需要重新编译一下)
在这里插入图片描述

在这里插入图片描述

3. 小结

以上就是创建一个C++ Plugin的基本方法

http://www.dtcms.com/a/292785.html

相关文章:

  • android 12 的 aidl for HAL 开发示例
  • VR技术在元宇宙游戏中的作用及发展前景深度分析
  • Fluent许可与网络安全策略
  • 基于JSP的快递管理系统/快递寄出管理系统
  • 初识opencv01——基本api操作
  • Transactional事务不生效案例与解决方案?
  • 基于深度学习Transform的steam游戏特征分析与可视化【词云-情感词典分析-主题分析-词频分析-关联分析】
  • Android 自动的文件管理器存在以下问题,文件管理器横竖屏切换会停止运行,如何解决
  • 多维基分析求导法则
  • DNS应用层协议
  • OEC 刷机Armbain 25.05后配置说明
  • Vue3中watch和watchEffect区别和用法
  • 安装UV(一个python工具)
  • C语言符号可见性控制与工程实践——深入理解 __attribute__((visibility)) 和 -fvisibility=hidden
  • 【bug】Yolo11在使用tensorrt推理numpy报错
  • 在线教育培训课程视频如何防下载、防盗录?
  • Java(LinkedList和ArrayList底层分析)
  • UML中的多重性详解
  • 【QT常用技术讲解】QSystemTrayIcon系统托盘
  • cuda做lut 去畸变示例
  • APT32F1732RBT8爱普特微电子 32位MCU国产芯片 智能家居/工业控制 首选
  • 【Word Press基础】创建一个自定义区块
  • 日语学习-日语知识点小记-构建基础-JLPT-N3阶段(7):自動詞 & 他動詞
  • Matlab学习笔记:矩阵基础
  • 鸿蒙卡片开发保姆级教程
  • 【Kubernetes】集群外使用 kubectl 命令连接集群
  • 数据结构 之 【排序】(直接选择排序、堆排序、冒泡排序)
  • LS-DYNA | 载荷与边界条件
  • 内网穿透利器:基于HTTPHTTPS隧道的代理工具深度解析
  • Monkey OCR简单介绍