我找不到任何关于此的文档,所以我决定作为一个问题。我正在使用 SceneKit 渲染一些立方体,当我点击立方体时,我想要进入 2D 屏幕。我认为如果当你点击立方体时,它会构建一个 2D 形状,该形状会变大并填充屏幕以进行过渡,那会非常酷。我之前在 OpenGL 中做过类似的事情,我只是将立方体点转换为剪辑空间,然后在那里构造形状。 为此,您需要 modelView 和投影矩阵以及立方体点的位置。 SceneKit 有什么办法可以做到这一点吗?我可以获得几何点以及相机的modelView和投影矩阵吗?
如有任何见解,我们将不胜感激。 谢谢。
最佳答案
每个节点都有一个 transform
和 worldTransform
属性,所以很容易创建一个 model
然后一个 modelView
转变。或者您可以只使用转换实用程序,例如 -[SCNNode convertPosition:fromNode:]
。最后 SCNCamera
公开了 -projectionTransform
。
或者您可以使用 -[SCNSceneRenderer projectPoint:]
替换所有内容。
关于ios - 项目指向手动裁剪空间 SceneKit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29696916/