- 博客(161)
- 收藏
- 关注
原创 UE5中 Character、PlayerController、PlayerState、GameMode和GameState核心类之间的联动和分工·
此处以玩家之间建立组织的逻辑实现作为样例来表现Character、PlayerController、PlayerState、GameMode和GameState核心类之间的联动分工玩家的输入处理:负责处理玩家输入但是Character类也能负责处理玩家输入Character类蓝图处理逻辑类蓝图处理逻辑直接访问组件:类可以直接访问其组件,无需通过。逻辑集中:将与角色行为相关的输入逻辑集中在类中,便于管理和维护。显然对比以上蓝图可见类方法连线较多,函数调用开销也就较大,但是可通过缓存来解决此类问题如下图因此在个
2025-03-16 17:22:32
929
原创 U++ 基础知识
反射类文件的查找并不是直接通过文件系统进行的,而是通过编译时生成的反射信息和引擎内部的全局注册表来完成的。这些反射信息被嵌入到编译后的二进制文件(如.dll或.uasset文件)中,并通过引擎在运行时的反射系统进行查找和访问。当你通过或其他相关方法查询时,实际上是通过引擎的反射注册表来定位类和获取相关的元数据。
2025-03-06 14:05:16
860
原创 UE5网格捕捉
检查HitComponent后进行对应的返回,为True设置预览体放置的Transfrom为对应盒体碰撞的Transfrom。因为先前线体追踪时传入的Array为预览体BP_FoundationMaster,因此可以调用其接口。获取并检查Hit Component是否为我们返回ReturnBoxes的类型相同。其中Build Info源于该蓝图类的父类中的结构体变量。首先进入具体放置类蓝图中添加4个组件"盒体碰撞"到项目设置中创建自定义Trace Cannel。获取Hit Actor的盒体碰撞。
2024-12-12 14:52:40
396
原创 UE5中的自定义 Object Channel 和 Trace Channel
用于定义物体的碰撞类型,并决定它们如何与其他物体交互。用于定义射线或其他物理查询的碰撞行为,通常用于筛选哪些物体应该响应射线检测。两者结合使用可以帮助开发者精确控制碰撞和射线检测的行为,尤其是在复杂的游戏场景中。
2024-12-12 12:36:34
1291
原创 UE5创建“建筑放置预览组件“
首先创建类蓝图如下,其中BP_FoundationMaster为BP_BuildableMaster的子类。循环事件(在函数在客户端开启建筑模式中会调用该事件,因此此处是个死循环,除非执行退出循环事件)最后设置BuildTransfrom的世界变换并循环执行BuildLoop事件。首先,我们需要获取人物相机,因为预览体位置应该在我们人物前生成。新添加函数并命名为(在客户端开启建筑模式)和(生成建筑预览)由于此处都是基本蓝图类型,且变量前面有所描述,这里不多赘述。退出逻辑如下,若预览体为有效的,则将其销毁。
2024-12-11 16:54:30
549
原创 UE5 关于获取引用和获取引用消息
特性获取引用(Get Reference)获取引用消息(Get Reference Message)访问方式直接通过引用(指针)访问对象或变量通过消息机制间接获取对象或变量的引用对象间耦合通常有较强的直接依赖或耦合通过事件或消息机制实现松耦合,解耦对象之间的直接引用关系用途获取场景中其他对象、组件的引用,直接操作对象属性或方法使用消息通知其他系统或对象获取某个对象的引用,通常用于事件驱动系统适用场景需要直接操作或修改其他对象时,例如获取其他Actor的引用。
2024-12-09 20:51:04
1354
原创 UE5中Scene Capture Component 2D组件
是一个功能强大的工具,可以帮助开发者捕捉场景的 2D 图像,并将其输出到纹理,用于动态渲染和效果实现。通过设置不同的参数,它可以实现反射、折射、小地图、动态纹理等多种效果,是实现复杂视觉效果的基础组件之一。
2024-12-09 19:36:10
1614
原创 UE5中的渲染目标(Render Target)
渲染目标是一个非常重要的工具,允许开发者在UE5中灵活地控制渲染流程、生成动态纹理以及实现各种复杂的视觉效果。
2024-12-09 18:57:42
1322
原创 UE5中get own player 和 get own player pawn的区别
返回的是玩家的控制器 (),而返回的是玩家控制的角色或物体 (APawn主要用于获取控制玩家行为的控制器对象,而用于获取玩家所控制的物理对象。很多关于用户部件访问失效的,但是用户部件已经完成实例化的报错就有可能是获取游戏控制器时传入的对象为get own player而非get own player pawn。
2024-12-09 13:35:41
518
原创 UE5 Do Once 节点
Do Once是一个非常有用的节点,能够帮助开发者控制某些逻辑只执行一次。它非常适合用于初始化操作、避免重复调用、或者限制事件触发的次数。
2024-12-04 15:24:13
922
原创 UE5 Does Implement Interface 节点
在中,节点用于检查一个对象是否实现了特定的接口。这个节点通常用于蓝图脚本中,帮助你判断一个对象是否符合某个接口的定义,从而决定是否可以调用接口中声明的方法。
2024-12-03 19:43:47
609
原创 UE5 MakeSlateBrush 节点的作用
节点在 Unreal Engine 5 中用于生成 Slate UI 组件的视觉资源,通常用于编辑器的 UI 或游戏中的自定义 UI 元素。如果你正在进行 UI 编程,理解这个节点非常重要,特别是当你需要动态创建或修改 UI 元素的外观时。
2024-11-28 19:38:52
602
原创 UE5 Line Trace By Channel(通道线条追踪)节点
是一个非常强大的节点,可以广泛应用于射击、检测、交互等场景中。通过合理设置起点、终点、碰撞通道以及处理返回的碰撞信息,你可以实现各种有趣的游戏机制和功能。
2024-11-27 19:19:50
2064
原创 UE5 Spawm Emitter at Location(在位置处生成发射器)
是一个在蓝图中广泛使用的节点,能够帮助你在游戏中实现动态的视觉效果。通过灵活配置,可以为游戏添加许多有趣的粒子效果,比如爆炸、火焰、烟雾等。
2024-11-27 17:59:51
897
原创 创建可摧毁的岩石类对象
为可销毁岩石类创建具体子类(如果只想实现单个对象可略过)到库中的Fab Library下找到该插件并下载即可。拖入Switch Has Authority 节点。点击Fracture并拖动爆炸当量观察变化。新添几何图形集合到文件夹中(自己选择位置)到先前下载几何图像集合的文件夹中找到目标。到资产文件夹中将岩石静态网格拖入地图中。菜单栏中选择合适的Fracture选项。添加Radial Falloff 组件。为其添加静态网格(或者从父类继承)可以观察到现在的静态网格模型如下。在几何体缓存组件中点击箭头选中。
2024-11-25 16:06:27
313
原创 UE5 的DOP简化碰撞的基本概念
在 Unreal Engine 中,是一种用于表示和计算物体碰撞的方式,特别是在静态网格体的碰撞设置中。DOP 是一种多面体碰撞体的类型,它通过组合多个面来形成一个简化的碰撞体形状,用于优化碰撞计算。
2024-11-25 15:46:46
888
原创 UE5 Add Transient Field 节点
节点是 Niagara 中一个非常强大的工具,它允许你动态地为粒子系统添加临时数据字段,这些字段在粒子生命周期内有效,并且不会影响系统的长期属性。你可以用它来模拟短暂的物理效果、瞬时力场、碰撞反馈等多种效果,是实现复杂 VFX 的重要节点。
2024-11-25 14:50:36
961
原创 UE5 Radial Falloff 组件概述
组件是一个可以设置衰减范围和强度的模块,通常用来创建对距离中心点的物体施加影响,并且影响随距离增大而减弱的效果。衰减通常是基于距离的,可以通过在蓝图或材质中进行进一步调整,来控制物体的行为或视觉效果。组件和它的应用在 UE5 中提供了强大的功能来模拟基于距离的衰减效果。无论是在物理上模拟力的影响、光照衰减,还是音效、视觉效果,都是实现这些效果的理想工具。通过合理调整衰减类型、衰减曲线等参数,可以创造出非常真实和动态的游戏体验。
2024-11-25 14:41:10
850
原创 UE5 fieldSystemActor类
在UE5(虚幻引擎5)中,是用于处理和模拟场景中的物理力场(Field Systems)的一个重要类。该类提供了一种机制,用于生成和控制力场,进而影响场景中的物理对象。的蓝图类是可以让你在虚幻引擎中可视化和自定义这种力场行为的工具。
2024-11-25 14:35:21
894
原创 UE5 Geometry Collection组件
组件在 Unreal Engine 5 中是实现物理破坏和碎片化的核心工具。通过使用 Chaos Destruction 系统,你可以轻松创建和模拟动态的物理破坏效果,提升游戏和虚拟环境中的互动性和真实感。通过手动或自动设置碎裂模式,结合物理模拟和碰撞系统,你能够实现更加复杂和逼真的物理效果,适用于各种类型的游戏和影视制作。
2024-11-24 21:46:10
1139
原创 UE5中时间轴关键帧选项设置
常量 (Constant):没有平滑过渡,适用于突然变化。线性 (Linear):在关键帧之间平滑过渡,适用于匀速运动。用户 (User):允许用户定义自定义的插值方式。中断 (Break):用于插入断点或明显的变化,适合需要中断或跳跃的动画效果。自动 (Auto):自动生成平滑过渡,适合大多数动画。平整 (Flat):切线为水平线,表示速度不变。拉直 (Linear):切线为直线,表示匀速过渡。
2024-11-24 17:01:14
1353
原创 UE5实现可销毁对象的淡化销毁
添加常量节点constant,并将节点转换为参数且初始值改为50,设为对比值。将对应变量添加到set scalar parameter value节点。添加常量节点constant,并将节点转换为参数且初始值改为1.0。默认混合模式(不透明)下无法进行设置,将混合模式修改为。如果材质本身就具有不透明蒙版属性(例如叶子材质等)最后如果想实现理想的消亡效果可以自己设置消亡延迟时间。改变dissolve的值,可以观察到材质的变化如下。将所需元素设置完后添加时间轴。对应静态网格对象的材质索引。
2024-11-24 16:55:48
451
原创 UE5 Set Scalar Parameter Value 节点
在中,节点用于在(Material Instance)中动态设置一个(Scalar Parameter)的值。这个节点通常用于通过蓝图(Blueprints)或材料编辑器控制材质的外观,特别是在运行时。
2024-11-24 16:47:37
1228
原创 UE5时间轴节点及其设置
控制单一浮动值,适合处理数值变化,如位置、透明度等。控制三维向量,适合处理位置、旋转、缩放等三维空间中的变化。控制颜色值,适用于颜色渐变或材质变化。用于在时间轴的特定时间点触发自定义事件。将位置、旋转和缩放合并为一个轨道,适合同时控制多个变换属性。Bool Track控制布尔值的变化,适用于状态控制和动画的开关。通过这些不同类型的轨道,你可以灵活地在时间轴中实现多种效果,无论是物体的平移、旋转,还是颜色变化、事件触发,都能够精确控制。
2024-11-24 16:34:30
2678
原创 UE5 Create Dynamic Material Instance(创建动态材质实例) 概述
在中,节点用于创建材质的动态实例。动态材质实例是基于某个已有的材质或材质实例的副本,并允许在运行时修改其属性(例如颜色、纹理、参数等)。这个节点在游戏开发中非常有用,特别是当你需要在游戏运行时动态调整物体的材质属性时。
2024-11-24 16:10:51
2116
原创 LinearInterpolate (Lerp) 节点的基本概念
在中,节点(通常简称为)是一个非常常用的节点,它用于在两个值之间进行线性插值。这个节点在和中都有广泛应用,尤其是在控制和过渡效果时非常有用。
2024-11-24 15:59:11
1934
原创 UE5中T_noise 纹理的概述
类型T_noise是一种灰度噪声纹理,通常是以单通道(黑白)图像的形式存在,它的像素值在一定的随机性范围内变化,类似于或等常见噪声生成技术。用途:主要用于材质的细节生成,例如模拟自然现象(如噪声、裂缝、扰动等),或者在粒子系统、动态纹理、地形生成和环境细节中使用。T_noise。
2024-11-24 15:49:33
828
原创 UE5 材质编辑器CheapContrast 节点
在材质编辑器中,节点是一个非常实用的节点,主要用于对图像或纹理的进行调整,且执行效率较高,适合在性能要求较高的场景中使用。
2024-11-24 15:40:16
1078
原创 UE5材质Texture Sample 节点的基本概念
节点在材质编辑中是一个核心工具,它允许你将纹理图像的像素数据应用到物体表面。通过这个节点,你可以对纹理进行各种操作和变换,控制材质的外观。无论是基础的颜色纹理、法线贴图,还是复杂的透明度、发光、粗糙度贴图,都是实现这些效果的基础。
2024-11-24 15:23:23
2027
原创 UE5材质混合模式
在中,是材质系统中的一个重要设置,它定义了材质的透明度和渲染方式。混合模式控制了材质如何与背景进行混合,决定了物体的显示方式(是否透明、如何透明、如何与其他物体交互等)。
2024-11-24 15:17:43
1998
原创 UE材质不透明蒙版选项
在中,不透明蒙版插槽 (Opacity Mask)是材质中的一个重要参数,用于控制材质的透明度和不透明区域。具体来说,它允许你在材质中实现部分透明或不透明的效果,通常用于实现如不规则透明物体(例如树叶、金属网格、布料、破损的玻璃等)的效果。
2024-11-24 15:13:32
1079
原创 C++中关于 <functional> 的使用
你可以使用 std::bind 来绑定函数参数,并创建新的可调用对象。std::bind是 C++11 引入的一个函数适配器,可以将函数及其参数绑定在一起,生成一个新的可调用对象。它可以用于简化函数调用,特别是在需要部分应用或延迟调用的情况下。相比直接调用封装到中的好处在于可以提供更大的灵活性,尤其是在需要动态传递不同可调用对象的场景。以下是一些常见的实践应用示例,展示了封装的优势。// 使用 std::bind 绑定参数// 绑定参数 5// 使用默认参数f1();
2024-11-01 15:12:52
806
3
原创 力扣每日一题合集
链接:https://leetcode.cn/problems/domino-and-tromino-tiling/submissions/简单的贪心然后结构体排序(也可以创建数组记录位置访问)简单的按规则排序,去除几个不满足的条件然后排序返回即可。故进行转移时只用转移1e4次即可。主要是方法二:学习别人的想法和写法。一题简单的递推,也是没什么好说的。来源:力扣(LeetCode)方法一:状态压缩dp。
2024-10-29 18:28:13
958
1
原创 UML总结
UML_哔哩哔哩_bilibili 类图(Class Diagram)是统一建模语言(UML)中一种重要的图形表示,用于描述系统中的类及其之间的关系。它是面向对象设计中常用的工具,可以帮助开发者理解系统结构和组件之间的互动。类名:属性:方法: 在UML(统一建模语言)中,类继承关系通常通过特定的符号表示。以下是一些关键概念和符号:继承(泛化):实现:多重继承:抽象类:接口: 用例图是UML(统一建模语言)中一种用于表示系统功能的图示工具,主要用于展示系统的用户(或称为“参与者”)与系统之间的交互关系
2024-10-28 19:20:46
1410
原创 设计模式(完结)
针对接口编程在代码设计中,程序员依赖于抽象接口(如接口或抽象类)来定义系统的行为。这意味着代码只需要知道如何使用接口,而不关心具体的实现细节。通过使用接口,程序可以在运行时根据需要选择不同的实现,这种方式提供了更大的灵活性。针对实现编程这种方法是指代码直接依赖于具体的类和实现,而不是抽象接口。这种方式会导致代码变得紧耦合,不易于修改和扩展。如果实现发生变化,可能需要修改依赖于该实现的所有代码,这会增加维护成本。
2024-10-24 15:14:26
1334
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人