问题标签 [arscnview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
614 浏览

ios - 在 ARSCNView (Swift) 中获取 CGPoint 的世界坐标

问题

我希望以下函数返回由轻按手势处理的点的世界坐标。我已经正确地实现了它(使用一些在线资源)来处理框架的中心点,但是我无法在屏幕上移动这个点。


试图

这是 的完整注释和工作代码getScreenCoordinates,它返回一个元组,其中包含 (0) 屏幕坐标的方向向量和 (1) 屏幕坐标的位置向量。screenCoord问题是通过参数传入的中心以外的点进行这项工作。


所需的解决方案

提供一个修改后的getScreenCoordinates函数,该函数返回相同的数据类型,但它不是获取相机框架中心点的世界坐标,而是获取screenCoord.

0 投票
0 回答
247 浏览

ios - 在渲染器内部调用 SCNView 快照函数(_:didRenderScene:atTime:) 在几帧后失败

几帧后调用SCNViewfrom inside of的快照函数失败。renderer(_:didRenderScene:atTime:)

在里面放一个断点renderer(_:didRenderScene:atTime:)表明代码执行了几帧然后停止。

1) 是snapshot不是太重而不能在里面打电话renderer(_:didRenderScene:atTime:)

2)目标是将更改变为SCNView视频。其他问题类似,但这些解决方案都没有奏效。还有另一种方法可以将视频渲染SCNScene成视频吗?

0 投票
1 回答
311 浏览

ios - ARKit:删除 ARSCNView 显示静态摄像头馈送,而不是最顶部的 SCNView

我们的应用默认显示一个 SCNView,但允许用户进入 AR 模式,我们在 SCNView 顶部显示一个 ARSCNView。

显示 ARSCNView 的工作原理:出现相机和虚拟对象。

退出 AR 模式是失败的。

屏幕上没有显示 ARSCNView 下方的 SCNView,而是在移除 ARSCNView 之前保留了相机馈送的静态图像。

“退出” AR 模式并删除 ARSCNView 的正确方法是什么?

0 投票
1 回答
617 浏览

ios - 使用 Arkit 将 3D 对象缩放到相同大小并将它们放置在距离 iphone/ipad 相机正好 1m 的位置

在此处输入图像描述我需要将一组 3D 对象缩放到相同大小,并将它们放置在距 iPad 1m 的距离处。我在 ARSCNView 上方的屏幕上有一个透明图像,我试图将 3d 对象完全重叠在透明图像后面,并且大小也应该匹配。非常感谢任何链接或建议。先感谢您。

0 投票
1 回答
952 浏览

swift - 在 Touch Location 处将对象放置在相机前面

以下代码将节点放置在相机前面,但始终位于距离相机位置 10 厘米的中心。我想将节点放置在距离 z 方向 10cm 处,但在我触摸屏幕的 x 和 y 坐标处。所以触摸屏幕的不同部分应该会导致一个节点被放置在相机前面 10cm 处,但在触摸的 x 和 y 位置,而不是总是在中心。

服务.swift

结果应该看起来像这样:https ://justaline.withgoogle.com

0 投票
1 回答
1526 浏览

ios - 检查 ARSession 是否正在运行(ARKit)

我有一个 ARSCNView 可以session根据情况偶尔暂停它。有没有办法检查它session是否正在运行?

像这样的东西:

0 投票
1 回答
1501 浏览

swift - 获取放置的 SCNNode 的世界 x、y 和 z - Swift

我的目标是在另一个包含 SCNPlane 的 SCNNode 中间生成一个 SCNNode。

SCNPlane 在渲染器函数中生成,如下所示:

我试图将球体放在平面的中间:

但问题是,每当我运行它时,x、y、z 最终都为零。我已经尝试过类似sceneView.scene.rootNode.childNodes[3].worldPositionnode.worldPosition但总是在相机视图中而不是在平面中间生成球体。

我在这里附上了一张图片,向您展示我所说的“中间”是什么意思。

在此处输入图像描述

请让我知道如何解决这个问题。

编辑:我在这篇文章中的目标是尝试获取平面节点的 x、y、z(中心)而不将球体附加为子节点。

最好的。

0 投票
1 回答
477 浏览

swift - swift中ARKit中的屏幕截图问题

我有使用 ARSCNView 的应用程序。我正在尝试通过单击按钮截取屏幕截图并将该图像保存在图库中。但是当我截取屏幕截图时,它不会在该屏幕上显示内容。只需显示该图像,我上面有一些标签,但它没有在图像中显示。这是我的代码,

如何在屏幕截图中显示 ARSCView 上的标签和按钮?

0 投票
1 回答
535 浏览

swift - 缺少 SCNText 的 textSize 属性

我想在 ARSCNView 的 SCNText 周围添加一个 SCNPlane。因此,我需要使用 SCNText 创建的文本的 textSize,例如:

在此处输入图像描述

正如您从图像中看到的那样,有一个错误表明

SCNText 没有成员'textSize'

但我可以在苹果网站上看到SCNTexttextSize的相关文档。

有人知道问题出在哪里,我如何访问 textSize 属性?

我正在使用 xCode 10.0 beta 4、swift 4.2、macOS Mojave 10.14 Beta。

0 投票
1 回答
694 浏览

swift - ARKit 2.0 – 如何阻止音频在 SCNView 中播放?

我正在开发一个播放音频所需的 AR 应用程序。

我已经这样做了:

它工作正常,只是我无法阻止它播放。

我也试过:

但它仍在播放。

有人知道如何阻止它吗?

更新: 我已经尝试过:

并像@Andy 所说的那样删除它:

但它仍然无法正常工作。

PS 我正在使用 iOS 12 beta 9、xCode 10 beta 4 和 macOS Mojave 10.14

解决方案:问题不是ARAudio,原因是:SCNAudioPlayer被直接添加到节点,我试图从子节点中删除它。