我目前正在Processing 3上创建一个第一人称,星空一样的氛围,需要帮助来调整一个类似UFO的物体的大小,使其在屏幕上变得越来越大(就像它飞向你一样),并以一定的大小消失。我能够创建starfield (对于这个问题来说,它的代码太多了),但是我可以使用一些指导来让下面绘制的UFO从第一人称视图飞向你,然后消失。我在下面粘贴了我的UFO代码。
void setup() {
size(400,400);
}
void draw() {
fill(30);
ellipse(200,65,100,50);
fill(20);
ellipse(200,50,75,40);
fill(100);
ellipse(200,40,40,30);
}注意:如果我在窗口中创建的大小太小,请随意编辑代码并重新发布新的大小,请只指出您更改的地方。注2:我是一个编程新手,也是这个论坛的新手,所以请不要过于苛刻地评价我
谢谢大家!
发布于 2016-11-30 12:20:48
你需要随着时间的推移改变你的变量。Processing通过每秒为您调用60次draw()函数使这一过程变得非常容易。
第1步:在草图的顶部定义变量。如果你所改变的只是飞碟的垂直位置,也许你所关心的只是一个y变量。但是,您也可以使ufo越靠近越大,在这种情况下,您还需要跟踪size变量或其他变量。
UFO第2步:使用这些变量来绘制。现在你正在用数字硬编码你的ufo,但是你需要使用变量来代替。
步骤3:随着时间的推移更改这些变量。您可以在每次调用draw()时更改它们,每秒发生60次。
下面是一个简单的例子,它完成了上面的所有操作,显示了一个圆圈从屏幕上掉下来:
float y = 0;
void setup() {
size(100, 300);
}
void draw() {
background(0);
ellipse(width/2, y, 100, 100);
y++;
}无耻的自我推销:我写了一篇关于处理可用here中的动画的教程。
https://stackoverflow.com/questions/40879497
复制相似问题