android - 添加 localRotation 移动 ArCore 节点?
问题描述
这让我完全不解。我把这个节点放在场景中,但只要我添加“localRotation”,节点就会移动。如果我不移动它看起来很好(位于我期望的中心)。我是否必须初始化四元数以使其垂直于地板/姿势?
scene?.apply {
boundingBoxNode?.let { scene.removeChild(it) }
boundingBoxNode = null
viewModel.boundingBox?.let { box ->
MaterialFactory.makeTransparentWithColor(this@MyActivity, boundingBoxColor)
.thenAccept { material ->
boundingBoxNode = Node().apply {
renderable = ShapeFactory.makeCube(box.size, box.center, material).apply {
collisionShape = null
isShadowCaster = false
}
localRotation = box.rotation
scene.addChild(this)
}
}
}
解决方案
仅供参考,不要在 ShapeFactory.makeCube(box.size, box.center) 上设置中心。改为执行此操作 (ShapeFactory.makeCube(box.size, Vector3.zero()) 使其以原点为中心。然后您可以执行以下操作: worldPosition = box.center 来移动它。我正在旋转一个未居中的框:facepalm:
推荐阅读
- python-3.x - 使 os.system('cls') 更快
- kubernetes - 如何使用在不同命名空间中运行的应用程序 pod 配置 prometheus 以进行服务发现
- flutter - 当其子项是 PageView 时如何使 RefreshIndicator 工作
- laravel - 使用 nexmo 在 laravel 中将发件人名称从验证更改为我的公司名称
- python - 我如何使用已安装的 python 模块
- c++ - 控制 RGB LED 的开/关 - 比使用“if”更聪明的方法?(阿杜诺,C++)
- java - 如何让我的方法在另一种方法中搜索变量?
- javascript - 我想制作一个可以互换的滑块,而不是用 JQuery 移动
- python-3.x - Python:进行 6000 次 API 调用
- javascript - 检测 React 中组件树的任何部分何时发生更改