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

Unity SFPSC抓钩脚本问题:如何配置自定义对象为可抓取

抓钩可抓取对象的判定规则
  • 必备基础条件:对象必须挂载已启用的非触发模式碰撞体(Collider组件的Is Trigger选项为未勾选状态),物理射线仅能检测到带有有效碰撞体的对象
  • 核心筛选规则:对象所属的Layer层,包含在SFPSC_GrapplingHook组件暴露的layerMask参数勾选范围内,源码中抓钩的两次射线检测均以此参数作为可抓取对象的筛选依据。
自定义对象配置为可抓取的操作步骤
  1. 给自定义对象添加有效碰撞体
    在目标对象的Inspector面板点击Add Component,添加匹配对象形状的碰撞体组件(规则物体可选Box、Sphere、Capsule Collider,不规则模型可使用Mesh Collider,移动物体如需网格碰撞体需勾选Convex选项),确保碰撞体Enabled为勾选状态、Is Trigger为未勾选状态。
  2. 配置对象所属Layer层
    点击Inspector面板顶部的Layer下拉菜单:
  • 复用现有层级:直接选择演示场景内可抓取对象使用的层级即可
  • 新建专属层级:点击Add Layer,在空置的层级位输入自定义名称(例如Grappable),返回对象面板后选中该新建层级
  1. 同步抓钩组件的LayerMask配置
    找到挂载SFPSC_GrapplingHook组件的玩家对象,在Inspector面板找到该组件Properties分组下的Layer Mask参数,勾选上一步给自定义对象设置的层级即可生效。
配置后仍无法抓取的排查方向
  • 确认抓钩与目标对象之间没有其他碰撞体遮挡,源码的第二次无层级限制射线会过滤掉被遮挡的可抓取对象
  • 确认目标对象与玩家的距离小于组件设置的maxGrappleDistance参数值(默认100单位)
  • 确认目标对象的碰撞体没有被其他脚本动态禁用

内容的提问来源于stack exchange,提问作者Pena Plays

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 06:54:01