UE5高薪就业班-1v1服务-就业无忧 扫二维码继续学习 二维码时效为半小时

(6评价)
价格: 13800.00元

蒙太奇用于打断状态机,播放指定动画

[展开全文]
DUChicken · 06-14 · 0

规划与边想边做需要结合,这样才能提高开发速度

[展开全文]
DUChicken · 06-07 · 0

根据需求使用复用方案:

1、创建一个新父类

2、直接使用原父类

3、修改父类兼容子类需求

 

对组件进行追踪,将指针的类型修改为其父类,使用C++多态特性,在子类中要删除修改过的父类创建的组件,重新创建时需要修改文本宏TEXT()

[展开全文]
DUChicken · 06-06 · 0

switch与C++语法相同,可写在Tick中

switch可用于制作有限状态机

根据情况,对switch的结构和分支进行优化

使用switch来对枚举情况进行判断,放在Tick中用于判断状态

思考结构如何形成闭环

[展开全文]
DUChicken · 06-05 · 0

涉及转弯影响speed的值

在Blendspace可以修改分栏或插入相同动画序列来改善动画抖动问题

[展开全文]
DUChicken · 06-05 · 0

FORCEINLINE宏让函数使用内联

[展开全文]
DUChicken · 06-05 · 0

状态使用枚举类型来保存

创建枚举类型:

虚幻C++枚举类型开头要加E,使用C++申请语法后接存储类型(uint8)

枚举要参加反射系统,需要在前加上宏:UENUM(BlueprintType)

值命名规范:使用类名缩写作为前缀

值要参与反射系统,须在后加上宏:UMETA(DisplayName="")

[展开全文]
DUChicken · 06-05 · 0

实现一个功能前的流程

1、说清楚需求(画图描述或文字)

2、实现它的一个基本原理

3、开始实现

与设计师协作时,蓝图可以为BlueprintReadOnly

自行制作时,蓝图可为BlueprintReadWrite

要写注释

[展开全文]
DUChicken · 06-04 · 0

做好规划,再进行下一步行动

使用BlueprintImplementableEvent关键字搭配UE蓝图系统使用

[展开全文]
DUChicken · 06-03 · 0

父类函数若要在子类函数中重写时,则需要添加virtual

构造函数放在变量处的public中

另一个public中放置函数

带有反射系统的成员不能放在private中

多进行安全性的判断

[展开全文]
DUChicken · 05-29 · 0

组件不要分类

 

[展开全文]
DUChicken · 05-29 · 0

在开始开发前,先进行底层设计,进行规划,后期增删改查会方便许多

[展开全文]
DUChicken · 05-29 · 0

子UI完成自己的逻辑

UI获得蓝图引用一般获取C++版本的父类

[展开全文]
DUChicken · 05-28 · 0

复杂的逻辑使用C++

使用原生C++类操控UI

 

[展开全文]
DUChicken · 05-27 · 0

临时存放的变量理应不应该被修改

对于引用,需要判断其有效性,保证代码的健壮性

临时变量可以提高代码可读性

 

[展开全文]
DUChicken · 05-21 · 0

推荐将绑定写在beginplay中,设置(蓝图面板中的参数)写在构造中

[展开全文]
DUChicken · 05-19 · 0

放在AddDynamic(等紫色的宏(参与反射系统))的函数都要有UFUNCTION 

[展开全文]
DUChicken · 05-18 · 0

    FRotator Rotation = Controller->GetControlRotation();
    FRotator YawRotation(0.0f, Rotation.Yaw, 0.0f);
    FVector Direction = FRotationMatrix(YawRotation).GetUnitAxis(EAxis::X);
    AddMovementInput(Direction, Value);、

在第三人称全视角下,视角看向的方向为正方向移动方法。

[展开全文]
憧憬成为游戏高手 · 2024-06-02 · 0

void AMainPlayer::MoveForward(float Value)
{

const FRotator Rotation = Controller->GetcontrolRotation();
const FRotator YawRotation(0.0f,Rotation.Yaw, 0.0f);

const FVector Direction=FRotationMatrix(YawRotation).GetUnitAxis(EAxis: :X),
AddMovementInput(Direction,Value);

}
void AMainPlayer::MoveRight(float Value)
{

const FRotator Rotation = Controller->GetcontrolRotation():const FRotator YawRotation(0.0f,Rotation.Yaw,0.0f);const FVector Direction = FRotationMatrix(YawRotation).GetUnitAxis(EAxis::Y),
AddMovementInput(Direction,Value);

}

[展开全文]
老师_KK · 2024-02-28 · 0