基本上我只是想重新实现此视频中显示的内容:https://youtu.be/iw9MPZoPqCQ
在这个视频中,你会发现它们在某种程度上绘制了连接3D点之间的线条,但线条本身就是2D,因为它们在屏幕上保持完全相同的宽度,无论它们距离相机有多近或多远
我的猜测是他们将3D点投射到2D并从这些2D点创建UIBezierPath。所以我采用了这种方法,它看起来很棒!然而,有一个问题我无法找到一个很好的解决方案:3D点最终投射到2D视图,无论它们是在镜头前面还是后面!
在做了一些研究后,我发现这是3D图形的正常方面。通常的解决方案是截断与摄像机平面相交的任何几何体。然后可以省略平面后面的任何点,只留下在相机平面前面的顶点进行渲染,同时在每一行中保持相同的角度。
这个过程在这里的文章中有详细描述 - http://metalbyexample.com/up-and-running-3/ - 从“从视图空间到剪辑空间”的小标题下开始。
所以我现在想知道我是否应该尝试实现我自己的janky版本的剪辑(对于像我这样的3D渲染菜鸟听起来相当令人生畏)或者是否有可能需要更少代码的更好的方法?希望仍能利用UIBezierPath的强大渲染功能的方法。
感谢您查看我的问题。 :)