ios - 项目指向手动裁剪空间 SceneKit

标签 ios 3d scenekit

我找不到任何关于此的文档,所以我决定作为一个问题。我正在使用 SceneKit 渲染一些立方体,当我点击立方体时,我想要进入 2D 屏幕。我认为如果当你点击立方体时,它会构建一个 2D 形状,该形状会变大并填充屏幕以进行过渡,那会非常酷。我之前在 OpenGL 中做过类似的事情,我只是将立方体点转换为剪辑空间,然后在那里构造形状。 为此,您需要 modelView 和投影矩阵以及立方体点的位置。 SceneKit 有什么办法可以做到这一点吗?我可以获得几何点以及相机的modelView和投影矩阵吗?

如有任何见解,我们将不胜感激。 谢谢。

最佳答案

每个节点都有一个 transformworldTransform 属性,所以很容易创建一个 model 然后一个 modelView 转变。或者您可以只使用转换实用程序,例如 -[SCNNode convertPosition:fromNode:]。最后 SCNCamera 公开了 -projectionTransform

或者您可以使用 -[SCNSceneRenderer projectPoint:] 替换所有内容。

关于ios - 项目指向手动裁剪空间 SceneKit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29696916/

相关文章:

iphone - iPhone上角色动画的常见做法?

3d - 网格实验室中不需要的边界

ios - 如何将数据转换成小端格式?

ios - xcode swift Storyboard引用不起作用

c++ - 使用 C++ 和 DirectX 从头开始​​在 3D 游戏中创建效果

ios - Scenekit 围绕场景旋转相机

ios - 如何在 Swift 3 中显示图像而不是 SCNSphere?

ios - 弹出窗口下 View 上的事件 UI 导航

iOS UITableView 滚动到部分底部

ios - 了解 iPhone 崩溃日志