概述:
Procedural Instance Spawner 是一款用于在运行时或编辑器中通过程序化生成静态网格体实例来丰富游戏环境的插件。它利用后台线程来最小化性能影响,并具有完全确定性。其智能碰撞系统仅在需要时生成碰撞,确保在大型复杂世界中也能保持流畅的游戏体验。插件包含用于在运行时移除生成实例的蓝图函数,并支持通过蓝图向实例写入和读取任意数据,其中浮点变量可作为“每实例自定义数据”直接在材质中访问。
特点:
· 运行时生成:可在游戏运行时动态生成实例。
· 后台线程处理:利用后台线程,减少对主线程性能的影响。
· 分层同步:支持构建复杂的世界场景。
· 高度优化的碰撞生成:智能碰撞系统确保在大型、细节丰富的世界中保持流畅性能。
· 支持大世界坐标。
· 支持在行星表面生成。
· 精确的碰撞和邻近度检测。
· 丰富的生成过滤条件:可按生成对象类型、下方对象类型、阻挡生成对象类型进行过滤;可围绕活动摄像机、世界位置或指定Actor为中心生成;提供旋转、缩放、高度偏移等高级设置;过滤设置包括高度区间、坡度区间、碰撞检查、球体追踪、对象邻近度、边缘检测、样条检测、集群过滤以及按表面类型/地形层过滤。
· 数据读写功能:支持通过蓝图使用用户自定义结构体向实例写入和读取任意数据,浮点变量可作为“每实例自定义数据”在材质中直接访问。
· 预设与微调:提供预设以便快速上手,同时允许精细调整。
· 可扩展性:预留了添加自定义生成点过滤和/或查找生成点功能的接口。
· 包含多种蓝图函数:如重新生成、移除已生成实例、重置移除、设置碰撞模式、按通道进行线追踪生成器、获取重叠实例、获取/设置/重置实例自定义数据、移除实例、移除重叠实例、在位置恢复已移除实例、获取生成器数据、从数据结构加载实例、更新样条数据、添加样条数据等。
· 附加组件:包括用于在球形世界生成的“行星中心标记”Actor,以及用于跟踪Actor和更新碰撞的“生成器碰撞调用器”组件和“生成器抛射体碰撞”场景组件。
