有没有办法使带有立方体纹理内容的背景看起来更远?

时间:2019-05-05 13:18:21

标签: background textures scenekit skybox

我正在使用多维数据集纹理设置SceneKit场景的背景。问题是我似乎无法控制针对给定帧(即相机)呈现的纹理部分。我的场景中还有其他物体,所以我不想更改相机的视野(或与此有关的任何其他参数)。

我正在使用MTKTextureLoader加载立方体纹理。我尝试使用背景的“ contentsTransform”参数“缩放”纹理,但是没有用。据我了解,该变换应用于背景的纹理坐标,这不是我所需要的。麻烦使用scaleFactor参数或调整图像大小也无法解决问题。

let textureLoader = MTKTextureLoader(device: sceneKitView.device!)
scnScene.background.contents = try! textureLoader.newTexture(name: cubeTextureName, scaleFactor: 1.0, bundle: .main, options: nil)
scnScene.background.contentsTransform = SCNMatrix4MakeScale(2, 2, 2)  /* Doesn't do the trick */

似乎正确的解决方案应该包括使背景渲染得离相机的位置更远,或者替代地,渲染模仿背景的自定义几何形状。我正在尝试避免使用后一种解决方案,但是如果有人可以做到这一点,那也将非常好。

0 个答案:

没有答案