New games every week!
JSE - In and Out
15th July 2021  
I worked on the "Backbuffer" stuff yesterday.

Things didn't go to plan.


The touch/mouse controls all but broke, needing a complete rewrite.
The glitch/noise/scanlines stuff went completely awry, building up over and over itself, instead of clearing out.
I even managed to get the engine into a scenario where it would completely lock up for reasons I'm not fully sure of.
Nope, nope, nope.

I'll probably try to get that working some other time, but last night saw me holding down Ctrl+Z for a really really long time.

Oh yeah, and it slowed everything down, too.

Never mind. Let's have an update to my Falling Petals test.
// Falling Petals // by Jayenkai // Created 2021/6/9 Symbol 0,"0__220.2,4400442046.40,60060.60060,46.4024400442,0.22"; Symbol 1,"01_220.2,4400442046.40,60060.60060,46.4024400442,0.22"; Symbol 2,"02_220.2,4400442046.40,60060.60060,46.4024400442,0.22"; Symbol 3,"03_220.2,4400442046.40,60060.60060,46.4024400442,0.22"; Symbol 4,"04_220.2,4400442046.40,60060.60060,46.4024400442,0.22"; Symbol 5,"05_220.2,4400442046.40,60060.60060,46.4024400442,0.22"; Symbol 6,"06_220.2,4400442046.40,60060.60060,46.4024400442,0.22"; Graphics 512,512,2 petals=25 flrs=5 skips=3 pt=0 Dim petl(250,10) Dim flr(250,20) y=ScreenHeight()/(flrs+2) for n=0 to flrs flr(n,1)=jRand(64,ScreenWidth()-64) flr(n,6)=Rnd(0.5,1.5) flr(n,7)=Rnd(0,360) flr(n,8)=Rnd(10,30) flr(n,9)=Rnd(64,196) flr(n,2)=(y*(n+1))-flr(n,9) next for d=0 to petals petl(d,1)=jRand(16,ScreenWidth()-16) petl(d,2)=0-jRand(16,ScreenHeight()) petl(d,3)=0 petl(d,4)=0 petl(d,5)=h next Repeat CLS 30,30,80 pt=((pt+1) mod skips) SetFontSize 32 SetSize 1 for n=0 to flrs flr(n,7)=(flr(n,7)+flr(n,6)) mod 360 ang=Sin(flr(n,7))*25 flr(n,11)=flr(n,1)+Sin(ang-flr(n,8))*flr(n,9); flr(n,12)=flr(n,2)+Cos(ang-flr(n,8))*flr(n,9); flr(n,13)=flr(n,1)+Sin(ang+flr(n,8))*flr(n,9); flr(n,14)=flr(n,2)+Cos(ang+flr(n,8))*flr(n,9); flr(n,15)=flr(n,1)+Sin(ang)*flr(n,9)*0.4; flr(n,16)=flr(n,2)+Cos(ang)*flr(n,9)*0.4; flr(n,5)=Neg(0.1) if flr(n,11)<flr(n,13) and flr(n,12)<flr(n,14) then flr(n,5)=0.1 if flr(n,11)>flr(n,13) and flr(n,12)>flr(n,14) then flr(n,5)=0.1 SetThick 3:SetCol 255,128,0,1 Line(flr(n,11),flr(n,12),flr(n,13),flr(n,14)) SetThick 1:SetCol 150,150,150,0.3 Line(flr(n,15),flr(n,16),flr(n,11),flr(n,12)) Line(flr(n,15),flr(n,16),flr(n,13),flr(n,14)) Line(flr(n,1),flr(n,2),flr(n,15),flr(n,16)) next for d=0 to petals ResetDraw() if pt==(d mod skips) x1=petl(d,1) y1=petl(d,2) x2=petl(d,1) y2=petl(d,2)+petl(d,4)+7 for n=0 to flrs if CollideLineToLine(flr(n,11),flr(n,12),flr(n,13),flr(n,14),x1,y1,x2,y2) petl(d,2)=LineCollidePointY-8 ang=flr(n,5) petl(d,3)=petl(d,3)+ang petl(d,4)=0.5 endif next petl(d,2)=petl(d,2)+4+petl(d,4) petl(d,4)=petl(d,4) petl(d,4)=petl(d,4)+0.5 if petl(d,4)>6 then petl(d,4)=6 if petl(d,2)>ScreenHeight()+32 petl(d,2)=-32 petl(d,1)=jRand(16,ScreenWidth()-16); petl(d,3)=0 petl(d,4)=0 endif s=petl(d,3) petl(d,1)=petl(d,1)+s*4 petl(d,3)=s*0.94 petl(d,5)=petl(d,5)+s*8 endif If MouseHit() then KillParticles:Debuglog "Mouse Clicked at "+Mills() x=petl(d,1);y=petl(d,2) SetSize 0.25;SetRot petl(d,5) DrawImg x,y,0 next Flip Forever

Views 36, Upvotes 0
Jse , Breaking Things
New games every week!
Site credits : Jayenkai, one crazy fool who has far too much time on his hands.
(c) Jayenkai 2017 and onwards, site design Rychan. RSS feed
Blog - JSE - In and Out - AGameAWeek