大家好,我目前正在开发一个类似Tetris的排序系统,但是在三维空间中。在这玩法中,每个对象都有不同的大小,但都以立方体的形状存在。然而,每个对象占用的空间也是不同的,例如一个对象可能占据5个单元格的宽度、2个单元格的高度和3个单元格的深度,另一个对象则仅占据1个单元格的宽度、高度和深度。游戏的目标是将所有对象排好序,并尝试将它们放置在最大空间中。
我曾经参考YouTube教程并将其应用于我的项目中,并将3D网格作为2D网格的替代。然而,在思考中,我担心是否真的需要3D网格。例如,我从来不会将对象放在空中,只有在它们位于底层Y区域或者放在别的对象上方时才会考虑。现在我是想,不是就不能将网格限制在XY平面上,并在堆叠对象时检查是否有一个对象放在另一个对象上。如果是这样,就会计算上层对象的高度并进行偏移,使其看起来就像在上面一样。
或许你知道有更好的方法。在我看来,如果将来我想要让一个对象斜着放置,而下方的对象仍然位于其下方,那么就有必要使用XYZ的空间坐标。
我现在还在思考这个问题,如有任何意见,建议或想法,请尽管与我分享。
评论 (0)