UE基础 —— Components

(UE4 4.27) UHierarchicalInstancedStaticMesh(HISM)原理分析 UE4 UHierarchicalInstancedStaticMesh剔除原理分析UE4 UHierarchicalInstancedStaticMesh剔除原理分析UE4 UHierarchicalInstancedStaticMesh剔除原理分析 阅读详情

目录

Component Instancing

Instanced Static Mesh Component

Instanced Static Mesh

Differences of an ISM and a Static Mesh Component

Hierarchical Instanced Static Mesh

Instancing Systems

Working with ISMs

Prefabrication

Custom Data

Creating and Editing ISMs


        组件(Component)是可以添加给Actor的一项功能;当为Actor添加组件后,Actor就可以使用组件提供的功能;如:

  • "聚光源(Spot Light)组件"将使Actor像聚光源一样发光;
  • "旋转运动(Rotating Movement)组件"将使Actor旋转;
  • "音频(Audio)组件"将使Actor能够播放声音;

与Actor不同,组件不能单独存在,只能绑定在Actor身上;

        为Actor添加组件的过程,相当于为Actor添加各个零件;例如,一辆汽车(Actor)由车轮、方向盘、车身、车灯等(组件)组成;再例如,玩家角色Actor通常包含一个单独的"骨骼网格体(Skeletal Mesh)"组件(表示角色外观)、跟随角色移动的摄像机,以及接收玩家输入的控制器;

        添加完构成Actor的不同组件后,即使不提供指示Actor应如何运行的任何 蓝图(Blueprint)脚本(或C++代码),也可以将Actor放置在关卡中;在上面的示例中,汽车(Actor)可以作为对象存在于世界(关卡)中,无需任何驱动程序(蓝图或C++代码)告诉它要执行什么操作;然后,可以使用蓝图或C++代码单独访问汽车的每个组件(例如,如果按下油门组件,蓝图逻辑可以使汽车加速);

Component Instancing

        与一般子对象的默认行为不同,Actor中充当子对象的各种组件都是实例化的,所有某个类的Actor实例都有着单独的组件实例;

        为了理解这点,想象一下上面的汽车示例;一个"汽车(Car)"类使用组件来表示汽车的车轮;四个"车轮(Wheel)"组件是该类的默认属性中的四个子对象,并指定给了"车轮(Wheels)"数组。当创建新的汽车实例时,会专门为该汽车实例新建"车轮(Wheel)"组件实例;否则,当世界中一辆汽车移动时,所有汽车的车轮都会转动;这显然不是预期的行为;让组件默认进行实例化,免去了为Actor添加唯一子对象的麻烦;

Instanced Static Mesh Component

        Actors的数量会影响性能,可以将相同的网格体打组到一个actor中作为实例化静态网格(ISM)组件,而不是在关卡中重复使用静态网格体actor;

ue4 unreal Instanced Static Mesh Component 实例化静态网格体组件 的用法及意义 注意这是个组件 ​​ 这个组件的意义 本来在建模软件里面就有这个功能 用来应对大量,同样网格,同样材质,不同几何信息(位置 旋转 缩放)的网格 比如场景里面的垃圾桶 电线杆 路灯等几百上千的东西 我试过一两万挺轻松的... 比较骚的操作是可以更新几何信息,比如会上下乱动,随便缩放等这种,不过同样的,总数就会下降(保证不卡的情况下) ----------------------------------------------------------------------------... 阅读详情

相关推荐

【UE4】Hierarchical Instanced Static Mesh——一种速度优于Spawn的实例化物体组件

最近需要在场景中实例出很多个相同的模型,位置也很有规律,并且要对它的位置信息进行更新。 但是一个个拖进去实在太麻烦,就发现了Spawn Actor这个蓝图方法,可以实例一个蓝图类在场景中。 但是由于数量较大,实例化的速度太慢,这时发现了一个神奇的组件——Hierarchical Instanced Static Mesh。 新建一个蓝图类,添加该组件,在细节里添加你要实例化的模型对象。 ...

ColorGalaxy 1万+

【UE5 C++基础 09】组件(Component)基础

在前面的内容我们已经学习过MovementComponent 它是可以被Character管理的类 包含了基础的角色移动、跳跃、飞行、蹲伏等行为。在前面的内容,我们把MovementComponent作为输入,传递给动画蓝图,动画蓝图再经过动画状态机,将骨骼网格体姿态传递给Character展示。组件是一种 对象(Object),可用作 Actor 中的子对象。组件具有通用性,可以让不同类实现相同行为,例如显示视觉效果、播放声音、处理行为逻辑。你可以创建三种组件:Actor组件、场景组件 和 图元组件。A

关宅 4231

UE5.1 DynamicMesh避坑指南:从蓝图创建到运行时生成的完整流程

本文深入解析UE5.1中DynamicMesh的应用,从蓝图构建到运行时优化的全流程解决方案。详细对比DynamicMeshActor与GeneratedDynamicMeshActor的核心差异,提供插件配置、网格生成技巧及性能优化策略,帮助开发者规避常见问题,实现高效程序化内容生成。

