首页 > 其他分享 >UE5 GameFeature示例项目《古代山谷(Valley of the Ancient)》中Action_SpawnActor无法动态拔插的问题

UE5 GameFeature示例项目《古代山谷(Valley of the Ancient)》中Action_SpawnActor无法动态拔插的问题

时间:2024-11-07 13:57:12浏览次数:1  
标签:GameFeatureTestMap Ancient GameFeature 示例 PIE Action Level SpawnActor

前因

最近在研究GameFeature这个功能,UE官方推荐的是《古代山谷》这个项目,因为在其中用到了很多的新功能,GameFeature也在其中。观察到原来的GameFeature默认提供的action中其实功能比较有限,于是就从《古代山谷》拷贝了一些Action来用,结果Action_SpawnActor并无法在我自己的项目中在PIE模式下动态拔插。

image-20241107134717400

分析

通过分析古代山谷中的Action编写逻辑我们可以知道,Action_SpawnActor其实是继承于WorldActionBase的,然后实现了WorldActionBase中的AddToWorld纯虚函数,从而达到SpawnActor的目的。

image-20241107135149574

然后我们把断点打在SpawnActor前,然后我们运行PIE,并把GameFeatureData的状态从Loaded改为Active。

结果发现断点命中在Continue了:

image-20241107135706968

可以看到,Entry的TargetWorld叫做GameFeatureTestMap,World也是GameFeatureTestMap,也就是说其实是同一个Level。但是最后判断的时候却是不相等。

image-20241107135738967

于是我们尝试判断两个World的PathName是否相等:

image-20241107140111549

结果发现一个叫做PIE_GameFeatureTestMap,另一个倒是我们一开始的GameFeatureTestMap。于是发现问题。

解决方案

把if条件改为两个World的Name是否相同

image-20241107140242639

总结

没想到PIE在运行对应的Level的时候会给这个Level在生成一个自己的PIE_XXXLevel,真是涨知识了...

不过解决方案也有点问题,也就是如果设置的TargetMap恰巧与你的当前Level是一个名字就会错误地Spawn这个Actor到你当前Level中,这显然不是预期行为。

标签:GameFeatureTestMap,Ancient,GameFeature,示例,PIE,Action,Level,SpawnActor
From: https://www.cnblogs.com/Vikyanite/p/18532123

相关文章

  • mysql 游标 示例
    提示:mysql游标必须要在在存储过程中才能使用,不能单独使用数据表CREATETABLE`student_score`(`id`intunsignedNOTNULLAUTO_INCREMENT,`student_id`varchar(128)DEFAULTNULL,`student_course_name`varchar(128)DEFAULTNULL,`score`intDEFAULTNULL,......
  • mysql 连接查询之内连接、外连接 代码示例
    mysql连接查询可以分为内连接与外连接,外连接又分为左外连接和右外连接,左外连接可以简称为左连接,右外连接可以简称为右连接表数据如下学生表:student学生课程:student_course内连接:将两表满足条件的记录进行笛卡尔乘积--以下3个查询等效,均为内连接select*fromstudentinn......
  • 基于JavaScript的关键词过滤示例
    业务场景中,合作第三方的的各种AI内容审核模型,完全达不到满意的状态,奇怪这么简单的一个东西,有这么复杂吗,自己动手来一个DEMO,给开发,仅供参考。<!DOCTYPEhtml><htmllang="zh"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-wi......
  • 度娘去搜索语法及示例
    度娘搜索语法是一套用于提高搜索效率和精确度的特定规则和指令,可以帮助用户更精准地找到所需信息。以下是一些常用的度娘搜索语法及其详细示例:限定在网页标题中:intitle:该语法可以限定搜索结果仅包含网页标题中的关键词。例如,输入“新疆intitle:雪菊”将返回所有标题中包含“雪菊......
  • Python:用 turtle 库打造趣味动画 —— 基础示例与进阶拓展
    以下是一个使用Python的matplotlib库实现的简单动画程序示例,展示了一个正弦波动态变化的效果,标题为《Python与Matplotlib:动态正弦波动画展示》。收起python复制importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.animationasanimation#创......
  • 让金融数据处理更精准-C#银行回单识别集成示例、回执单识别
    银行回单识别接口是一种基于人工智能和光学字符识别(OCR)技术的解决方案,能够自动识别和提取银行回单中的关键信息。通过这项技术,用户可以对回单文字内容进行提取,系统便能快速准确地识别回单上的交易金额、时间、银行名称、账户信息等各类重要数据,并将其转化为可结构化的数字信息......
  • 基于SSM+uniapp的营养食谱系统+LW参考示例
    1.项目介绍功能模块:用户管理、年龄类型管理、阶段食谱管理、体质类型管理、季节食谱管理、职业食谱管理等系统角色:管理员、普通用户技术栈:SSM,uniapp,Vue等测试环境:idea2024,HbuilderX,微信开发工具,MySQL5.7,Maven3,Navicat2.项目部署2.1后端部署创建数据库,导入sql通过idea......
  • 基于SpringBoot的动物领养救助系统+LW示例参考
    系列文章目录1.基于SSM的洗衣房管理系统+原生微信小程序+LW参考示例2.基于SpringBoot的宠物摄影网站管理系统+LW参考示例3.基于SpringBoot+Vue的企业人事管理系统+LW参考示例4.基于SSM的高校实验室管理系统+LW参考示例5.基于SpringBoot的二手数码回收系统+原生微信小......
  • 一篇文章教会你HC-SR04超声波传感器测距,附STM32代码示例
     一、HC-SR04超声波传感器介绍:(1)HC-SR04(2020版本):        HC-SR04(2020版本)是一款尺寸完全兼容老版本,增加UART和IIC功能的开放式超声波测距模块。默认条件下,软件与硬件完全兼容老版本HC-SR04;可以通过电阻设置成UART或IIC模式。2CM超小盲区,4.5M典型最远测......
  • 在路由引入时应用路由策略示例
    组网需求RouterB与RouterA之间通过OSPF协议交换路由信息,与RouterC之间通过IS-IS协议交换路由信息。要求在RouterB上将IS-IS网络中路由引入到OSPF网络后,OSPF网络中路由172.16.1.0/24的选路优先级较低;路由172.16.2.0/24具有标识,方便以后运用路由策略。配置思路采用如下的......