GITAAA

GPU动画Instancer-人群 | 附件

GPU动画Instancer-人群 | 附件

资源介绍

适用于Unity 6的GPU动画实例化器 渲染大规模人群,而非形成瓶颈。 Unity的Animator在300个字符时就会放弃。 这20,000运送了大约20个抽奖电话。 竞争的人群工具需要第二个 $75-$128包才能运行,或者强制您的项目进入ECS。这个不行。无需依赖,无需额外购买。 演示和文档 ──────────────────────────────────────────── 5分钟工作流程与精简资源 ──────────────────────────────────────────── 传统的面包师用千兆字节的生成网格来膨胀你的项目。 该系统将您烘焙的动画保存为引用主纹理图集的微小ScriptableObjects。 将您的操纵预制件拖到面包师窗口中,放入您的剪辑,然后单击Bake。输出高度优化的网格、纹理、材质和LOD。在确认提交之前,显存成本将被计算并显示。 ──────────────────────────────────────────── 附件:实例化对象或游戏对象 ──────────────────────────────────────────── 其他解决方案为您提供了10,000武器的10,000游戏对象。 在这里,您可以选择: • VATBoneMesh:在烘焙的骨骼上渲染武器。零游戏对象,零变换写入。所有相同的武器会合并为一个实例化批次。用单个bool将弓交换到刀片。 • VATAttachmentPoint: 一个真正的游戏对象,当你真正需要一个 (VFX,碰撞,灯),与智能距离节流,以节省CPU。 一个适合大量人群的廉价系统和英雄的灵活系统。 ──────────────────────────────────────────── 真实动画事件 ──────────────────────────────────────────── #1的原因开发人员避免顶点动画纹理是失去他们的回调。动画实例器支持C # 操作和SendMessage事件。 它们完美地包裹在循环上,即使单位在屏幕外也能准确开火。 屏幕外的战斗是通过智能交错滴答解决的。 ──────────────────────────────────────────── 零成本尸体和LOD ──────────────────────────────────────────── • 尸体不花钱: 一个有10,000具尸体的战场会让你的CPU消耗殆尽。调用Freeze() 将在其最后一帧上锁定一个即将死亡的单元。它完全停止CPU滴答,跳过事件检查,并可选地以较粗糙的LOD放置阴影或渲染。 • 自动LOD生成器: 您的模型有LODs?太好了,面包师自动创建了实例化的LODs,不需要进一步的设置 • 暂停和恢复 (混合LOD): 将一个单元交给一个真正的动画师,并在他们走开时将其收回。使用O(1),无分配的暂停状态,保留动画数据,而没有SetActive() 的大量开销。 ──────────────────────────────────────────── 视觉多样性和智能阴影 ──────────────────────────────────────────── • Texture2DArray Builder: 在数千个单位之间共享一种材料,以使绘制调用保持在绝对最小值,同时通过变体id分配独特的装甲和颜色。该软件包包括一个自定义的纹理数组生成器工具来设置这个无痛。 • 反锁步: 添加每单位速度抖动和随机开始阶段,以打破均匀行进。 • 阴影LOD偏移: 以较粗的LOD步长和特定距离渲染阴影。这是针对大规模人群场景所能实现的最大单次GPU资源节省。 ──────────────────────────────────────────── 引擎盖下 & 技术规格 ──────────────────────────────────────────── • 要求: 统一6.0和通用渲染管道 (URP)。 • 完整的源代码: 完整的C # 和HLSL包括,没有隐藏的dll。 • 突发作业: 转换读取,剔除 (平截头体 + 距离),LOD和动画滴答是大量多线程的。 • 带宽保护: 八面体法线 + 切线填充将带宽减半。在Half16 (无损) 或UNorm8 (只有4字节/顶点/帧) 之间进行选择。 ──────────────────────────────────────────── 这并不是什么(请阅读)──────────────────────────────────────────── 我希望您对您的购买感到满意。请注意: 没有运行时骨架: 没有IK、ragdolls、根运动或混合树。支持片段交叉淡入淡出。 无GPU遮挡剔除: 仅截锥 + 距离剔除。 ✗ 仅支持URP:不包含内置渲染管线,也不支持HDRP。 具有顶点 × 帧的内存比例 Baker窗口和资产生成: 一键式批量baker,具有自动LODGroup分辨率、帧速率控制和实时VRAM估计。输出微小的ScriptableObjects (VATCharacterData) 和纹理图集,而不是千兆字节的烘焙网格。 双附件管道: VATBoneMesh (GPU实例化,零游戏对象或变换写入) 和VATAttachmentPoint (基于变换的VFX/碰撞器)。 动画和事件功能: 平滑交叉渐变,播放速度控制,每单位随机速度抖动和归一化开始相位变化。通过C # 动作委托或SendMessage完全支持动画事件。 状态管理: 对于零CPU尸体具有Freeze() 功能,对于与Unity的标准动画师进行混合LOD交换的O(1) 无分配暂停状态。 着色器和渲染: 具有ForwardLit、ShadowCaster、DepthOnly和DepthNormals通道的自定义通用渲染管道 (URP) 照明着色器。支持Texture2DArray使用单个材质实现每个实例的视觉变化。远程LODs自动剥离PBR和法线贴图以节省GPU周期。 压缩与精度:八面体法线和切线打包可将纹理带宽降低50%。在视觉无损Half16 (8字节/顶点/帧) 或边界归一化UNorm8 (4字节/顶点/帧) 精度之间进行选择。 剔除,阴影和多线程: 使用Unity的Burst编译器和C # 作业系统进行转换读取,剔除和动画滴答,整个管道都是多线程的。包括球体/平截头体剔除、每台摄像机剔除、独立阴影LOD偏移和智能交错离屏更新。

GPU动画Instancer-人群 | 附件 2GPU动画Instancer-人群 | 附件 3GPU动画Instancer-人群 | 附件 4GPU动画Instancer-人群 | 附件 5GPU动画Instancer-人群 | 附件 6GPU动画Instancer-人群 | 附件 7GPU动画Instancer-人群 | 附件 8