问题标签 [scnscene]

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 投票
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 回答
284 浏览

transform - SceneKit:缩放 SCNNode 不会按预期量改变大小

这个附加的 DAE 模型的高度约为 324 个单位,如其边界框所示。

但是,在 SceneKit 中,如果将 Y 比例设置为 0.01,则高度不会变为 ~3.24。它变得小于 3,您可以通过将其舒适地安装在高度为 3(半径为 1.5)的球体中来证明这一点。

如果你的资产对于 SCNScene 来说太大了,你如何精确地缩放它的大小?

0 投票
2 回答
846 浏览

xcode - SceneKit:以编程方式使用场景检查器中的“程序天空”选项?

在 Xcode SceneKit 场景检查器中,Procedural Sky该部分下有一个选项Environment

根据一些教程,启用此选项将赋予 3D 模型更多的真实感。

1)如果您是从代码而不是从场景检查器创建场景,您如何启用该Procedural Sky选项?没有Environment财产。

2)该Procedural Sky选项是否仅在您使用 PBR 材料时才有效?

0 投票
1 回答
866 浏览

swift - 多次添加 SCNNode 只显示一次

我正在尝试在不同位置的循环中添加 SCNNode 多个时间,但我可以在最后一个位置一次看到相同类型的节点。

下面是代码

它在最后位置显示一枚硬币和一块砖。

我是scenekit的新手,所以会做错事,请帮助我。

0 投票
0 回答
454 浏览

swift - 场景每次都是零

嗨,我正在尝试创建一个 AR 应用程序,在该应用程序上,每个文件都在几个不同的目录中排序,现在当我想创建场景时,我无法捕捉到我的 Models.scnscene 目录,我试图在很多目录中执行此操作方式,但每次我都遇到相同的错误,即 SCNSCENE 为零。

0 投票
0 回答
164 浏览

swift - ARSCNView 中无法识别 SCNNode 冲突检测

我无法检测 AR/SCNKit 中的碰撞。我发现了这个:如何设置 SceneKit 碰撞检测,虽然有帮助,但我的代码仍然无法正常工作。

主要目标是检测两个场景节点何时接触,一个是球,另一个是充当 scnplane 的 scnbox。

ViewController.swift

Ball.swift

常量.swift

我期待physicsWorld在飞机和球相撞时被叫到,但它没有发生。非常感谢任何见解。

0 投票
2 回答
821 浏览

ios - 使用 Scenekit 场景时间来擦洗动画 iOS

我正在尝试修改 Xcode 的默认游戏设置,以便我可以:将动画编程到几何体中,擦洗该动画,并让用户自动播放动画。

我设法通过根据擦洗器的值设置视图的场景时间来使动画擦洗工作。但是,当我将 SCNSceneRenderer 上的 isPlaying 布尔值设置为 true 时,它​​会将每一帧的时间重置为 0,并且我无法让它离开第一帧。

从文档中,我假设这意味着它不会检测到我的动画,并认为所有动画的持续时间都是 0。

这是我的 GameViewController 中的 viewDidLoad 函数:

任何帮助表示赞赏!:)

参考:

场景时间:

https://developer.apple.com/documentation/scenekit/scnscenerenderer/1522680-scenetime

正在玩:

https://developer.apple.com/documentation/scenekit/scnscenerenderer/1523401-isplaying

相关问题:

SceneKit SCNSceneRendererDelegate - 未调用渲染器函数

0 投票
1 回答
143 浏览

ios - 如何在 ios 中以编程方式旋转/缩放/更改 SCNNode 的坐标

我想使用面部/眼睛检测将 3D Spectacles 模型放在人眼中,并且它应该可以像 Snapchat 那样随着面部移动而移动。我已经在视图中加载了 3D .obj 模型,但我无法以编程方式更改 3D SCNNode 的旋转角度、坐标和缩放值。能否请您告诉我如何更改 3D SCNNode 的所有这些特性。

提前致谢。

0 投票
0 回答
300 浏览

swift - ARKit - 相对于“CLCoordinates”和用户位置绘制线/管道/管

我一直坚持在坐标之间画线的任务。事实上,我需要在一些 CLCoordinates 之间绘制 20 个管子。所以我把这个项目作为基础。

我设法画了一些管子,但与数量堆叠在一起。我的代码只能存储 2 个管道,不能再存储了,我不知道如何修复它。确定地理位置也存在巨大问题。管道在屏幕上“跳舞”,并且在坐标处不稳定。

这是GitHub 项目

主要代码在SceneLocationView.swift源文件中。

里面有ViewController.swift坐标要改变

0 投票
0 回答
647 浏览

ios - 从远程服务器 URL 加载 SCNScene

我正在尝试使用以下代码初始化或构造 SCNNode。它将从服务器中提取 SCN 文件并将其加载到代码中。但是,似乎我无法覆盖它一直在设备/本地目录中搜索我的纹理文件的资产 URL。我想知道我是否使用了正确的 SCNScene 语法和 URL

所以我得到的错误是 2018-07-26 19:33:34.582848+0800 ARKit+CoreLocation[28182:11913775] [SceneKit] 错误:加载失败:C3DImage 0x1c08e1780 src:file:///var/containers/Bundle/Application /E103CC90-B45B-4111-885C-806328F27D93/ARKit+CoreLocation.app/tree.png [0.000000x0.000000]。我不确定如何正确覆盖资产 URL,很高兴您能提供帮助!