我可以找到我想要做的完整资料来源here
我正在努力制作如上所述的背景滚动,我已经取得了无限的进展,但它似乎在中途消失了。我目前陷入困境,不知道如何从这一点开始。
你可以通过将上面提供的git克隆到eclipse来演示这个。它应该在不需要任何设置的情况下即时工作。画布大小为1000 x 720。
int bgend=-(1000-bg.getWidth());
public void update(int delta){
x-=delta*0.2;
nx-=delta*0.2;
if(x<=bgend&&x>=-bgend+delta*0.2){nx=1000;}
else if(nx<=bgend&&nx>=-bgend+delta*0.2){x=1000;
}
这是与滚动相关的逻辑。然后这些值用于渲染图像,
public void render(Graphics g){
bg.draw(x, y, bg.getWidth(), 720);
bg.draw(nx, y, bg.getWidth(), 720);
}
所有这些也在提供的链接中。 谢谢。
答案 0 :(得分:0)
我可以知道图片的大小和屏幕的大小吗? 我想也许你需要&#34; cut&#34;渲染方法中的图像取决于你在状态下向下/向上滚动的程度。让我更清楚地使用Bottons:让我们假设每个&#34; W&#34;是1像素,每个&#34; S&#34;是&#34; y&#34;轴,pic是1000像素高,状态设置为500像素高,并假设我们从那张照片的底部开始,所以我们需要更高,所以每W推 我们更新了一个参数&#34; UP&#34;在更新方法中,然后在渲染方法中,我们使用&#34; IMAGE.getSubImage(XstartPoint,YstartPoint,hight,width)&#34;来剪切照片。我希望这对你来说很有用。