虚幻4C++学习笔记02_UPROPERTY的作用,虚幻四种基本继承关系和组件的概念

UPROPERTY介绍

属性使用标准的C++变星语法声明,前面用UPROPERTY宏来定义属性元数据和变量说明符。

使用: UPROPERTY (属性说明符)  //如下

UPROPERTY(EditAnywhere)
int Test;

UPROPERTY的作用

答:将变量公开到编辑器或蓝图。

常见属性说明符

( 1 ) VisiableAnyWhere:如果给一个变量声明了此关键词,那么它会出现在蓝图编辑器的右边和主编辑器上。(只是显示,不能编辑
( 2 ) VisibleDefaultsOnly:在主编辑器中不显示,但是在蓝图编辑器中显示(不可编辑). Default默认是蓝图编译器
( 3 ) EditDefaultsOnly:在蓝图中可以编辑,但是在主编辑器中不显示所以不可编辑。
( 4 ) EditAnywhere:在主编辑器和蓝图编辑器中都显示并且都可以编辑。
( 5 ) EditInstanceOnly:在蓝图编辑器中不可修改但是可见,只有当蓝图实例化到场景中点击该组件才会出现相应的设置,实例化之后可以修改但只能在原型上进行

虚幻四种基本继承关系和组件的概念

重点∶以A开头的都是可以放置在场景中的,以U开头的都是组件只能依附于其他组件不能单独放置到场景中。

Actor和组件的关系∶

组件可以附件到Actor身上,但是不能独立出现在场景中。
Actor好比是人,组件好比是衣服,人可以出去逛街,衣服不行。

RootComponent的作用:
RootComponent: 每个Actor 都有一个默认的RootComponent;它用来存储物体的基础信息。它可以被改变。这是 AActor的一个成员,用于保存AActor组件树中的顶级组件。
Actor的作用:
在某种意义上,Actor可被视为包含特殊类型对象(称作组件)的容器。不同类型的组件可用于控制Actor移动的方式及其被渲染的方式,等等。

Actor的其他主要功能是在游戏进程中在网络上进行属性复制和函数调用。组件被创建时与其包含的Actor相关联。
 

组件介绍

UActorComponent的作用:
这是基础组件。其可作为Actor的一部分被包含。如果需要,其可进行Tick 。
ActorComponents与特定的Actor相关联,但不存在于场景中的任意特定位置。它们通常用于概念上的功能,如AI或解译玩家输入。
Actor Component ( UActorComponent类)有自己的行为,通常负责在许多类型Actor之间共享的功能,例如,提供视觉网格体、粒子效果、摄像机视角和物理互动。Actor通常提供与其游戏总体角色有关的高级目标,而Actor Component通常执行用于支持这些更高级目标的单独任务。
组件也可以与其他组件相连接,或者可以成为Actor的根组件。一个组件只能连接到一个父组件或Actor,但可以连接多个子Actor。您可以想象一个组件树。子组件的位置、旋转和缩放相对于其父组件或Actor。
Ticking-在所属Actor的Tick()过程中执行Tick函数。(在编写自己的 Tick函数时,必须确保调用Super::Tick)

USceneComponent :
SceneComponents是拥有变换的ActorComponents。变换是场景中的位置,由位置、旋转和缩放定义。

SceneComponents能以层级的方式相互附加。Actor的位置、旋转和缩放取自位于层级根部的SceneComponent。
UPrimitiveComponent :
PrimitiveComponent是拥有一类图像表达(如网格体或粒子系统)SceneComponent。许多物理和碰撞设置均在此处。
Actor支持拥有一个SceneComponent的层级。每个Actor也拥有一个RootComponent属性,将指定作为Actor根的组件。

Actor自身不含变换,因此不带位置、旋转,或缩放。它们依赖于其组件的变换,具体来说是其根组件的变换。

 

C++继承关系

 

 

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值