【问题标题】:Processing 3, drawing resizing处理3、图纸调整大小
【发布时间】:2016-11-30 03:00:05
【问题描述】:

我目前正在处理 3 上创建一个第一人称、类似星空的氛围,需要帮助调整一个类似 UFO 的对象以出现在屏幕上,调整自身大小以在屏幕上变得越来越大(就像它在飞行一样朝向你),并以一定的大小消失。我能够创建星空(这个问题的代码太多了),但是我可以使用一些指导来指导如何使下面绘制的 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);
}

注意:如果我在窗口中创建的尺寸太小,请随时编辑代码并使用新尺寸重新发布,请指出您更改的位置。 第二个注意事项:我是初学者,并且是这个论坛的新手,所以请不要太苛刻地评价我

谢谢大家!

【问题讨论】:

    标签: java processing processing.js


    【解决方案1】:

    您需要随着时间的推移更改变量。通过每秒为您调用 60 次 draw() 函数,处理使这变得非常容易。

    第 1 步:在草图顶部定义变量。如果您要更改的只是 ufo 的垂直位置,那么您可能只关心 y 变量。但是你也可以让 ufo 越靠近它就越大,在这种情况下,你还需要跟踪 size 变量或其他东西。

    第 2 步:使用这些变量来绘制你的 ufo。现在你正在用数字硬编码你的 ufo,但你需要使用变量来代替。

    第 3 步:随着时间的推移更改这些变量。您可以在每次调用 draw() 时更改它们,每秒发生 60 次。

    这是一个简单的示例,它执行上述所有操作以显示一个从屏幕上掉下来的圆圈:

    float y = 0;
    
    void setup() {
      size(100, 300);
    }
    
    void draw() {
      background(0);
      ellipse(width/2, y, 100, 100);
      y++;
    }
    

    无耻的自我推销:我在Processing中写了一篇关于动画的教程,可用here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-08
      相关资源
      最近更新 更多