草庐IT

UE5-人物动画蓝图(方向和速度)

怕这段记忆被我的大脑清理掉,记录一下。如果能帮助到正在学习ue5的人或者得到大佬的指点就更好了!1、创建“混合空间”,设置好跑步和走路的相关动画。X轴设置成方向,-180~+180;Y轴设置成人物速度,0~600。其中网格划分都是8。  2、创建“动画蓝图”,感觉ue5变了许多。事件蓝图初始化动画和项目自带的人物蓝图一样的,事件蓝图更新动画需要改动一下。这里的speed和Direction到时候会在图表中遇到。  3、图表中,还是延用了ue4的那种类型,没有太大的变化 1和3(NOT布尔)处判断isAir?是否在空中;2和4就是剩余动画时间小于多少就停止执行之类的。 3.1、如果演示后发现小人

UE5-人物动画蓝图(方向和速度)

怕这段记忆被我的大脑清理掉,记录一下。如果能帮助到正在学习ue5的人或者得到大佬的指点就更好了!1、创建“混合空间”,设置好跑步和走路的相关动画。X轴设置成方向,-180~+180;Y轴设置成人物速度,0~600。其中网格划分都是8。  2、创建“动画蓝图”,感觉ue5变了许多。事件蓝图初始化动画和项目自带的人物蓝图一样的,事件蓝图更新动画需要改动一下。这里的speed和Direction到时候会在图表中遇到。  3、图表中,还是延用了ue4的那种类型,没有太大的变化 1和3(NOT布尔)处判断isAir?是否在空中;2和4就是剩余动画时间小于多少就停止执行之类的。 3.1、如果演示后发现小人

【UE4】GameplayTag的妙用(ActorTag)

我不会抛下这个残破的世界在现代游戏引擎中,有一个“Tag”的概念,无论是在Unreal还是Unity中,他们都有大同小异的tag实现。此篇随笔以ActorTag举例,简单讲解一些常见情况下它的妙用,后续我还会更新例如网络同步中的FastReplication使用GameplayTag加快复制过程等其他内容,此文章只是随笔,讲解不好,也不全面,还请各位读者理解。首先,我们要先了解GameplayTag是什么样的东西,这里贴出UnrealEngineDocumentation上的解释。GameplayTag可以添加到任何项目中,将对象与Tag相关联,可以用于为您的项目识别、匹配、分类或过滤它们。很

【UE4】GameplayTag的妙用(ActorTag)

我不会抛下这个残破的世界在现代游戏引擎中,有一个“Tag”的概念,无论是在Unreal还是Unity中,他们都有大同小异的tag实现。此篇随笔以ActorTag举例,简单讲解一些常见情况下它的妙用,后续我还会更新例如网络同步中的FastReplication使用GameplayTag加快复制过程等其他内容,此文章只是随笔,讲解不好,也不全面,还请各位读者理解。首先,我们要先了解GameplayTag是什么样的东西,这里贴出UnrealEngineDocumentation上的解释。GameplayTag可以添加到任何项目中,将对象与Tag相关联,可以用于为您的项目识别、匹配、分类或过滤它们。很

关于UE4对象静态/动态的销毁问题整理(AddToRoot、TWeakObjectPtr)

1.非UObject对象即非UObject常规C++对象,创建销毁不赘述。但可以用智能指针;从而不用关心销毁逻辑:TSharedPtrMyObj=MakeShareable(newClassA());智能指针转裸指针:ClassA*MyObjPtr=MyObj.Get(); 智能指针情况下,当别的类引用该对象,并要知道引用的字段是否=nullptr,则需使用弱指针(TWeakPtr):classClassB{public:TWeakPtrClassAReference;};ClassBClassBObj;ClassBObj.ClassAReference=MyObj;//...if(Class

关于UE4对象静态/动态的销毁问题整理(AddToRoot、TWeakObjectPtr)

1.非UObject对象即非UObject常规C++对象,创建销毁不赘述。但可以用智能指针;从而不用关心销毁逻辑:TSharedPtrMyObj=MakeShareable(newClassA());智能指针转裸指针:ClassA*MyObjPtr=MyObj.Get(); 智能指针情况下,当别的类引用该对象,并要知道引用的字段是否=nullptr,则需使用弱指针(TWeakPtr):classClassB{public:TWeakPtrClassAReference;};ClassBClassBObj;ClassBObj.ClassAReference=MyObj;//...if(Class

UE4 C++调用手柄震动

近期封装输入相关逻辑,简单归纳下。 蓝图实现内容界面右键Miscellaneous->ForceFeedbackEffect,创建力反馈对象并填写相关参数:然后在蓝图中用SpawnForceFeedbackatLocation调用这个力反馈配置文件,或是创建ForceFeedback组件,根据角色是否进入手柄震动区域来进行力反馈响应。 C++实现C++部分的手柄力反馈,包括PS手柄的亮灯颜色等,都可以在PlayerController中直接设置。//#include"GameFramework/ForceFeedbackEffect.h"//#include"Kismet/GameplaySt

UE4 C++调用手柄震动

近期封装输入相关逻辑,简单归纳下。 蓝图实现内容界面右键Miscellaneous->ForceFeedbackEffect,创建力反馈对象并填写相关参数:然后在蓝图中用SpawnForceFeedbackatLocation调用这个力反馈配置文件,或是创建ForceFeedback组件,根据角色是否进入手柄震动区域来进行力反馈响应。 C++实现C++部分的手柄力反馈,包括PS手柄的亮灯颜色等,都可以在PlayerController中直接设置。//#include"GameFramework/ForceFeedbackEffect.h"//#include"Kismet/GameplaySt

UE中动画的Retarget基本操作

UE4中有一个RetargetManager,在UE5中不存在了,操作方式有些改变此处记录一下UE5Retarget的操作步骤1.AnimationRetarget目的复用不同骨架上的动画文件基本思路:把SourceSkeleton的动画文件,利用关键骨骼bone的映射,映射到TargetSkeleton上。映射完后,TargetSkeleton就可以播放SourceSkeleton上的动画文件(如AnimationSequence、Montage)主要流程如下:A=>start:准备好2套骨骼op_a=>operation:新增2套IKRig(对应2套骨骼)op_b=>operation:配

UE中动画的Retarget基本操作

UE4中有一个RetargetManager,在UE5中不存在了,操作方式有些改变此处记录一下UE5Retarget的操作步骤1.AnimationRetarget目的复用不同骨架上的动画文件基本思路:把SourceSkeleton的动画文件,利用关键骨骼bone的映射,映射到TargetSkeleton上。映射完后,TargetSkeleton就可以播放SourceSkeleton上的动画文件(如AnimationSequence、Montage)主要流程如下:A=>start:准备好2套骨骼op_a=>operation:新增2套IKRig(对应2套骨骼)op_b=>operation:配