2

Defender 是一款古老的游戏,它在一个循环中呈现一个虚拟世界,一个水平滚动条。相机视图在任何给定时间仅描绘世界的一部分。玩家可以在这个世界上的两个方向连续飞行。

世界的 SKTileMapNode 布局如何实现这一点?

我的第一个想法是有两个 SKTileMapNode 实例来说明整个世界,并在玩家在世界各地飞行时在需要的地方和时间与它们相邻。

这是屏幕顶部突出显示的 Defender 世界地图:

在此处输入图像描述

4

1 回答 1

2

您显示的屏幕截图中的小地图表明它不是无休止地滚动,它真的很长,任何时候都只有一小部分可见。

这样做SKTilemapNode会涉及一个SKTilemapNode并只为地面添加瓷砖,然后您可以将物理实体附加到地面上。背景可以是单个图像或多个图像以创建视差效果,或者您可以使用黑色背景和使用 SpriteKit 粒子创建的星星。

另一种方法是使用两个背景图像并以编程方式定位它们,以便当一个图像滚动到屏幕外时,它会向左或向右移动(取决于用户滚动的方式)以与另一个背景图像相邻出现,从而呈现无尽的滚动背景。

于 2016-10-15T03:00:44.510 回答