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

Unity技术问询:如何让可点击2D Canvas在3D世界中跟随NPC?

跟随3D NPC的可交互2D表情气泡设置方案(正交相机场景)

首选设置:世界空间模式Canvas

完全不用额外的Camera Overlay,直接用世界空间(World Space)模式的Canvas就搞定:

  • 把Canvas的Render Mode改成World Space
  • 把Canvas拖成NPC头部骨骼的子物体,这样气泡会自动跟着角色移动
  • 调整Canvas的缩放(比如设成0.1x0.1x0.1,因为世界空间模式用的是3D世界单位),把气泡摆到头部上方合适位置就行

保证点击交互能生效

正交相机下要让气泡能被点击,注意这几点:

  • 给Canvas加上Graphic Raycaster组件,这是UI交互的必备组件
  • 确保你的正交相机在EventSystem的射线源列表里(直接用场景主相机即可)
  • 如果有3D物体挡住气泡,要么给UI元素加Canvas Group并勾上Blocks Raycasts,要么调整层级让UI在最上层

备选方案:屏幕空间-相机模式

要是不想用世界空间模式,也可以选Screen Space - Camera:

  • 把Render Mode设为Screen Space - Camera,指定你的正交相机作为渲染相机
  • 写个简单脚本,把NPC头部的世界坐标转成屏幕坐标,然后把Canvas的RectTransform.position设成这个坐标
  • 这种模式下UI始终贴在屏幕平面,但需要脚本实时同步位置,适合不需要考虑3D遮挡的场景

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 20:02:41