unreal-engine4 - 如何在鼠标悬停时生成 Actor 并在几秒钟后自行销毁?
问题描述
我想在 3D 世界中生成瓷砖。我已经为鼠标点击生成了 BP,但我想添加一个“预览”(鼠标悬停时)它会在点击时放置的位置。
我尝试使用相同的技术进行预览。但我不确定我应该使用什么事件。
我尝试使用鼠标右键单击事件并且它有效,但这不是我的目标,因为那样我错过了“鼠标悬停”部分。
我厌倦了使用 Event Tick,但它似乎会导致破坏功能出现问题。而不是在 0.2 秒内产生瓷砖并摧毁它们,它只是不断地产生它们而不破坏它们。
解决方案
这是错误的,只要使用/单击生成功能(您尚未制作)(根据游戏要求),使用轻质材料悬停的网格应始终显示。
然后鼠标右键单击事件应该用于生成实际的网格,并在单击鼠标时添加一点好的效果,悬停网格应该消失 1 秒的延迟并重新出现。
所以它应该如下所示: 1- Spawn 函数应该在鼠标下方创建一个空心网格。它应该与刻度函数没有关系。2- 鼠标点击事件应该产生实际的网格。它应该与 tick 没有关系,除了在需要时使用鼠标单击或 spawn 函数处理的条件查找您的中断结果。在 begin play 之后生成类本身应该有一个 destroy 函数。
尝试越来越少地使用刻度功能,并且仅在需要时使用条件。这将使您了解更多。Tick 运行每一帧并且很危险。学会有条件地驯服它。
推荐阅读
- django - 在 Django Rest 中合并来自两个数据库的查询集
- javascript - 带有用户输入的 2 个目的地的 Google-map API 方向服务
- python - 如何用 Python 抓取 NBA 表格?
- javascript - JavaScript:如何使用较少重复的代码重构 if..else 语句?
- wordpress - 我们如何使用 wordpress REST API 创建帖子和页面?
- java - Java 无法找到正则表达式的匹配项
- apache-spark - 如何在 Cloudera 集群上分发 JDBC jar?
- sqlite - sqlite3:分离数据库产生数据库被锁定错误
- dart - 如何解决一些飞镖代码的奇怪行为
- excel - 如何仅计算具有值而不是函数的行