o1p2q3r的博客 163

UE5 Lyra Game Feature插件系统:实现玩法热更新的核心架构与实战

在游戏开发中,模块化与热更新是支撑长期运营项目的关键技术。其核心原理在于将功能解耦为独立单元,通过动态加载机制实现运行时更新,从而避免传统整包更新带来的用户流失与效率低下。这一技术价值在于极大提升了内容迭代的灵活性与开发效率,尤其适用于需要频繁推出新角色、新模式的多人在线游戏。在应用场景上,它常用于技能系统、UI模块、游戏模式的动态扩展。本文以UE5的Lyra示例项目为切入点,深入解析其Game Feature插件系统如何通过异步加载、状态机管理与Asset Manager的深度集成,构建了一套可靠的玩法热

weixin_34050519的博客 406

6小时掌握虚幻引擎C++开发:从语法基础到实战应用

C++作为高性能系统级编程语言,其核心语法与面向对象特性是理解现代游戏引擎架构的基础。通过指针、引用、模板等机制,开发者能够实现精细的内存控制与高效算法,这在游戏开发中尤为重要。掌握C++不仅能够深入理解引擎底层原理,如虚幻引擎的UObject系统和反射机制,还能为性能优化和复杂逻辑实现提供技术支撑。在虚幻引擎开发中,C++与蓝图可视化编程形成互补,C++负责核心系统与高性能模块,而蓝图则用于快速原型与逻辑组装。本文聚焦于C++基础语法与虚幻引擎特有关键概念,通过变量、函数、类与对象等核心知识点的讲解,结合

weixin_34354945的博客 437

6小时掌握虚幻引擎C++开发核心语法:从零到实战

C++作为一门高性能的编译型语言,以其对硬件资源的直接控制力和卓越的运行效率,成为游戏引擎开发的核心选择。其静态类型系统和面向对象特性,为构建复杂、高性能的游戏系统提供了坚实基础。在游戏开发领域,C++的价值尤为凸显,它能够满足实时渲染、物理模拟等计算密集型任务对性能的极致要求。虚幻引擎(Unreal Engine)正是基于C++构建,通过UCLASS、UPROPERTY等宏扩展,形成了强大的反射和序列化生态,使得开发者能够深入引擎核心进行开发。本文聚焦于**虚幻引擎C++开发**,针对有一定编程基础但畏惧

weixin_34054931的博客 405

虚幻引擎编辑器界面与核心操作全解析:从零上手UE开发

游戏开发引擎是现代数字内容创作的核心工具,它通过集成化的编辑环境将代码逻辑、美术资源与交互设计融为一体。其工作原理在于提供一个可视化的“沙盒”,开发者可以在此进行场景搭建、逻辑编排与实时预览。掌握引擎编辑器的核心界面与操作,是释放其技术价值、实现高效开发流程的基础,对于构建从独立游戏到3A大作的各类项目都至关重要。本文聚焦于虚幻引擎(Unreal Engine)这一行业标杆,深入剖析其编辑器“驾驶舱”的布局逻辑与核心工作流。通过系统讲解内容浏览器、视口、世界大纲视图、细节面板等核心模块的功能与联动,并结合蓝

weixin_30920853的博客 416

UE4SS与LUA脚本注入:从零开始制作虚幻引擎游戏Mod

游戏模组(Mod)是扩展和定制游戏体验的核心技术,它允许玩家和开发者超越游戏原始设计,实现从界面美化到玩法重塑的深度修改。其原理通常涉及对游戏运行时内存和逻辑层面的访问与干预,这为创造个性化游戏内容提供了技术基础。在虚幻引擎(UE4/UE5)生态中,这一技术价值通过特定的工具链得以高效实现,广泛应用于《赛博朋克2077》、《艾尔登法环》等热门游戏的模组开发。应用场景包括修改角色属性、添加新功能、实时调试乃至修复游戏问题。本文聚焦于实现这一过程的核心工具链——UE4SS及其灵魂LUA脚本注入,详细解析如何通过

weixin_34174422的博客 414

UE4 运行流程源码浅析(3——从Start到BeginPlay)

本文章只是我个人在学习虚幻引擎过程中的一些理解,不一定正确,若有说的不对的地方,欢迎指正。前面我们介绍了引擎的执行流程和各个阶段(预初始化、初始化、循环、退出)函数调用的情况,但我们好像还没看见我们熟悉的是在哪里被调用的。其实所有的源头就是我们上一篇没有进一步介绍的函数,本篇会从Start函数出发详细介绍这其中的调用过程。

m0_53295313的博客 3128

虚幻引擎C++入门实战:从环境配置到核心代码编写

