You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

行人库PedService无ResourcePool选项,如何兼顾资源池与吸引子?

解决方案:结合ResourcePool与Pedestrian Library实现服务时站定吸引子

核心思路

Process Library的Service节点和Pedestrian Library的行人定位逻辑不兼容,会导致行人忽略吸引子随机站立。正确的做法是用Pedestrian库自带的ServicePoint配合ResourcePool来实现需求。

具体步骤

  • 配置ResourcePool:拖拽ResourcePool到画布,设置工作人员的数量、Agent类型(如果是自定义工作人员Agent,需提前创建)、资源分配规则等参数。
  • 设置ServicePoint(Pedestrian库节点):
    1. 拖拽ServicePoint到场景,关联对应的吸引子(Attractor),确保行人到达后会自动站在吸引子标记的位置。
    2. 在ServicePoint的On enter事件中,添加代码占用工作人员:
      // 从资源池获取工作人员,可根据需求设置等待逻辑
      Worker worker = resourcePool.get();
      // 可选:将工作人员与当前行人绑定,方便后续释放
      agent.worker = worker;
      
    3. 在ServicePoint的On exit事件中,添加代码释放工作人员:
      // 释放绑定的工作人员回资源池
      resourcePool.release(agent.worker);
      agent.worker = null;
      
  • 控制服务时长:在ServicePoint的Service time属性中直接设置固定时长,或者通过自定义逻辑(比如延迟事件)控制服务结束时机,结束时调用servicePoint.release(pedestrianAgent)即可。
  • 可选:工作人员互动逻辑(如果需要):如果要求工作人员移动到行人位置服务,可在On enter事件中添加worker.moveTo(agent.getPosition()),服务完成后让工作人员返回初始位置。

注意事项

  • 确保ServicePoint的Pedestrian destination已正确指向目标吸引子,避免行人到达后无定位点。
  • 若工作人员也是Pedestrian类型,需给他们设置独立的初始位置和移动规则,避免干扰主行人流的路径规划。

内容的提问来源于stack exchange,提问作者Aqeel Tariq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 16:39:21