2017-08-21 5 views
0

私は自分のシーンキットのシーンを保存しようとしています(理想的にはFirebaseに保存していますが、それは可能でしょうか?ドキュメンテーションに少ししか書かれていないものを使用すると、の場合1.0が進捗状況(完全)になり、が返されます。Scenekitはエラーなしで終了します

@IBOutlet weak var sceneView: ARSCNView! 
let scene = SCNScene() 
sceneView.scene = scene 

sceneView.scene.write(to: URL(string: "http://foo.com")!, options: nil, delegate: nil) { (totalProgress, error, stop) in 
     print("Progress \(totalProgress) Error: \(String(describing: error))") 
    } 

URLは明らかにダミーですが、私はそれが少なくともエラーになると思いますか?適切なFirebaseストレージURLを使用すると、何も保存されず、同じフィードバックが得られます。誰かが速い3(pref)の実例を持っていますか?

おかげ

+0

まず、 'sceneView'と' scene'は何ですか(私は推測できますが、想定しないことが最もよい)、そして 'write'機能を提供するものは何ですか? – cschandler

+0

申し訳ありませんが、私はARKitを使用しており、すべてが正しく機能しています。これは追加しようとしている新機能です。私は質問を更新してsceneとsceneViewのコードを表示します。ここから書き込みがあります: https://developer.apple.com/documentation/scenekit/scnscene/1523577-write –

+0

Firebase Storageに保存しようとしていますか?問題はFirebaseドメインにあると確信しています。 – cschandler

答えて

0

SceneKitが適切にエラーが表面化しなかったが、戻り値は正しいはずですように見えます:

let success = sceneView.scene.write(to: URL(string: "http://foo.com")!, options: nil, delegate: nil) { (totalProgress, error, stop) in 
     print("Progress \(totalProgress) Error: \(String(describing: error))") 
    } 
    print("Success: \(success)") 

Progress 1.0 Error: nil

Success: false

を最初に作成することができます失敗しているものの感覚を取得するにはSceneKit文書を保存してから保存してください:

let data = NSKeyedArchiver.archivedData(withRootObject: sceneView.scene) 
    do { 
     try data.write(to: URL(string: "http://foo.com")!) 
    } catch let error { 
     print("Error: \(String(describing: error))") 
    } 

Error: Error Domain=NSCocoaErrorDomain Code=518 "The file couldn’t be saved because URL type http isn’t supported." UserInfo={NSURL= http://foo.com }

+0

素晴らしい、私はそれを試してみましょう。ここの一日の終わりは、今夜の後半か、朝の最初のことかもしれません。ポインタありがとう、私はあなたに知らせるでしょう。乾杯。 –

+0

それは、ハードルを越えてしまった。私はまだ作成したファイルを元に戻しましたが、シーンファイルを作成して場所に書き込むという2番目のオプションを使用すると、格納されていることがわかります。私はまだ最初のスニペットで偽陽性だったので、今のところそのアプローチを断念しました。多くのおかげで、これを答えとしてマークします。 –

+0

最初のバージョンも動作するはずです。ファイル名と拡張子を持つローカルファイルパスを指定してください。 – mnuages

関連する問題