Tiny Code Christmas - Day 8 - EXTRA

Welcome to Day 8 of Tiny Code Christmas EXTRA! We’re glad that you’re joining us again on this festive journey into the world of sizecoding. TCC Extra is intended for people who completed Tiny Code Christmas last year and want a new challenge!

If you haven’t already, read the overview to find out what Tiny Code Christmas is all about!

The Challenge: Bubble Universe!

This tweet from 2020 went around recently via this video (which appears to give it the name Bubble Universe) and got ported to the PICO-8 by Luchak, and TIC-80 by jtruk.

Bubble Universe ported to TIC-80 by jtruk
Bubble Universe ported to TIC-80 by jtruk

The first challenge is to explore the effect and the various parameters. The second challenge is to create the tiniest implementation possible while retaining the magic of the original. Both the TIC-80 and PICO-8 port code are below as a starting point or you can port the original Processing.

TIC-80

Courtesy of jtruk

n,m,r=40,200,math.pi*2/235
x,v,t=0,0,0,0
S,C=math.sin,math.cos

function TIC()
  cls(0)
    
  for i=0,n do
    for j=0,m do
      local a,b=i+v,r*i+x
      local u=S(a)+S(b)
      v=C(a)+C(b)
      x=u+t
      pix(120+u*34,68+v*34,1+i%15+j/36)
    end
  end
  t=t+.025
end

PICO-8

Courtesy of Luchak

local t,u,v=0,0
_set_fps(60)
::_::
local v=0
for i=0,22 do
local k=i/200
for j=0,142 do
local a,b=u*.1592+k,(i+v)*.1592
u,v=sin(b)+sin(a),cos(b)+cos(a)
pset(u+2<<5,v+2<<5,i%13+j\36+1)
u+=t
end
end
t+=.012
?"⁶1⁶c0⁶!5f100🐱2☉8🅾️웃웃99??::♥7"
goto _

Sharing is Caring!

If you feel like it, why not share what you’ve done with us on the LoveByte Discord, #lovebyte on IRCnet, or share on Twitter and Mastodon using the hashtag #lovebytetcc