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

Unreal Engine USceneComponent

Unreal

  • 🏛 Unreal Engine - USceneComponent
    • 📚 定义
    • 🏷 类继承
    • ⚡ 关键特性
    • ⚙️ 常见配置
    • 🛠️ 使用方法
      • 🔗 创建与挂载
      • 🔄 获取与修改 Transform
      • 🧩 附加/分离组件
    • 🏊 典型应用场景
    • 🤖 与其他组件对比
    • 📝 小结

🏛 Unreal Engine - USceneComponent

📚 定义

USceneComponent所有具有空间变换(位置、旋转、缩放)的组件基类

它为 组件的三维空间定位与层级管理 提供支持,是 场景树系统的核心

在 Unreal 中,任何需要在 3D 世界中拥有 Transform(位置、旋转、缩放) 的组件,通常都会继承自 USceneComponent


🏷 类继承

UObject└── UActorComponent└── USceneComponent
  • UObject → 最底层对象系统
  • UActorComponent → 提供生命周期与逻辑管理
  • USceneComponent → 增加 Transform 与层级关系
  • 常见子类包括:UPrimitiveComponentUCameraComponentUMeshComponent

⚡ 关键特性

  • Transform 支持LocationRotationScale
  • 层级系统:Parent / Child 关系(SceneComponent 可以附加到另一个 SceneComponent)
  • Attach/Detach 支持:可在运行时改变组件层级
  • Socket/Attachment Rules:支持相对/绝对变换的挂载规则
  • 更新与传播:变换可自动传递给子组件
  • 物理与渲染的基础:许多渲染和物理组件都继承自 USceneComponent

⚙️ 常见配置

  • RelativeLocation / RelativeRotation / RelativeScale3D → 相对父组件的变换
  • WorldLocation / WorldRotation / WorldScale → 世界空间下的变换
  • AttachParent → 指定父级 SceneComponent
  • AttachChildren → 当前组件的子组件列表
  • Mobility → 移动性设置
    • Static:不可移动
    • Stationary:部分可变(如灯光强度)
    • Movable:完全可移动

🛠️ 使用方法

🔗 创建与挂载

// 在 Actor 构造函数中
RootComponent = CreateDefaultSubobject<USceneComponent>(TEXT("RootComp"));USceneComponent* ChildComp = CreateDefaultSubobject<USceneComponent>(TEXT("ChildComp"));
ChildComp->SetupAttachment(RootComponent);

🔄 获取与修改 Transform

FVector Location = GetActorLocation();
SetWorldLocation(FVector(100, 0, 50));FRotator Rot = GetComponentRotation();
AddLocalRotation(FRotator(0, 90, 0));

🧩 附加/分离组件

ChildComp->AttachToComponent(RootComponent, FAttachmentTransformRules::KeepRelativeTransform);
ChildComp->DetachFromComponent(FDetachmentTransformRules::KeepWorldTransform);

🏊 典型应用场景

  • 🎮 构建 Actor 层级结构:例如角色的 根组件 → 骨骼网格体 → 武器挂点
  • 🏗 蓝图节点系统:场景中的各种可视化节点都继承 USceneComponent
  • 📸 相机/灯光组件:常见的相机、聚光灯、点光源都是 USceneComponent 的子类
  • ⚙️ 挂载机制:例如武器附着到角色手上

🤖 与其他组件对比

  • UActorComponent
    • 只提供逻辑功能,无 Transform
  • USceneComponent
    • 增加空间变换与层级支持
  • UPrimitiveComponent
    • 继承自 USceneComponent,并增加 渲染 & 碰撞 能力
  • UMeshComponent
    • 专门用于渲染网格

📝 小结

  • USceneComponent场景层级与空间变换的核心基类
  • 提供 Transform(位置、旋转、缩放)管理,并支持 父子层级关系
  • 是许多常用组件(Mesh、Camera、Light)的基础。
  • 在构建复杂 Actor 组件树挂载系统 时必不可少。

http://www.dtcms.com/a/345017.html

相关文章:

  • 如何实现二维CAD与3D建模工程图关联一体化出图 | 中望3D 2026新亮点
  • android sdk 虚拟机是否可以通过命令行打开?
  • 数字逻辑与数字系统设计之电梯控制器设计
  • 防爆连接器在防爆箱上的作用
  • shell脚本第二阶段-----选择结构
  • Unreal Engine IWYU Include What You Use
  • DLT645仪表通信,串口助手调试读写地址
  • 【C#】观察者模式 + UI 线程调度、委托讲解
  • vuex如何在js文件中使用
  • NVIDIA GB200 架构详解及与 B200/H200/H100 的区别
  • 【芯芯相印】芯片设计生产全流程核心技术术语与实践指南:从架构定义到量产交付的完整图谱
  • NLP学习之Transformer(2)
  • 数据预处理学习笔记
  • Thunderbird 将推出在德国托管的加密电子邮件服务
  • Android Jetpack | Hilt
  • 快速了解深度学习
  • 数学建模--Topsis(Python)
  • 学习python第12天
  • 第5.3节:awk数据类型
  • gcc 和 make 命令
  • 机试备考笔记 17/31
  • 打工人日报20250822
  • Redis 部署模式深度对比与选型指南
  • 计算机毕设大数据方向:电信客户流失数据分析系统技术实现详解
  • ​如何用 Windows 10 ISO 文件重装系统?U盘安装教程(附安装包下载)
  • Kubernetes 调度器 详解
  • 加密货币与区块链:六大刑事重灾区
  • Vue3源码reactivity响应式篇之Reactive
  • 阿里云日志服务与Splunk集成方案(Splunk Add-on方式)实战
  • GitGithub相关(自用,持续更新update 8/23)