代码之家  ›  专栏  ›  技术社区  ›  Boo Boo

TI基本弹跳球动画

  •  1
  • Boo Boo  · 技术社区  · 7 年前

    我的代码:

    ClrDraw
    AxesOff
    0->Xmin
    0->Ymin
    94->Xmax
    62->Ymax
    Xmax/2->X
    Ymax/2->Y
    1->A
    1->B
    
    Line(0, Ymax, Xmax, Ymax)
    Line(0, Ymax, 0, 0)
    Line(0, 0, Xmax, 0)
    Line(Xmax, Ymax, Xmax, 0)
    
    While 1
    If X<1 or X>Xmax-3
    Then A*-1->A
    End
    
    If Y<1 or Y>Ymax-3
    Then
    B*-1->B
    End
    
    Line(X,Y,X+2,Y)
    Line(X,Y+1,X+2,Y+1)
    Line(X,Y+2,X+2,Y+2)
    
    X+A->X
    Y+B->Y
    

    终止

    3 回复  |  直到 7 年前
        1
  •  3
  •   Stephen P    7 年前

    您有两种选择可以在每一帧后清除球:

    ClrDraw

    Line()

    您可以使用其中一个删除球保留的“后图像”,但是 ClrDraw公司 将擦除整个屏幕,并保留您以前在那里的任何内容,与擦除相反 技术,这只会抹掉球。

    然而,代码由您来实现。

        2
  •  0
  •   Aashishkebab    7 年前

    我在过去使用过的一个选项是,在留下轨迹的对象侧面周围渲染空白。

    另一种选择是在每次迭代中使用ClrDraw,但这在处理器上效率很低,并且会减慢动画的速度。

        3
  •  0
  •   marc_s    6 年前

    您可以使用ClrDraw,但是,它会大大减慢程序的速度,因此最好使用最后一个参数为0的重画球来清除轨迹,并且在主循环之前只使用ClrDraw一次。

    推荐文章