UE5学习记录part12

第15节: treasure

154 treasure: spawn pickups from breakables

treasure是items的子类

基于c++的treasure生成蓝图类



155 spawning actors: spawning treasure pickups

设置treasure的碰撞

蓝图实现



156 spawning actors from c++ : spawning our treasure dynamically in code

当使用spawnactor时,普通的参数只能生成c++类的treasure实例,但是c++类的实例没有分配网格,所以需要在c++代码中生成蓝图实例,这就需要uclass类参与

借助UClass指针类,指定资源之后,蓝图类treasure就可以作为参数传入c++代码中,让c++代码生成蓝图类treasure

设置breakable在破碎之后的胶囊体对角色无block属性



157 different types of treasure: creating an array of TSubclass of variables

基于已有蓝图类生成子类

将TSubclassOf<class ATreasure>改为使用TArray<TSubclassOf<class ATreasure>>传入子类蓝图随机生成财宝



158 different types of breakables

If you scale a static mesh and then fracture it, then the geometry collection will be created based 如果您缩放静态网格物体,然后使其破裂,那么将基于几何体集合创建

on the scale of the static mesh that you created. 在您创建的静态网格体的比例上。

That's why our other pot is much bigger. 这就是为什么我们的另一个底池要大得多。

Our geometry collection was created from a scaled up static mesh. 我们的几何体集合是从放大的静态网格体创建的。

选中想要打碎的物品-》放大到合适大小-》在fracture mode下new collection and fracture-》取消勾选show bone->基于原有的BP_Breakable生成子类蓝图-》进行配置,调整capsule radius and half height

为什么一个已经设置了fracture的GeometryCollection几何体,当武器已经设置了field力场时,武器只能打破Breakable蓝图(蓝图中有设置GemometryCollection属性变量),而不能直接打破放在游戏世界里的GeometryCollection几何体?

--有一个猜测时单纯的GeometryCollection几何体没有设置capsule或者collision,没法触发weapon的gethit事件,而weapon只有在gethit事件中才createfields。GeometryCollection几何体只有碰到fields才有解体的可能,可以设置非breakable蓝图类包含有GeometryCollection几何体变量和capsule可以触发overlao事件来验证。(已验证单独的fieldsystem蓝图类可以直接破碎一个单纯的GeometryCollection几何体)

可以使用explode amount来查看破碎的过程



159 niagara system: adding a sparkling effects to pickups

创建niagara系统

可以手动添加更多模块



160 niagara components: adding our emitter to Items

需要在build.cs文件中添加niagara模块

相关推荐
小Tomkk4 小时前
2025年PMP 学习十五 第10章 项目资源管理
学习·pmp·项目pmp
oceanweave4 小时前
【K8S学习之生命周期钩子】详细了解 postStart 和 preStop 生命周期钩子
学习·kubernetes
黄暄7 小时前
初识计算机网络。计算机网络基本概念,分类,性能指标
笔记·学习·计算机网络·考研
梅子酱~8 小时前
Vue 学习随笔系列二十三 -- el-date-picker 组件
前端·vue.js·学习
Alice-YUE8 小时前
【HTML5学习笔记1】html标签(上)
前端·笔记·学习·html·html5
jerry6098 小时前
LLM笔记(五)概率论
人工智能·笔记·学习·概率论
threelab11 小时前
12.three官方示例+编辑器+AI快速学习webgl_buffergeometry_indexed
学习·编辑器·webgl
jerry60911 小时前
LLM笔记(六)线性代数
笔记·学习·线性代数·自然语言处理
ghost14311 小时前
C#学习第23天:面向对象设计模式
开发语言·学习·设计模式·c#
Yan_ks12 小时前
计算机组成原理——数据的表示
学习