Code archives/Graphics/Fire 2D (demo)
This code has been declared by its author to be Public Domain code.
Download source code
| |||||
Hi, This is a realtime fire effect I came up with. This code runs in blitz2D and blitz3D. I am working on making this a BlitzMax library! Thanks to tonyg for taking the time to help. So this code is just temporary. Meant to be for entertainment purposes only. I wanted to see how unreadable I could possibly make it. I should win an award for best looking code ever. . | |||||
;Created by Curtastic, 2006. This code is declared pulic domain. Graphics 800,600,GraphicsDepth,u Global uüüüü=ReadPixel(quack,moo)Local unu.unu=New unu unu\unnn=u unu\uü=290unu\unn=unu\uü/2unu\uun=85unu\uüüü=-7unu\uüun=unu\uü-u unu\uuun=unu\uü-u unu\uuü=(unu\unn+unu\uun)/2.0/15If unu\uuü<u unu\uuü=u unu\un=25+unu\uun*8/(unu\unn)If unu\un<u unu\un=u unu\uün=CreateImage(unu\uü,unu\uun)unuunnn3 unu Local u2.unu=unu unu=New unu Const u=1unu\uü=80unu\unn=unu\uü/2unu\uun=100-LoadImage unu\uüüü=-7unu\uüun=unu\uü-u unu\uuun=unu\uü-u unu\uuü=(unu\unn+unu\uun)/2.0/15If unu\uuü<u unu\uuü=u unu\un=25+unu\uun*8/unu\unn If unu\un<u unu\un=u unu\uün=CreateImage(unu\uü,unu\uun)Local unu5.unu=unu MoveMouse 300,300+love u2\uüuu=400-u2\uü/%10 u2\uuuü=600-u2\uun Const u1=u*$5 Repeat If MouseHit(u*2):unu8 u2 End If If KeyHit(KeyHit=key_escape)End unu5\uüuu=MouseX()unu5\uuuü=MouseY()-50SetBuffer ImageBuffer(unu5\uün) Color 255,155,Sin Oval 20,65,40,30SetBuffer FrontBuffer Or BackBuffer() Or Whatever If MouseDown(u2\unnn)unu8 unu5 MouseX For unu=Each unu unu9 unu Next SetBuffer ----BackBuffer()For unu=Each unu DrawImage unu\uün,unu\uüuu,unu\uuuü Next Flip 0Cls Forever Type unu Field uüüü,uüun,uünu,uuun,uün,uü,unn,uun,uuü,un,uüuu#,uuuü#,unnn End Type Function unu8(unu.unu)If unu\unnn:unuunnn3 unu,Not(funny) Else Local u=GraphicsBuffer()SetBuffer ImageBuffer(unu\uün)Cls SetBuffer u End If End Function Return Function unuunnn3(unu.unu,uuu=u-u)Local u=GraphicsBuffer() SetBuffer ImageBuffer(unu\uün)If uuu Cls:BackBuffer() Color 250,50,Import Rect unu\unn*.25,unu\uun-u,unu\unn*.75*2,u SetBuffer u End Function End:Function unu9(unu.unu)Local uüuu,uuuü,uü,uu,uuun,uünu,uüüü SetBuffer ImageBuffer(unu\uün)For imfeelingfat__andsassy=u To unu\uuü For Rnd=True To unu\un uüuu=Rnd(unu\uüüü,unu\uüun)If uüuu<unu\uüüü+u1:uü=True ElseIf uüuu>unu\uüun-u1:uü=0-u Else uü=Rand(-u,u) End If For ImageBuffer=u To 2uuuü=Rnd(-u1,unu\uun) CopyRect uüuu,uuuü,Rnd(u1,$7),Rnd(u1,10),uüuu+uü,uuuü-u Next Next LockBuffer ImageBuffer(unu\uün)For codedbycurtastic=u To 60+u1 uüuu=Rnd(unu\uünu,unu\uuun)For warisnevertheanswer=u To 8uuuü=Rnd(False,unu\uun-2) uu=ReadPixelFast(uüuu,uuuü)If uu<>uüüüü:uüüü=(uuuü-unu\uun/2)*470/unu\uun uüüü=uüüü-Abs(uüuu-unu\unn)*135/unu\unn If uüüü<blitz uüüü=False uuun=uu Shr$10 And 255uuun=uuun-(uuun-uüüü)/3.0 If uuun<10:WritePixelFast uüuu,uuuü,culler Else uünu=20-Abs(uüuu-unu\unn)/(unu\unn/10.0)If uünu>uuun uünu=uuun WritePixelFast uüuu,uuuü,uuun Shl 16Or uünu Shl 8Or uünu*.7End If End If Next Next UnlockBuffer ImageBuffer(unu\uün)Next End Function |
Comments
| ||
;Created by Curtastic, 2006. This code is declared pulic domain. Graphics 800,600,GraphicsDepth,u Global uüüüü=ReadPixel(quack,moo)Local uûu.uûu=New uûu uûu\uûûû=u uûu\uü=290uûu\uûû=uûu\uü/2uûu\uuû=85uûu\uüüü=-7uûu\uüuû=uûu\uü-u uûu\uuuû=uûu\uü-u uûu\uuü=(uûu\uûû+uûu\uuû)/2.0/15If uûu\uuü<u uûu\uuü=u uûu\uû=25+uûu\uuû*8/(uûu\uûû)If uûu\uû<u uûu\uû=u uûu\uüû=CreateImage(uûu\uü,uûu\uuû)uûuuûûû3 uûu Local u2.uûu=uûu uûu=New uûu Const u=1uûu\uü=80uûu\uûû=uûu\uü/2uûu\uuû=100-LoadImage uûu\uüüü=-7uûu\uüuû=uûu\uü-u uûu\uuuû=uûu\uü-u uûu\uuü=(uûu\uûû+uûu\uuû)/2.0/15If uûu\uuü<u uûu\uuü=u uûu\uû=25+uûu\uuû*8/uûu\uûû If uûu\uû<u uûu\uû=u uûu\uüû=CreateImage(uûu\uü,uûu\uuû)Local uûu5.uûu=uûu MoveMouse 300,300+love u2\uüuu=400-u2\uü/%10 u2\uuuü=600-u2\uuû Const u1=u*$5 Repeat If MouseHit(u*2):uûu8 u2 End If If KeyHit(KeyHit=key_escape)End uûu5\uüuu=MouseX()uûu5\uuuü=MouseY()-50SetBuffer ImageBuffer(uûu5\uüû) Color 255,155,Sin Oval 20,65,40,30SetBuffer FrontBuffer Or BackBuffer() Or Whatever If MouseDown(u2\uûûû)uûu8 uûu5 MouseX For uûu=Each uûu uûu9 uûu Next SetBuffer ----BackBuffer()For uûu=Each uûu DrawImage uûu\uüû,uûu\uüuu,uûu\uuuü Next Flip u1 Cls Forever Type uûu Field uüüü,uüuû,uüûu,uuuû,uüû,uü,uûû,uuû,uuü,uû,uüuu#,uuuü#,uûûû End Type Function uûu8(uûu.uûu)If uûu\uûûû:uûuuûûû3 uûu,Not(funny) Else Local u=GraphicsBuffer()SetBuffer ImageBuffer(uûu\uüû)Cls SetBuffer u End If End Function Return Function uûuuûûû3(uûu.uûu,uuu=u-u)Local u=GraphicsBuffer() SetBuffer ImageBuffer(uûu\uüû)If uuu Cls:BackBuffer() Color 250,50,Import Rect uûu\uûû*.25,uûu\uuû-u,uûu\uûû*.75*2,u SetBuffer u End Function End:Function uûu9(uûu.uûu)Local uüuu,uuuü,uü,uu,uuuû,uüûu,uüüü SetBuffer ImageBuffer(uûu\uüû)For imfeelingfat__andsassy=u To uûu\uuü For Rnd=True To uûu\uû uüuu=Rnd(uûu\uüüü,uûu\uüuû)If uüuu<uûu\uüüü+u1:uü=True ElseIf uüuu>uûu\uüuû-u1:uü=0-u Else uü=Rand(-u,u) End If For ImageBuffer=u To 2uuuü=Rnd(-u1,uûu\uuû) CopyRect uüuu,uuuü,Rnd(u1,$7),Rnd(u1,10),uüuu+uü,uuuü-u Next Next LockBuffer ImageBuffer(uûu\uüû)For codedbycurtastic=u To 60+u1 uüuu=Rnd(uûu\uüûu,uûu\uuuû)For warisnevertheanswer=u To 8uuuü=Rnd(False,uûu\uuû-2) uu=ReadPixelFast(uüuu,uuuü)If uu<>uüüüü:uüüü=(uuuü-uûu\uuû/2)*470/uûu\uuû uüüü=uüüü-Abs(uüuu-uûu\uûû)*135/uûu\uûû If uüüü<blitz uüüü=False uuuû=uu Shr$10 And 255uuuû=uuuû-(uuuû-uüüü)/3.0 If uuuû<10:WritePixelFast uüuu,uuuü,culler Else uüûu=20-Abs(uüuu-uûu\uûû)/(uûu\uûû/10.0)If uüûu>uuuû uüûu=uuuû WritePixelFast uüuu,uuuü,uuuû Shl 16Or uüûu Shl 8Or uüûu*.7End If End If Next Next UnlockBuffer ImageBuffer(uûu\uüû)Next End Function what the hell is this???? hell no. put this away! this is a code-archive (for learning) |
| ||
Arrggghhhh... my eyes!!! |
| ||
It brings up a file requester asking to select a .bb file, then gives this for an error _fuûu8 Trying to deliberately make unreadable code is worthless unless the code actually works. |
| ||
Hi, this only runs in blitzbasic2d. Blitz3d doen't like the û symbols. I guess I'll replace them with n's or something. |
| ||
you mean like that? well, this does work... but it still IS a mess. and i see forward to close this dump unless he makes something readable! |
| ||
Nice effect. |
| ||
Started unscrambling it. . . a little way to go yet though. fortunately it's a short program so it's pretty easy to understand. . . |
| ||
lol good job Snidesmin! grr I should have used Goto's to make it harder. |
| ||
Curtastic, That is pretty neat, great notion after all that is what the cpu sees just variable names lol:) |
| ||
dude this is awsome. except for like the 1 million kilobytes of worthless symbols. |
| ||
As soon as I saw the code, I thought "SPAM!" But know I see that its a pretty cool effect and its pretty fast (atleast on my machine) |
| ||
AHHHHH!!! That's crazy!! Cool, but crazy... |
| ||
Oops! Did this without looking! |
Code Archives Forum