Загрузить SCNScene с URL-адреса удаленного сервера
Я пытаюсь инициализировать или создать SCNNode с помощью следующего кода. Он извлечет файл SCN с сервера и загрузит его в код. Тем не менее, похоже, что я не могу переопределить URL ресурса, который он продолжает искать для моего файла текстуры в каталоге device/local. Я хотел бы знать, использовал ли я правильный синтаксис SCNScene с URL
lazy var audiNode: SCNNode = {
//Endpoint for SCN file
let endpoint = URL(string: "http://jwt-auth-hosted.au-syd.mybluemix.net/hkdl-ar/tree.scn")
//Remote directory for texture PNG file for the SCN file
let texture = NSURL(string: "http://jwt-auth-hosted.au-syd.mybluemix.net/hkdl-ar")
//Declare scene options for initializing SCNScene
let assetDirURL = SCNSceneSource.LoadingOption.assetDirectoryURLs
let isOverrideAssetURL = SCNSceneSource.LoadingOption.overrideAssetURLs
do {
/*
- Declare scene with endpoint, is override asset URL = true, asset directory is texture
- However not sure if the options are being correctly called
*/
let scene = try SCNScene(url: endpoint!, options: [assetDirURL: [texture],isOverrideAssetURL:{1}])
//scene is not null
NSLog("audi scnscene: \(scene) with endpoint: \(String(describing: endpoint))")
}
catch let error {
NSLog("cannot load scnscene")
}
//Initialize parent node
let carNode = SCNNode()
//Get all child nodes of the SCNScene
let carSceneChildNodes = scene.rootNode.childNodes
//Loop through all child nodes and add them into the parent node
for childNode in carSceneChildNodes {
carNode.addChildNode(childNode)
}
//Set scale and position of the parent node
let scaleFactor = 0.05
carNode.position = SCNVector3(0,0,0)
carNode.scale = SCNVector3(scaleFactor, scaleFactor, scaleFactor)
NSLog("returning audi node")
//return node to another
return carNode
}()
Таким образом, я получаю ошибку 2018-07-26 19:33:34.582848+0800 ARKit+CoreLocation[28182:11913775] [SceneKit] Ошибка: сбой загрузки: C3DImage 0x1c08e1780 Источник: файл:///var/ Containers/Bundle/Application/E103CC90-B45B-4111-885C-806328F27D93/ARKit+CoreLocation.app/tree.png [0,000000x0,000000]. Я не уверен, как правильно переопределить URL ресурса, и был бы рад, что вы можете помочь!