收藏
回答

xr-frame,AR,Body模式下,根据识别的肢体位置,放置其他物体,位置不对?

我是这样做的,首先自动同步左手腕和cube,

<xr-ar-tracker id='tracker' mode="Body" auto-sync="9">
    <xr-mesh id='hand' name="hand" geometry="cube" scale="0.1 0.1 0.1" uniforms="u_baseColorFactor:0 1 0 1" />
    <xr-mesh
  node-id="cube" id='cube' scale='0.2 0.2 0.2'
  geometry="cube" uniforms="u_baseColorFactor:0.8 0.4 0.4 1"
/>
  </xr-ar-tracker>

然后在代码里获得这个位置:

this.hand = new (xrFrameSystem.Vector3)();
this.hand.set(el.getComponent(xrFrameSystem.Transform).worldPosition);

//把位置赋予另外一个物体
this.scene.getNodeById('cube').position.set(this.hand)

//结果位置不对,不是在手的位置。而是在中央位置附近。
//我也试了另外一种方式:
this.tracker.getPosition(9, this.hand, false);
this.scene.getNodeById('cube').position.set(this.hand)
//结果也是同样在中央位置附近。

//我做这个的目的是为了在手的附近某个位置显示物体。











































回答关注问题邀请回答
收藏

1 个回答

  • 瞬光寂暗
    瞬光寂暗
    2022-12-20

    用法完全是错的,你把一个世界空间坐标放到tracker子节点当然不行,而且有根本不需要这么用,仔细看明白文档再说吧。

    2022-12-20
    有用
    回复 3
    • 易名
      易名
      2022-12-20
      getposition时设置为true就可以了。这个问题已经搞定。BTW: 文档也没有说明啊
      2022-12-20
      回复
    • 瞬光寂暗
      瞬光寂暗
      2022-12-20回复易名
      下次看文档的时候仔细点。
      2022-12-20
      1
      回复
    • 阳光开朗大男孩
      阳光开朗大男孩
      03-01
      xr-frame 中我自己开发的AR 平面,点击之后无法纺织物体
      03-01
      回复
登录 后发表内容