Author Topic: [Halloween 2016] R.I.P. Boogop  (Read 2170 times)

0 Members and 1 Guest are viewing this topic.

Offline boogop

  • C= 64
  • **
  • Posts: 71
  • Karma: 42
    • View Profile
[Halloween 2016] R.I.P. Boogop
« on: October 28, 2016 »
R.I.P BOOGOP (getting some halloween correlation is really reaching!)

C#, .NET 4, VS2015, SharpMod for music, hopefully most folks will be able to run it without having to install a bunch of cruddy .NET which you probably wouldn't do anyway! No frameworks, only GDI with getpixel/putpixel [pointer] routines and bmp.drawstring. The drawback to doing things that 'oldskool' way is I have to limit the form size to get acceptable performance (particularly for the fractal zoomer), do my own sucky 3D, load my own textures [into int arrays] blahblah.

optimizing assumptions
- must have a doevents each time through the demo loop for the app to behave while rendering
- add is faster than mult (old assumption that may no longer be valid)
- bounds checking gets exponentially worse with 2-dim arrays so use multiples of 1 whenever possible
- switch is faster than if due to jumptable opcodes
- C# is optimized for doubles
- using pointers anywhere but the actual drawing would p-r-o-b-a-b-l-y be slower (much discussion on this exists)
- use bitwise ops whenever possible (&=, >>, <<)

Notes on some of the FX (I really need to get out of the early 90's, man)

- my two problems with fractal zooming is the thing wants to spend longer and longer in the escape-time loop to get resolution at depth, and eventually you run into the limits of a double variable type. After I'd gotten the thing working I dug around in the IL and optimized it based on what I saw the compiler emitting, though I'm guessing on some of the commands (just for kicks I rewrote this in freebasic with ASM for the inner loop, SSE instruction set, and it was slow as crap. But it may be my retarded asm too)
- these are lulzy and look really oldskool if you live in the past like I do
- there's a few of these in here for ball-0-ween lolz
- I'm really pleased with this, I worked the problems out of the one I used in my last demo and tweaked it until it looks close to 'fake demo' by Pelusa which I love
- The problem with these is whatever I do with them they usually end up looking like Tumblin's 94 demo unless you just bounce them around like Scoopex, but that was less interesting
- I liked Argon by Matrix (1997), however this ain't that. I draw three plasmas on top of each other and skip the black values in the color array. What I've done is probably not a true tri-plasma and Argon seems to be doing some blending that eludes me. But even if I translated it directly it wouldn't look the same. STOSW in c# --> lololol
- a modification of the effect I used last time which drew the plasma then rotated the palette. This one attempts to do it in realtime by using values in arrays to redraw the map instead of getPixel each time which is a killer. For some reason this wants to migrate to the bottom right. Meh, palette rotation actually looks better.

skull graphic, palm tree and a few others from some public domain clipart collection I can't remember, openclipart maybe
Music is starlitdeception.mod by Necros. Dude was one of the best trackers ever
Font is some free thing but I call bmp.SetResolution(320, 200) which doesn't affect the actual drawing but causes the font to be rendered in glorious lo-res lol

Challenge Trophies Won:

Offline Rbz

  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 2733
  • Karma: 485
    • View Profile
Re: [Halloween 2016] R.I.P. Boogop
« Reply #1 on: October 29, 2016 »
Runs pretty well here, well done!

It really looks like those amiga megademos from 80's  ;)
Challenge Trophies Won:

Offline Optimus

  • DBF Aficionado
  • ******
  • Posts: 2453
  • Karma: 128
    • View Profile
    • Optimouse Demo Site
Re: [Halloween 2016] R.I.P. Boogop
« Reply #2 on: October 29, 2016 »
Wow, many effects! The triple plasma reminds me of something I did in quickbasic long time ago.
Challenge Trophies Won:

Offline spitfire

  • Amiga 1200
  • ****
  • Posts: 275
  • Karma: 9
    • View Profile
Re: [Halloween 2016] R.I.P. Boogop
« Reply #3 on: November 01, 2016 »
This is great! I always wanted to make a demo that shows the guts of how the effect is done, like how you did with the depth maps.

Offline Shockwave

  • good/evil
  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 17378
  • Karma: 497
  • evil/good
    • View Profile
    • My Homepage
Re: [Halloween 2016] R.I.P. Boogop
« Reply #4 on: November 02, 2016 »
Lots of nice oldschool effects here, I enjoyed it.. Reminded me of good old Amiga effects :)
Shockwave ^ Codigos
Challenge Trophies Won:

Offline Kirl

  • Senior Member
  • Pentium
  • ********
  • Posts: 1207
  • Karma: 230
    • View Profile
    • Homepage
Re: [Halloween 2016] R.I.P. Boogop
« Reply #5 on: November 06, 2016 »
Excellent stuff, lots of cool oldschool goodness! Really loved the flowers for the dead and the fractal zoomer, ran great for me!  :clap:

Living in the past FTW, respect from an ignorant high level future dweller!  ;)
Challenge Trophies Won: