UE5 C++ 插件开发
文章平均质量分 88
插件不依赖于具体的项目,可以在任何项目中即插即用,具备高度解耦,易用易扩展的特性.这个专栏将分享如何开发UE5插件,重点使用C++配合少量蓝图,第一个案例是最近开发的商店和背包插件,将分享这个插件的开发过程和心得,组件和接口的深度使用,干货满满.
CloudHu1989
天行健,君子以自强不息;
地势坤,君子以厚德载物。
展开
-
UE5 C++ 插件开发 0.专栏介绍
那么订阅这个专栏可以得到什么? 1. 插件源码,这个会首先提供给大家; 2. 插件使用教学,教学大家快速将插件应用到项目中; 3. 插件开发教学,从零开始逐步将这个插件开发出来,讲清楚思路原理; 4. 插件同步更新,提供一个公共账号给大家拉取插件的更新; 5. 技术支持,对在专栏评论区中的关于插件技术问题的留言进行技术支持.这个专栏的价格比较高,一方面是因为参照了Epic商店对应类型的价格,所以希望可以给到大家一个合理的定价;另一方面是笔者现在开发独立游戏资金不足,希望可以得到大家的支持.原创 2022-10-27 11:53:32 · 3215 阅读 · 4 评论 -
UE5 C++插件开发指南目录
本专栏可能是相对小众的,但是市面上又没有一本同类型的专栏,所以笔者只能厚着脸皮来起草,由于笔者才疏学浅,难免在写作过程中有所疏漏的地方,故而希望读者如果有什么意见,可以通过邮件反馈给笔者:cloud198923@foxmail.com。而掌握UE5插件开发的技能则可以将我们项目开发的效率提升到更高的水平,做到事半功倍,正所谓“工欲善其事,必先利其器”,打造适合自身行业的插件工具集,使其成为我们的开发事业的利器。因为笔者在实际的项目中也因此而收益,所以这无疑是一件值得做的事情。4.掌握开发插件的整个流程;原创 2023-06-02 15:28:40 · 1953 阅读 · 0 评论 -
如何开发背包扩容功能?
在背包系统中有个扩容功能,可以增加背包的负重和容量,之前没有细讲,这里针对这个问题进行补充,而快捷栏扩容和背包扩容是同样的思路,所以就不去额外解析快捷栏扩容了。如果大家可以理解背包系统,那么快捷栏就不会有问题,可以把快捷栏理解成玩家随时显示在视口上的小背包,只是多了一些快速激活物品的操作而已。原创 2023-06-01 18:45:27 · 1156 阅读 · 0 评论 -
如何开发合成物品功能?
现在策划有一个合成物品的需求:可以将多个低级物品合成高级物品,如果背包中已有低级物品了,合成时需要减掉物品的费用,只需要支付合成费;原创 2023-05-31 16:27:00 · 409 阅读 · 0 评论 -
如何制作插件使用案例?
作为一款插件,我们一定想要开发者拿到之后立即知道如何使用,所以我们需要制作插件使用案例,最好搭配相应的文档教会插件的使用者如何使用插件,如何对插件的功能进行扩展。为了达到这样的目标,我们需要制作插件使用案例。首先,我们在Plugins路径下的SimpleShop Content下新建一个叫做Example的文件夹,用来存放使用案例相关的文件,如下图所示:在Example文件夹下新建一个叫做Blueprints的文件夹用于存放蓝图相关的文件,新建一个叫做Maps的文件夹用于存放地图相关的关卡文件。原创 2023-05-30 16:24:33 · 465 阅读 · 0 评论 -
如何实现UI交互?
之前实现了UI的显示,这一篇补充UI的交互功能实现,先把思维导图画出来,程序员的自我修养就是任何时候都要理清思路,思路清晰是编码的前提,如下所示:这里其实没有去实现鼠标双击使用/装备物品,因为没有做角色界面,所以这个功能就无法落地。当然,有了以上三种交互方式的实现案例,再去扩展就不难了。原创 2023-05-29 17:38:35 · 937 阅读 · 0 评论 -
如何开发背包系统?
相信大家对于背包系统并不陌生,谁还没有玩过几款游戏呢?游戏中的背包都是大同小异的,朴素的功能就是存放我们获取到的物品,高级一点就是要有物品分类,便于玩家刷选背包中的物品,能够显示玩家拥有的货币数量,还有负重限制和扩容功能。如下图所示,这是我们实现的一个背包系统案例:(1)物品分类,这个在商店中已经实现了,照搬到背包中即可;原创 2023-05-28 17:21:41 · 1107 阅读 · 0 评论 -
如何将数据显示到UI上?
前面介绍的知识点需要串联起来,从而达到我们将数据显示到UI上的目标。现在重新回到源头,理清思路:策划交给程序员一个Excel表格,这个表格就是物品的数据,我们将其另存为CSV文件,然后导入进虚幻引擎编辑器,为了读取数据资产,我们创建了对应的数据结构ItemTable,为了方便读取这些数据,我们又创建了ShopSubsystem商店子系统。原创 2023-05-27 16:37:32 · 1312 阅读 · 0 评论 -
如何设计基类和派生类?
这一篇的重点在于梳理编写代码的思路,接触到一个项目的时候,我们会看到需求文档中描述了许多功能,比如游戏商店要支持上架、显示列表、交易、下架等功能,玩家背包扩展,玩家快捷栏扩展,这个时候我们其实需要思考怎么去实现这些功能,其中哪些是可以复用的地方,从而提高开发效率。原创 2023-05-26 16:48:25 · 207 阅读 · 0 评论 -
如何动态显示物品提示?
为了使物品的排列简洁,各种游戏里的物品信息都是以提示的形式展示出来,而不是整个铺排陈列,只需要玩家鼠标悬停在物品上就自动显示出提示窗口,如下图所示:这些提示信息在物品定义数据资产中已经定义了,所以这里要做的只是将其动态展示到UI界面中,这个要如何做到呢?//如果没有缓存的指针,就创建一个 if(!TipPtr) {if(TipClass) //创建该部件必须要有对应的类 {} } //返回提示窗口的指针 return TipPtr;原创 2023-05-25 16:07:57 · 877 阅读 · 0 评论 -
如何显示物品词缀?
动态显示物品词缀。原创 2023-05-24 15:11:26 · 1055 阅读 · 0 评论 -
如何动态生成列表视图?
动态生成物品列表视图指南。原创 2023-05-23 16:17:40 · 693 阅读 · 0 评论 -
如何使用游戏消息子系统来解耦?
游戏消息子系统使用指南。原创 2023-05-22 18:10:49 · 588 阅读 · 0 评论 -
如何使用游戏标签?
UE5 C++全局原生标签的使用指南.原创 2023-05-21 15:49:06 · 524 阅读 · 0 评论 -
如何使用UE5 C++接口?
全网最详细的UE5 C++接口使用教学,Unreal Interface使用指南.原创 2023-05-20 21:04:06 · 1637 阅读 · 4 评论 -
UE5 C++类如何读取Excel配置表?
虚幻引擎兼容CSV和JSON格式的数据结构,这里的CSV是Excel表格的保存格式,如下图所示:打开任意Excel表格,点击文件菜单,然后鼠标悬浮到另存为,选择其他格式,这个时候会弹出保存窗口,在该窗口中点击下拉菜单,再选择CSV格式,保存之后的数据就可以拖拽到虚幻引擎的编辑器了,UE引擎会将其自动转化成DataTable的数据结构.原创 2023-05-20 15:32:17 · 1617 阅读 · 1 评论 -
UE5 C++类如何打印日志?
史上最全最详细的UE5日志打印教程.原创 2023-05-19 21:14:15 · 1351 阅读 · 0 评论 -
UE5中如何新建C++类?
这个问题应该细分成两个问题:(1)如何在编辑器内创建C++类?(2)如何在编辑器外创建C++类?问题(1)主要针对那些可以在编辑器内继承并创建的类,然而有些内是无法在编辑内继承的,必须在编辑器外手动创建,例如编辑器内就无法继承FTableRowBase结构内,这个时候就需要聚焦问题(2)了.本文之所以是用解决问题的方式写作,就是想逐个解决读者的疑惑,同时在读者没有这方面疑问的时候可以选择跳过该条目,从而节省阅读时间.原创 2023-05-19 19:11:19 · 2367 阅读 · 1 评论 -
如何创建UE5插件?
首先,笔者默认读者已经知道如何安装UE5虚幻引擎了,并且也会编辑器的一些基本操作,那么这里省略了:如何注册Epic Games账号?如何安装UE5引擎?如何安装C++相关IDE(VS,Rider等)?这两个问题大家可以自行百度,度娘会详细的告诉大家,所以笔者就省略了,将笔墨都集中在插件开发相关的问题上.原创 2023-05-19 15:27:16 · 1863 阅读 · 0 评论 -
为什么要开发插件?
用问题解答的方式重新书写UE5插件开发原创 2023-05-19 13:47:36 · 1147 阅读 · 0 评论 -
UE5 C++ 插件开发 1.开源
作为一个游戏从业者,自己目前还没有能够那种拿得出手的游戏,这一直是自己的某种执念,所以一直想研发出一款革命性的作品,就像,或者之类的,这种游戏不仅带给玩家非常好的体验,而且可以带给整个游戏行业很多启发.自己之前写了一篇预言性质的文章,虽然被平台判定违规了,但是自己没有认为有什么过错,只不过是当下被清扫了,但是总有一天还是可能被平反的,所以自己也不去喊冤,也不想叫屈,只是淡然的接受违规的结果.原创 2022-11-10 15:22:52 · 4834 阅读 · 5 评论