UE4 BP爬坑手记1

最近在做一个小项目,本身觉得逻辑不复杂,直接用BP就可以完成核心逻辑。至于其他边边角角,应该都不是什么大问题,也就是文件读写等等,在BP里完成不了的东西就直接在C++代码里完成,好在项目比较小,怎么写都是自己定义。

就在期待的曙光将要出现的时候乌云滚滚的压住了那黎明的光线,直接将我送到了18层地狱以下。

具体是这样:因为主角几乎没有逻辑,只是几个简单的操作,我这里就放过去了,将游戏的主要逻辑都整到了GameMode里,在增加了新的功能和物件之后,BP终于不堪重负的打包失败了。之前也出现过类似的情况,但是没有说一宿一个包都没打出来过。做了深刻的检讨之后,决定将GameMode中的部分逻辑拿出来,整到几个SceneComponent中,于是灾难的崩溃开始了。写好了N多函数之后发现无法挂接,一旦加入到GameMode中,项目就打不开。


下面说目前的思路:情况出现后,意识中就一个想法,可能是交叉调用导致的,于是新建了一个SceneComponent做实验,发现没有问题。于是将所有函数全部删除干净,看挂接后是否OK,结果依然很精彩。直到我在新的Component中做实验才发现端倪。也就是SceneComponent中可以使用Actor作为成员变量,但是不能使用Actor数组作为成员变量。也不知道是为啥。


目前也没啥具体原因的说明,至少项目的进度必须要赶,后续还会有跟有趣的东西等着我。或许又是一个不眠的夜晚,先分离逻辑,至少验证过后,再说其他,先写这些。分离成功后,会有更多的东西写进来


=========================================================我是分割线==============================================================


再次编辑一个新的SceneComponent,发现删除掉其中自定义的枚举值之后,项目打开成功,有这个枚举值的时候打开是崩溃的。初步推测,SceneComponent中,尽量不使用自定义变量类型,如果必须使用的时候,注意:自定义会崩溃,使用需谨慎


=========================================================再分割==================================================================

回到原点,BP中不能在同一个类中使用太多的函数、事件等等这些东西,上限是多少完全未知,忠告就是:不要在同一个BP中定义太多的函数和事件,要不然痛苦的逻辑会让人不愿意面对明天的人生……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值