UE5 C++ 斯坦福 Note1

Class Hierarchy (类的层次结构)

  • Object 所有虚幻实例(UObject)的基类
  • √ Actor 可以被放置或生成在世界中的Object
  • √ √ Pawn 可以被玩家或AI控制的Actor
  • √ √ √ Character 包含步行移动组件的Pawn
  • √ √ √ √ *Character 我们继承重写的C++类

Class Prefixes (类的前缀)

虚幻引擎需要类始终保持前缀

  • U - 派生自UObject的类
  • A - 派生自Actor的类
  • F - 结构体
  • E - 枚举
  • I - 接口

BeginPlay

在Character刚被加载的时候首先调用
如果它被执行,那么它已经被完全加载,完全初始化,这是我们可以信赖的第一件事。

Tick

每一帧都会被调用,也传递了一个delta时间访问

相机组件

UCameraComponent

弹簧臂组件

USpringArmComponent

创建实例

CreateDefaultSubobject<CLASSNAME>(“TABNAME”)
其中CLASSNAME是实例的类型,TABNAME是它在编辑器中显示的名字

数据视图与完整蓝图编辑器

数据视图很难读懂正在发生的事情
蓝图读起来比较快

C++层暴露组件,适当的显示出细节面板

设置弹簧臂正确的附着

弹簧臂 SetupAttachment(RootComponent)

RootComponent是层次结构中的第一个组件

设置相机正确的附着

相机 SetupAttachment(弹簧臂)

相机安装在弹簧臂上

因为我们想要角色和相机之间有一定的距离

Unreal Property System (虚幻资产系统)

UPROPERTY,UFUNCTION,UCLASS,USTRUCT,UENUM(Unreal Macros 虚幻宏)

标记C++类,用于像编辑这样的事情,蓝图访问,甚至对于网络行为。

定义你的代码应该在哪里运行,服务器还是在本地客户机上。

而且也是为了内存管理,将会用于追踪指针和一个对象的内存,

比如

UProperty(VisibleAnywhere) //它将在任何地方可见

玩家输入组件

void AMainCharacter::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent)
{
   
   
	Super::SetupPlayerInputComponent(PlayerInputComponent);
	// 加两个输入事件控制相机
	// 轴运算
	PlayerInputComponent -> BindAxis("LookRight", this,&AMainCharacter::AddControllerYawInput);
	PlayerInputComponent -> BindAxis("LookForward", this,<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值