◼︎環境
PC:macOS mojave バージョン10.14.6
Xcode:バージョン11.3.1
◼︎3Dモデルの一部のテクスチャーを変更したい
・Xcode(ARkit)で3Dモデルファイル(iPhoneの3Dモデル、scnファイル)を読み込み、
その中の1つのパーツ(iPhoneの画面)のテクスチャーを変更したいと考えていますが方法がわかりません。
※現在作成中のコードは以下のように記述しています。場所としては③の部分で、取得したSCNNodeのdiffudeを
変更したいと考えています。
Swift
1//3Dモデルのscnファイルを取得 2guard let scene = SCNScene(named: "IPhone.scn",inDirectory: "art.scnassets/iphone") 3 else{fatalError()} 4//①まずiPhone全体を取得 5var node = scene.rootNode.childNode(withName: "IPhone", recursively: true) 6//②その中のiPhone画面を取得 7var iScreen = node?.childNode(withName: "iScreen", recursively: true) 8//③ 9//(ここでiScreenのテクスチャーを変更したい) 10//④シーンに登録する 11self.sceneView.scene.rootNode.addChildNode(node)
※以下のようにSCNBoxで作られたオブジェクトのテクスチャーを変更できるのは、様々なサイトで書かれているのですが、上記のようなSCNSceneから取得したSCNNodeのテクスチャーの変更の方法がわからず、ここで質問させていただきました。お詳しい方がいらっしゃればご教授頂けると助かります。
Swift
1let samplebox = SCNBox(width: 1.0, height: 1.0, length: 1.0, chamferRadius: 0.0) 2samplebox.firstMaterial?.diffuse.contents = UIImage(named: "texture")
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/26 01:38