目录
在3D绘制向量
问题
您希望在3D游戏中获得视觉调试信息:一种查看表示速度,位置等的向量的方法。
解决方案
在2D中调试绘图是非常方便的。CanvasItem提供了_draw()回调中使用的基本绘图方法的范围。在3D中,事情就没那么简单了。一种解决方案是使用ImmediateGeometry
手动创建网格,但这是非常麻烦和不方便的快速调试。
更好的解决方案是坚持使用CanvasItem绘制方法。为此,我们需要将3D空间中的位置投射到2D视口上。幸运的是,Camera可以使用它的unproject_position()方法为我们做到这一点。
设置
对于显示层,将包含Control
的CanvasLayer添加到3D场景中,然后将脚本添加到Control中。
举个例子,让我们