gpt4 book ai didi

ios - SceneKit - 消除相机透视失真

转载 作者:行者123 更新时间:2023-12-01 17:39:24 25 4
gpt4 key购买 nike

我正在尝试删除默认的 SceneKit 相机透视失真。我正在构建 Xcode 中内置的默认“游戏”模板。我遇到的问题是存在严重的透视失真。虽然这对于某些应用程序和游戏来说很好,但我想完全摆脱它。为了说明我的意思,这是我从手机截取的屏幕截图。我放置了一架飞机,并使用白色方 block 旋转相机进行平移。 image

这是我用来创建相机的内容:

cameraNode = [SCNNode node];
cameraNode.camera = [SCNCamera camera];
cameraNode.rotation = SCNVector4Make(0, 1, 0, M_PI);
// cameraNode.camera.xFov = 45.0;
cameraNode.position = SCNVector3Make(0, 0, 0);

[scene.rootNode addChildNode:cameraNode];

如您所见,我曾尝试调整 FOV,将飞机向后移动并使其更大,但这会使盒子看起来更大,这使得在房间内平移需要很长时间。最大程度消除或最小化透视失真的最佳方法是什么?

最佳答案

看起来你想要的是一个正交投影。您可以使用属性“usesOrthographicProjection”配置相机以执行此操作,并使用 SCNCamera 上的“orthographicScale”调整视口(viewport)。

如果您只想减少失真但仍使用透视相机,请减小 FOV(并将相机向后移动以进行补偿)

关于ios - SceneKit - 消除相机透视失真,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26189969/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com