問題タブ [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 投票する
1 に答える
348 参照

ios - カメラを切り替えた後、iOS AR Kit 3 World Tracking が機能しなくなる

AR 描画アプリを開発していますが、AR Kit 3 でバグ/問題が発生しました。ワールド トラッキングが機能しなくなり、AR ビューに追加された 3D オブジェクトがフリーズします。

私のアプリは、フロント カメラとバック カメラを切り替えます。どちらの場合も、ワールド トラッキングを有効にしています。

1. バックカメラ セッションを次のように有効にします。

シーン セッションでこの構成を実行するだけで、すべてが完璧に機能します。

2.次のようにフロントカメラに切り替えると:

すべてがまだ完璧に機能しています。

3.しかし、カメラセッションに戻ると(ポイント1のように戻ります):

AR シーンに追加された 3D オブジェクトが静的ビューでフリーズし、ワールド トラックが機能しなくなります。また、元に戻す方法はありませんが、アプリを閉じて再度開く必要があります。

面白いこと:

  • パーツを無効にするとconfiguration.isWorldTrackingEnabled = true 。バグは表示されません。しかし、私は configuration.isWorldTrackingEnabled = true設定が必要です。
  • フロントカメラのセッションが中断されることはありません。バグが発生した後でも、フロントカメラに切り替えると、ワールドトラッキングがうまく機能します。

アプリのビデオ (バグは表示されません) は次のconfiguration.isWorldTrackingEnabled =falseとおりです。

バグ動画なし- https://www.youtube.com/watch?v=JPAa6zJe_kQ

そして、これがアプリのビデオ(バグが表示されます)ですconfiguration.isWorldTrackingEnabled =true

はいバグビデオ- https://www.youtube.com/watch?v=UF2Z8c4A42I

私はすでに何を試しましたか?

  • 最初にフロントカメラでアプリを実行して、バックカメラに変更したときにも壊れるかどうかを確認しました。そして、はい、それも壊れます。
  • ARFaceTrackingConfiguration()withを実行configuration.isWorldTrackingEnabled = trueしてから、もう一度 withconfiguration.isWorldTrackingEnabled = falseを実行して、何かをオーバーライドして修正するかどうかを確認しました。しかし、ロックはなく、まだ壊れています。
  • また、セッションを一時停止してから、カメラの切り替え間で再度有効にしようとしましたが、まだバグがあります. 遅れても。
  • また、次のような設定で構成を実行しようとしましたsceneView.session.run(configuration,options: [.resetTracking,.removeExistingAnchors,.stopTrackedRaycasts])が、まだ運がありません。

誰でもそれを修正する方法について考えがありますか? 誰もがこの奇妙な行動に遭遇しましたか?

0 投票する
2 に答える
195 参照

swift - ボタンSwiftをクリックしたときにARKitシーンのオブジェクトを変更することは可能ですか?

初めて ARkit プロジェクトを構築しています。まず最初に、ARSCNView に 3D Sphere を表示する必要があります。ボタンをクリックすると、球体が消えて、その場所に 3D 立方体が表示されます。

私は自分のコードについて考えていました:

ボタンのコードは次のとおりです。

そして、私はこのエラーに直面しています

私は何か間違ったことをしていますか?