我在这里做了一些基本的视差滚动效果 -
float speed = (float)ps / divideSpeed;
if(flip == "right") {
scrollSpeed += speed;
addImage = 1;
} else if(flip == "left") {
scrollSpeed -= speed;
addImage = -1;
}
dayTop.setU(scrollSpeed);
dayTop.setU2(scrollSpeed + addImage);
变速包含它希望移动背景的速度,然后它检查玩家的翻转,如果玩家看起来正确,我们希望值为正,如果玩家向左看,则值将是消极,简单。
当玩家向右移动时,一切都很好,但是当他向左移动时,背景只需翻转他的x坐标,我希望它只是反转背景。
任何想法如何实现它?
我希望你理解, 提前致谢! :)
编辑: 这是一个非常简单的修复,感谢您的帮助,实际上没有人帮助过,所以我感谢自己,我想;)
答案 0 :(得分:1)
所以我会回答我自己的问题,因为有人问我。
这是我写的 -
scrollSpeed += deltaTime;
background.setU(scrollSpeed);
background.setU2(scrollSpeed + 1.0f);
好的,让我解释一下,我每帧都会deltaTime
添加scrollSpeed
我将scrollSpeed
设置为背景,最后我将scrollSpeed + 1.0f
设置为背景。
1.0f
的含义是什么?它意味着我们想要在屏幕上看到多少图像
当我们将其设置为1.0f
时,它将整个背景图像适合屏幕
当我们将它设置为2.0f
时,它将2个整个背景图像适合屏幕(重复)。
当我们将它设置为0.5f
时,它只能将背景图像的一半放到屏幕上(它会拉伸图像)。
稍微玩一下,我相信你会明白的。