How to make use of cube texture type in XCassets(如何在XCAssets中使用立方体纹理类型)
问题描述
我正在尝试学习SceneKit开发,并尝试在后台添加一个Skybox。 为了存储立方体贴图纹理,我发现XCAssets有一个似乎非常适合的类型Cube Texture Set。
然而。我还没有找到在代码中访问纹理的任何方法(例如,作为调用UIImage(named: "asset_name")
的图像集)。我已尝试从资产创建SKTexture
、MDLTexture
、MTKTexture
,但未成功。有人知道如何使用立方体纹理集吗?
推荐答案
您可以使用MetalKit轻松地从资产目录加载立方体纹理。
import MetalKit
在您的文件顶部。这两行执行业务:
let textureLoader = MTKTextureLoader(device: scnView.device!)
scene.background.contents = try! textureLoader.newTexture(name: textureName,
scaleFactor: 1.0,
bundle: .main, options: nil)
我在一个从默认SceneKit游戏模板创建的项目中尝试了这一方法,并在设置了视图的背景颜色后将这两行放入了GameViewController.swft
(我希望您也可以使用其他技术来完成这项工作,但这就是使用金属加载立方体纹理的方法)
这篇关于如何在XCAssets中使用立方体纹理类型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!