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

如何在ARcore的OpenGL项目中添加Transformable Node实现可旋转锚点

ARCore项目Sceneform兼容性与锚点实现方案

教程项目使用Sceneform的适配方案

Sceneform已停止官方维护,目前新版ARCore官方教程默认没有做Sceneform相关适配,你遇到的TransformableNode无法正常运行的问题,本质是版本不兼容导致的。
如果你仍要在该项目中使用Sceneform,需要完成如下适配修改:

  • 将项目的ARCore SDK版本回退到1.15.0及以下,同时调整compileSdk、minSdk到对应匹配版本(minSdk最低要求为API 24)
  • 在build.gradle配置中完整引入Sceneform相关依赖:com.google.ar.sceneform:core、com.google.ar.sceneform.ux:sceneform-ux,同时排除现有ARCore相关依赖的冲突
  • 修改原有锚点绑定逻辑:先通过ARCore Session创建所需的普通锚点/云锚点,将TransformableNode绑定到对应锚点的AnchorNode上,再给TransformableNode添加旋转监听,实时计算目标锚点的世界坐标与当前节点的相对角度,更新节点旋转参数即可实现指向效果。

无需Sceneform的替代实现方案

如果不想调整项目版本做适配,可以直接用ARCore原生能力实现需求:

  • 直接调用Anchor相关原生API创建指定位置的锚点
  • 自己实现手势监听逻辑,通过触摸事件计算旋转角度,直接更新对应3D模型的模型矩阵旋转参数即可实现可旋转、指向指定位置的效果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 04:09:02