Metaball

By Cclx33

N=4

DIM BX(N),BY(N),R(N),RR(N),XA(N),YA(N)
RANDOMIZE TIMER

LIMIT=2

FOR I=0 TO 8
PALETTE I,VAL(MID$(“001632485256606263”,I*2+1,2))
NEXT

FOR I=0 TO N
BX(I)=RND*30+5
BY(I)=RND*30+5
R(I)=RND*10+5
RR(I)=R(I)*R(I)
XA(I)=RND*8-4
YA(I)=RND*8-4
NEXT

DO
CLS
FOR X=0 TO 40
FOR Y=0 TO 40
F=0
FOR I=0 TO N
IF F<8 THEN F=F+RR(I)/((X-BX(I))^2+(Y-BY(I))^2+1) ELSE EXIT
NEXT
COLOR MIN(F,8)
IF F>LIMIT THEN PLOT X,Y
NEXT
NEXT

WAIT 0

FOR I = 0 TO N
BX(I)=BX(I)+XA(I)
BY(I)=BY(I)+YA(I)
IF BX(I)<5 THEN XA(I)=ABS(XA(I))
IF BX(I)>35 THEN XA(I)=-ABS(XA(I))
IF BY(I)<5 THEN YA(I)=ABS(YA(I))
IF BY(I)>35 THEN YA(I)=-ABS(YA(I))
NEXT

LOOP

Get LowRes Coder to use this program.

Play homegrown retro games and program your own!