C++作为高性能系统编程语言,其核心价值在于提供对内存和硬件的底层控制能力,是实现复杂算法与性能优化的关键技术。在游戏开发领域,这种控制力与实时渲染、物理模拟等需求高度契合。虚幻引擎作为行业领先的实时3D创作平台,其强大的可视化编辑能力与C++的高性能底层控制相结合,构成了现代AAA级游戏与高品质独立游戏开发的技术基石。通过UCLASS、UPROPERTY等反射宏系统,开发者能在C++中构建游戏框架核心逻辑,并无缝暴露给蓝图进行快速迭代与内容创作,实现了工程效率与运行性能的平衡。本文以创建可交互的C++组件

weixin_34221773的博客 413

Unreal教学(9)——虚幻引擎名词解释(Unreal Engine 4 Terminology)

前面的例子中已经基本上介绍了虚幻引擎怎么写代码,怎么画蓝图,并且实现了几个简单的例子,比如移动一个Actor,用户的输入输出时间,通过鼠标按键等操作控制物体。也进行了粒子系统的简介,还有其它的变量之类的其它的东西。 写到现在还有一些名词我们是比较模糊的,那么现在就简要地总结一些这些名词。比如,你会问问题,什么是Actor,什么是Component, 什么是Pawn,现在我也是比较困惑。这篇文章会

wangrl的博客 2118

STM32duino LSM6DSO驱动库:低功耗IMU工程化实践

惯性测量单元(IMU)是智能终端与工业设备实现运动感知的核心传感器,其性能关键在于数据精度、实时响应与系统功耗的协同优化。LSM6DSO作为集成加速度计与陀螺仪的六轴MEMS器件,依托片上有限状态机(FSM)和机器学习核心(MLC),支持自由落体检测、计步器、6D方向识别等硬件自治功能,显著降低主控CPU负载。在STM32平台下,通过深度耦合HAL/LL库、显式引脚管理、DMA加速SPI传输及EXTI中断协同,可实现亚毫秒级事件响应与微安级待机功耗。本文聚焦STM32duino生态中LSM6DSO驱动的工程

weixin_36304957的博客 551

告别PS串口焦虑:深入解析AXI Uartlite IP核如何将ZYNQ PL任意引脚变成串口(从Vivado约束到驱动文件全解析)

本文深入解析AXI Uartlite IP核如何将ZYNQ PL任意引脚变成串口,从Vivado约束到驱动文件全解析。通过AXI Uartlite IP核,开发者可以突破PS端UART数量限制,实现高效串口通信。文章详细介绍了IP核架构、Vivado工程配置、驱动开发及调试技巧,帮助开发者快速掌握这一技术。

weixin_33736649的博客 467

全自动数据分析 - Claude Code Sub-Agents:自动化数据分析工厂

别忘了!claude code也是agent框架,类似langgraph,crewAI,autogen等等agent框架。我改造claude code搞一个数据分析智能体AI。试试看行不行!:让数据分析变得像聊天一样简单!

liangdabiao的博客 1072

vivado实现SDI接口

XAPP1249,用来介绍UHD_SDI的实现。

Huskar_Liu的博客 7076

Fat-Tree Topo Architecture(胖树拓扑结构)

背景 最近在搜索关于Fat-Tree的相关资料时,发现网上内容比较少,很多博客是相互转载的,拓扑结构图也加载不出来,使得对Fat-Tree的理解过于抽象。 实践 传统数据中心采用多层级的树形结构,这种结构针对客户端/服务器(C/S)模式能有较好的效果。树形结构包括单根树和多根树。多根数的根节点往往作为备份节点存在(我们以方格代表交换机)。 传统单根/多根拓扑结构有以下缺点:成本高,根部交换机必须要有足够大的带宽来满足下层服务器之间的通信;性能瓶颈,无法满足数据中心内部大规模的MapReduce和数据拷贝。

金色牛神的专栏 3万+

天龙八部TLBB系列 - 网单服务端各目录文件说明【超详细】

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等) --- 天龙八部服务端各目录详细说明

空名先生 7628

代码复现3—VLN-CE

运行训练完后在 data文件下会自动生成一个“checkpoints”文件,文件下包含任务文件“seq2seq”,该文件下会包括训练出来的权重和评估结果。数据集下载完后路径提取:data/scene_datasets/mp3d/{scene}/{scene}.glb。注意这里下载的数据集并不是所有的matterport3d,只需要一部分,包含90个场景,大小压缩后约16G。在“eval”时,会在data文件下生成videos文件,里面存放的是可视化的轨迹视频。

qq_44100524的博客 3201

56、Cortex - M33处理器浮点单元(FPU)的使用与优化

本文详细介绍了Cortex-M33处理器浮点单元(FPU)的使用与优化方法,涵盖单双精度浮点计算的选择、编译器命令行配置、ABI模式对比、特殊FPU模式设置(如Flush-to-Zero、Default NaN)、浮点异常处理机制以及FPU电源管理策略。结合代码示例和流程图,提供了在不同应用场景下的最佳实践建议,并总结了常见问题及解决方案,帮助开发者提升嵌入式系统中浮点运算的性能、精度与能效。

bread的博客 154

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

上一篇: XGen —— 导入Hou
下一篇: UE基础 —— Playing and Simulating
挨代码
博客等级 码龄5年 1696粉丝 384原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值