在处理弹跳球

时间:2016-11-09 15:59:02

标签: processing

尝试在处理过程中制作一个简单的弹跳球程序,但是在移除球的重影方面遇到了麻烦。任何帮助将不胜感激,这是我的代码:

float g=-9.81;
float k=0.2;    // Spring constant
float m=0.25;   // Mass kg
float dt=0.01;  // Time step 50ms

float vy=0;     // Initial velocity
float y=0.95;   // Initial position

float t=0;      // Initial time

void setup()
{
size(500, 500);
 }

void draw()
{
 vy=vy+(g-((k/m)*vy))*dt; 
if(y<0)
{
vy=-vy;
} 

y=y+(vy*dt); 
t=t+dt;

float sx=map(0.5,0,1,0,width);
float sy=map(y,0,1,height-1,0);
fill(255,0,0);
ellipse(sx,sy,10,10);
}

1 个答案:

答案 0 :(得分:2)

你永远不会清除旧框架,所以你绘制的任何内容都只是绘制在你之前绘制的任何内容之上。

如果您要清除旧框架,请将background()功能作为draw()功能的第一行添加。

可以在the referencethis tutorial中找到有关处理动画的更多信息(免责声明:我编写了该教程)。