XNA:我有一个1 * 1 * 1的盒子,想知道我从哪一侧单击它 《我的世界》克隆版

问题描述

| 我目前正在创建Minecraft克隆游戏(您在3D空间中并创建或删除块以创建结构的游戏) 因此,我几乎可以完成所有需要的工作。 如果我查看一个块,它将以我想要的方式显示出来,并且如果我用右键单击调用“ RemoveBlock()\”,则当前查看的块将被删除。 但是现在我也想通过单击leftclick添加块。 所以我有:AddBlock(Vector3 LookingAt,Vector3 Direction) \“ LookingAt \”与我存储我的Blockdata的3dArray正确相关。方向是Vector3.UnitX / Z / Y和负数。如果我手动说Direction = Vector3.UnitY,则将在LookedAt块上方添加一个块。这就是我想要的。 但是我怎么知道我从哪一侧看街区。即。确定方向: 我试图在LookedatBlock周围创建6个球体,并从CameraPossition绘制了一个Ray到CameraDirection,然后试图找出它与哪个球体首先碰撞。这6个精子的中心始终在立方体每一侧的中间,半径为0.5f。这对我来说很有意义。但这是行不通的。我该怎么做才能使它正常工作。 我需要的结果是某种Vector3.UnitX / Y / Z,以便我可以将其与其他方法一起使用。 谢谢。     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)