Java 等距深度(不是菱形)

  • 本文关键字:深度 Java java isometric
  • 更新时间 :
  • 英文 :


所以我有一个简短的问题。我目前正在用java制作一个小游戏,我想尝试将播放器隐藏在屏幕上的假3D对象后面(等轴测绘图)。不幸的是,我无法发布图片(没有足够的代表)。基本上,它是一个 32 x 48 的 3D 块,它给人一种错觉,因为它的一半是浅色,另一半是深色。玩家的大小与方块相同,可以在这些"方块"的地图上自由移动。如果玩家移动到方块后面,它的底部隐藏在方块后面。当它在前面移动时相反,覆盖非玩家块。现在我在GameMaker Studio中制作了一个示例程序来测试它。为了使它在 GM 中工作,我为每个精灵制作了一个脚本,它是一行代码:

depth = y * -1

这会导致玩家的底部在方块后面移动时"隐藏"在方块后面。我在通用汽车的维基上研究了一下,它几乎改变了实例的"深度"。现在我的问题是,我将如何在 Java 中做这样的事情?

附言这不是钻石。它处于一个笔直的2D世界中(从正面向下看45个物体)。

编辑:以下是GameMaker版本的一些图片:

球员外

播放器内部

阅读有关绘制等距世界的信息。阅读有关 Java 和等距开发的信息。

感谢Kayaman解决问题:

如果你先画你的球员,然后在它以南的方块上画一堵墙,墙的上半部分将掩盖玩家的下半部分。所以不,你不需要单独画两半。这当然意味着你需要在绘制地图的同时绘制玩家,所以你不能先绘制地图,然后再绘制玩家。

仅供将来使用,java 中的分层图像由添加它们的顺序决定。这就是我一直在寻找的确切答案。GM代码是GameMaker设置图像添加到屏幕的顺序的方式。

感谢大家的帮助!

相关内容

  • 没有找到相关文章

最新更新