为了简单地解释这个问题,想象三个 16x16 的地形图块:一个满沙,一个满草,一个沙草过渡。
创建地图后,我想在这些图块上叠加一个更大的图案,这样它们看起来就不会那么重复。例如,我目前的解决方案是有一个大的 64x64 重复的沙子图案,每次看到沙子时,我都会查看它所在的行和列,而是使用 64x64 瓷砖中相应的 16x16 块。这样,整体使用较大的图案,沙子看起来不错(草也一样)。
问题出现在过渡瓷砖上,它可能是半沙半草。我希望能够用沙子图案覆盖过渡瓷砖的一半,而用草图案覆盖另一半。有什么方法可以声明半个瓷砖透明并在其上覆盖一些东西,然后声明另一半透明并在其上覆盖其他东西?显然需要有两个单独的 alpha 通道——它可以在特定的像素颜色基础上混合吗?意思是我声明一些绿色像素对草地部分是透明的,而一些黄色像素对沙子部分是透明的?
如果可能的话,我不知道如何在 libgdx 中执行此操作,因此将不胜感激任何代码帮助。