当前位置: 首页 > article >正文

UE中C++创建对象方法不完全汇总

 一、创建UObject对象

        使用NewObject()模板方法来创建UObject对象。

OpObject = NewObject<UOperationObject>(); 

二、创建Actor对象及其派生对象

        使用World::SpawnActor接口,参考代码:

UWorld* World = GetWorld();  
FVector pos(88, 66, 68);  

CupActor* cup= World->SpawnActor<CupActor>(pos, FRotator::ZeroRotator);

三、创建组件

        为Actor创建组件,可以使用UObject::CreateDefaultSubobject()方法,这个方法只能在无参构造函数中调用。

//TEXT(“Belica”)中的名字不能重复!
MoveComponent = CreateDefaultSubobject<CharactorMoveComponent>(TEXT("Belica")); 

四、加载资源对象

项目中的所有资源文件应理解为序列化的对象。加载时使用“UObject::StaticLoadObject()”方法。

UStaticMesh* SM_GlassCup= Cast<UStaticMesh>(StaticLoadObject(UStaticMesh::StaticClass(),  
    NULL,  
    TEXT("/Game/Assets/StaticMeshes/SM_GlassCup"))  
    );  

StaticMeshComponent = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMeshComponent"));  
StaticMeshComponent->SetStaticMesh(SM_GlassCup);

http://www.kler.cn/a/157347.html

相关文章:

  • 即插即用篇 | YOLOv8 引入 代理注意力 AgentAttention
  • [SWPUCTF 2022 新生赛]Power! 反序列化详细题解
  • 【C++ 算法进阶】算法提升十三
  • 【go从零单排】Rate Limiting限流
  • Linux学习笔记之组管理和权限管理
  • linux,1.NFS和autofs,2.podman容器,3.http服务和虚拟web主机,4.内网DNS服务搭建
  • gitlab高级功能之CI/CD组件 - 实践(二)
  • Android Framework 电池提醒相关Dialog熄屏消失的问题
  • Redis实战篇笔记(最终篇)
  • Java核心知识点整理大全18-笔记
  • 简单的界面与数据分离的架构
  • TensorRT-LLM保姆级教程(二)-离线环境搭建、模型量化及推理
  • 十二月四日多继承
  • 2024 年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-C
  • 竞赛选题YOLOv7 目标检测网络解读
  • CSS实现瀑布流
  • MyBatis 设计模式解析
  • KaiwuDB 多模数据库-时序性能优化
  • 2023经典软件测试面试题
  • 面试题目总结(二)
  • 黑马一站制造数仓实战1
  • 【自用数据结构】—将链表中的奇数全部移动到偶数前面
  • 考研英语语法(四十)
  • <Linux>(极简关键、省时省力)《Linux操作系统原理分析之存储管理(2)》(15)
  • 高效学习 React 框架AntDesign Pro
  • 玩转大数据5:构建可扩展的大数据架构