找回密码
 立即注册
查看: 296|回复: 0

unreal-c++教程-第三章:用c++在场景中创建一个Cube与UWorld

[复制链接]
发表于 2023-4-8 22:53 | 显示全部楼层 |阅读模式
用c++在场景中创建一个Cube

    1.UStaticMeshComponent2.Details面板上赋值3. UWorld
      3.1 获取UWorld3.2 UWorld里面重要函数与变量
        3.2.1 获取玩家控制器PlayerController




1.UStaticMeshComponent
  1. 显示网格的基本组件,称为UStaticComponent,用起来也比较简单
复制代码

当然,为了绘制出Cube,我们需要设置其StaticMesh
函数原型见:


我们需要传递的参数是UStaticMesh* 类型的参数,而事实上,加载对应资源可以通过以下方式:
  1.         this->SetRootComponent(CreateDefaultSubobject<USceneComponent>(TEXT("RootScene")));auto MeshAsset = ConstructorHelpers::FObjectFinder<UStaticMesh>(TEXT("/Game/Geometry/Meshes/1M_Cube"));auto XMesh = CreateAbstractDefaultSubobject<UStaticMeshComponent>(TEXT("XMesh"));
  2.         XMesh->SetStaticMesh(MeshAsset.Object);
  3.         XMesh->SetupAttachment(this->RootComponent);
复制代码
值得注意的是,这里有个问题,就是,当我们向场景里面添加c++ Actor时,旧Actor并不会随着c++代码的热更而发生热更,我们需要注意这一点。

2.Details面板上赋值

有时候,我们会希望直接通过在Details面板上处理c++Actor的资源问题,然后交给策划,让它自己玩(咳咳)
方法也很简单,我们在声明.h文件时,加入宏


这样,当UHT(Unreal Head Tool)会检索整个头文件,并反射到Details面板,



3. UWorld
  1. 所有的Actor都将依托于UWorld建立,
复制代码
3.1 获取UWorld

方法很简单,所有的Actor都可以获得当前对象所处的UWorld



3.2 UWorld里面重要函数与变量

3.2.1 获取玩家控制器PlayerController


这个东西是一个非常重要的一个Actor

相关讨论我们放在第四章里面。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-23 12:16 , Processed in 0.090462 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表