AR-ARKit-如何在iOS中使用網(wǎng)絡(luò)下載.dae 3D模型文件并使用

AR-ARKit-如何在iOS中使用網(wǎng)絡(luò)下載.dae 3D模型文件并使用

  • 背景:
  • 如果我們把.dae模型直接丟到沙盒里,是獲取不到的。 原因是Xcode會幫我們對.scnassets文件夾里的.dae文件做一次優(yōu)化,所以iOS不能直接使用.dae文件那我們怎么做呢?

.dae文件的處理

  • 第一種方法:
    • 新建一個.scnassets文件,將.dae和素材放進(jìn)去,編譯,找到編譯后的.scnassets, 將編譯后的該文件作為3D模型的下載文件,下載沙盒使用
  • 第二種方法:
    • 使用copySceneKitAssets 、 scntool 這2個命令腳本對包含了.dea和素材的.scnassets文件進(jìn)行處理。命令如下:
      ./copySceneKitAssets old.scnassets -o new.scnassets

      方便起見,可將copySceneKitAssets 、 scntool和old.scnassets 放在同一級目錄下,詳細(xì)參考文章(1)

模型加載

iOS是使用SCNScene類來加載和管理3D模型的,模型加載實際上就是SCNScene的初始化,有以下兩種方式,詳細(xì)見[SCNScene API](https://developer.apple.com/documentation/scenekit/scnscene)

  • 第一種方法:init with Name
guard let myScene = SCNScene(named: "MyScene") 
    else { fatalError("Unable to load scene file.") }
scnView.scene = myScene // Your app's SCNView

  • 第二種方法:init with URL
convenience init(url: URL, options: [SCNSceneSource.LoadingOption : Any]? = nil) throws
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對...
    cosWriter閱讀 11,674評論 1 32
  • 本文主要講解如何加載一些3D模型到AR項目中去。 0. 寫在前面 本文分三節(jié)內(nèi)容: 第一節(jié)會介紹與之相關(guān)的一些基本...
    TankXie閱讀 17,829評論 8 17
  • WWDC 2017全球開發(fā)者大會上,蘋果公布了其第一款具有AR功能平臺的iOS操作系統(tǒng)iOS11。ARKit 是一...
    Spykerking閱讀 2,624評論 2 10
  • 一 個人,最重要的品質(zhì)——堅持! 年少時有個童真的夢,長大了要當(dāng)個作家。只因?qū)W習(xí)不給力,對讀書的膽...
    夢知緣閱讀 159評論 0 0
  • 馬上要過年了,工作室的節(jié)奏一下子停下來了!工人們也陸續(xù)回家過年了,快遞也不送了,正好借此機會,用思維導(dǎo)圖好好想...
    徐建輝_b113閱讀 164評論 0 0

友情鏈接更多精彩內(nèi)容