当前位置: 首页 > 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.xdnf.cn/news/1348705.html

相关文章:

  • Unreal Engine Simulate Physics
  • 线段树01
  • 20250822 组题总结
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘uvicorn’问题
  • 北京-测试-入职甲方金融-上班第三天
  • 嵌入式第三十五天(网络编程(UDP))
  • GPS欺骗式干扰的产生
  • DSPy框架:从提示工程到声明式编程的革命性转变
  • 声网SDK更新,多场景抗弱网稳定性大幅增强
  • GaussDB GaussDB 数据库架构师修炼(十八)SQL引擎(1)-SQL执行流程
  • week3-[二维数组]小方块
  • ArrayList线程不安全问题及解决方案详解
  • 硬件驱动---linux内核驱动 启动
  • 云原生俱乐部-k8s知识点归纳(7)
  • RCE的CTF题目环境和做题复现第4集
  • Unreal Engine UActorComponent
  • base64认识实际使用
  • #Datawhale 组队学习#8月-工作流自动化n8n入门-2
  • LLM实践系列:利用LLM重构数据科学流程01
  • 简单聊聊多模态大语言模型MLLM
  • LeetCode100 -- Day4
  • RCE的CTF题目环境和做题复现第3集
  • RoboTwin--CVPR2025--港大--2025.4.17--开源
  • 大模型微调训练资源占用查询:Windows 10 查看 NVIDIA 显卡GPU状态教程(替代 Ubuntu 下 watch nvidia-smi)
  • Python精确小数计算完全指南:从基础到金融工程实践
  • 二、高可用架构(Nginx + Keepalived + MySQL 主从)
  • StarRocks启动失败——修复全流程
  • AI生成技术报告:GaussDB与openGauss的HTAP功能全面对比
  • 【COMSOL】Comsol学习案例时的心得记录分享(三)
  • 期货Level2五档订单簿0.25秒级高频分时及日频历史行情数据使用指南