在3D网格中阻止附件

时间:2010-10-20 17:23:25

标签: c++ 3d irrlicht

我正在进行射线拾取以找到我的光标指向的场景节点。所有这些场景节点都是大小相同的立方体。我有点击 scenenode的位置,光线交叉点的位置以及被击中的节点/网格的三角形。我想要做的是将一个新块附加到被击中的碰撞的scenenode块的面上。我希望它在MineCraft风格中作为3D网格工作。我不想要任何代码,只是一些指针和提示,我可以如何正确地创建新块到正确的位置。

如果有人有兴趣或想要/需要知道,我正在使用Irrlicht 1.7.1。

1 个答案:

答案 0 :(得分:1)

如果您知道光线相交的三角形,则可以计算该三角形的法线向量,并将新块放置在positionOfHitBlock + normal处。例如,形成块左面的三角形将具有(-1.0,0.0,0.0)的法线,因此您需要将块放置在左侧更远的位置。