|
![]() |
|
Thread Tools | Search this Thread | Display Modes |
|
![]() |
#1 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
Zylot - The Complete Collection (Remastered, Retouched, Redone)
Hey Kids, ever dare to venture into the presets of old, and then wince in dismay? Things don't fade to black, colors are muted, the wrong bitwise operators are used, and there's no pixel shaders for miles?
I know, terrible, but fear not, because some have been spared. Don't just take my word for it though! Visit the full album to see some examples of the changes. So what's in the zip? --> Every preset I made that isn't a remix. --> Except some that couldn't be saved or weren't unique enough to be included. --> Enhanced with only the most basic of shaders (in most cases), corrected for bad decays and with fixed maths. --> A small number of new presets based off old ones. It's a collection of old-style presets for the modern day, bright and colorful and working correctly. Instructions: --> Find the presets that begin with Zylot - and.. if they aren't remixed (Zylot & [some awesome guy]) delete them. --> Download the zip --> Extract into your preset folder. --> Load milkdrop, view the presets, be underwhelmed. Don't expect anything jaw dropping, folks, that's for later if I can git gud with the shaders. This is just an attempt to preserve some history and salvage some forgotten maths. There are a few treats here and there, and some presets have undergone some big changes to get them looking more like what I was going for before I had the tools and knowledge I do today. Enjoy. -Zy ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#2 |
Junior Member
Join Date: Oct 2017
Posts: 15
|
Thank you for updating your Milkdrop legacy projects. The list of media players and devices that have Milkdrop compatible plugins is quite impressive & is a tribute both to the brilliance of the architecture & to the artists who willing tortured themselves with the hours upon months it took to learn how to make brilliant living, reacting artwork.
A few months back, I moved all the Milkdrop files onto a couple of USB drives and started to 'sort' through them. The biggest challenge is weeding out the duplicates. I've found software that will identify byte-for-byte clones, but that still leaves what I consider the occasional needless tweak by a novice tinker-type that that destroyed the original art, equivalent to what you'd expect the Mona Lisa to look like after a pair of six year old 'artists' finger painted a moustache, bushy eyebrows & a beard on the canvas. And I quickly add that I could not do much better with my limited knowledge and experience with the programming of Milkdrop presets. But I digress.... My original goal was to sort & categorize the 40,000+ milk files into meaningful groups, such as MTV (Moving Toward Viewer), MAFV (Moving Away From Viewer), TUNNEL, NBA (Non-Beat Aware), STROBE, LAT (Lateral Move), SCENE (like Martin's Planet series), WET, KAL (Colored Petals, Kaleidoscopic Patterns). Identifying missing texture files could be a whole lot easier if the error message was more specific. I've been using grepWin to search for sampler_ which is a lot easier than Notepad'ing each milk file. Long, long ago, I retired from club dj'ing. More recently, I've retired from my final career of 26 years, churning out business code. With faster computers & video, Milkdrop renderings look absolutely brilliant with decent screen capture software. My chosen hobby is the creation of music videos to accompany remixes of songs that have been relevant to my life and several of my You-Tube uploads were generated with the help of Milkdrop. Your nom-de-plum was on my first short list. Full-blown retirement and depending on a future lottery windfall really sucks, but I'm sure I could afford a beverage or two of your choice if you'd ever wander close by. Cheers & thank you for being a brilliant devoted artist nerd. Have you ever tabulated how many hours Zylot.zip took to create over the years? |
![]() |
![]() |
![]() |
#3 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
Including the non-included... a great many hours. I started so many years ago that it's impossible to estimate.
I can say that it took a good number of hours updating everything for this zip since I started a few weeks ago but I can also say that the better chunk of that was waiting for presets to save and delete. MD does not handle a directory full of "every preset ever(tm)" very well that's for sure. In hindsight, I should have gotten what I needed from the archive and then moved everything except for my stuff until the work was done, well.. what's done is done. Since you mentioned remixes, though, yeah back in the day we had a system where you'd [Original Author] [+/And/&] [Your name] - [preset name] which seems to mostly be followed, but I did see a ton of the presets I made with nz+ behind them. I don't know what they are and I normally don't want to shit on someone's work but they just seemed to be random stuff slapped on top of flashing lights and more random stuff. Can anyone clue me into what was going on there? Now that my work is done I need to prune the "all presets ever(tm)" down to a list MD can handle and include the presets that seem to involve an artist sitting down and doing work instead of random mashups. Then I can start looking through pixel shaders to figure out what I'm missing about them because I'm certainly missing something. ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#4 | |
Major Dude
Join Date: Mar 2008
Location: Erlangen
Posts: 942
|
Ouch, this stuff is thoroughly back to the basics ! But I must admit some code tricks are quite puzzling, it took me fifteen minutes to understand how you did the musical spectrum in 3D without even using waves.
The naming system is still in place, but requires reading the authoring guidelines, which not everyone did, apparently. Kids nowadays have so many distractions at their disposal, they want instant success and then move on; consequently they mash a few things up overnight, advertise it as the hottest shit ever conceived, and piss off never to be seen again. Some guys here delivered 100+ presets in a single night. Back to the naming system, it is flawed anyway; it is voluntary, and after a few mashups of mashups of mashups and Hit-the-A-key-orgies it is really rather impossible to determine the original author. I myself, having done this shit for ten years, usually recognise my own shader code or fragments thereof immediately, and I can tell you that a LOT of presets are using it, with or without adding my name. In your presets for instance I can spot it in the True Visionary, Sound Plays the Sight, Heaven Bloom and a few others. At least you are aware, as you added a note in the code. But frankly I don't bother, and I prefer to move on to make something new anyway, as I tend to get bored by static effects rather quickly. Quote:
|
|
![]() |
![]() |
![]() |
#5 | |||
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
Quote:
Of course, I'm the kind of person who will say that there's nothing wrong with basics. Does it look good? Is it colorful? Does it react to the music in a delightful way? Then it's a good preset in my book, and that goes for anyone's work not just mine. Quote:
Quote:
In a warp shader and composite shader that doesn't happen. I'm missing the relationship between what's being shown and what it's doing, and I'm stumped on getting something to look the way I want often. As fun as changing a .8 to a .7 and hoping that works is.. I need to actually sit down and figure it all out so I can get to where I want to be quicker and with less head scratching. I decided to wait on that until I was done with this project though, as these presets couldn't drift far from their origins or it would defeat the purpose. The time to learn must coincide with the time to present something new. ------------- What do you wish for? --Instrumentality |
|||
![]() |
![]() |
![]() |
#6 | |
Major Dude
Join Date: Mar 2008
Location: Erlangen
Posts: 942
|
Quote:
http://forums.winamp.com/showpost.ph...2&postcount=11 In case you aren't aware, there have been other amendments to milkdrop in the past years, apart from the shaders. Previously there was only one shape per shape section, now it is 1024. And in 2010, Benski added the the ns-eel language extension which also opened up a whole lot of new possibilities in the normal coding section, not the shaders. |
|
![]() |
![]() |
![]() |
#7 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
Yeah let's talk about those shape instances. Fuck 'em, lol.
I got exceptionally miffed during one of the revamps when it turns out that the code merely runs once and applies to all the instances, meaning rand([numbers]) is the same for all instances. Then i got extra mad about it when the instance value did not work in logical ifs, thus further ruining all my fun. I'm exaggerating a bit but I was a bit disappointed. ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#8 | |
Major Dude
Join Date: Mar 2008
Location: Erlangen
Posts: 942
|
Quote:
if (instance ==0, do something, do something else); But the best way to handle this is normally to calculate all shape positions in the per frame section in a loop and to store them to the gmegabuf array. Then in the shape section all you need to do is to read the array and assign the values to x and y accordingly. n = 0; loop (100, gmegabuf(2*n) = rand(1); gmegabuf(2*n+1) = rand(1); n +=1; ) |
|
![]() |
![]() |
![]() |
#9 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
I see, I was just hoping they'd work with Milkdrop's original shizz.. IE:
diff = .01; x = if(above(x,1+.1*instance),0,x+diff); To drift off variance between instances as time goes on, but they always returned to 0 at the exact same time. Guess it requires a bit more effort, something I'll look into. Thanks for letting me know I wasn't chasing the impossible dream. ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#10 |
Major Dude
Join Date: Mar 2008
Location: Erlangen
Posts: 942
|
The issue with that code is that native variables such as x ynd y are meant to be written OUT, and they are not remembered from one instance to the next. You should use your own variables e.g.
x0 = if(above(x0,1+.1*instance),0,x0+diff); x = x0; |
![]() |
![]() |
![]() |
#11 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
Oddly... I actually tried that and it didn't work. It's what led me to believe it was the instance value in the first place, but maybe I was tired and only thought I did? It's more likely then one would think these days!
I'll check when I stop writing code for money and start writing code for fun again later today. ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#12 |
Member
Join Date: Jul 2004
Location: Mt. Gambier, South Australia
Posts: 89
|
Rock on Zylot!!
![]() |
![]() |
![]() |
![]() |
#13 |
wellspring of milk
Major Dude |
ohai, welcome back. I just wrote about how I used gmegabuf and instancing in another thread. Take care! http://forums.winamp.com/showthread....47#post3152547
|
![]() |
![]() |
![]() |
#14 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
Thanks for the resources and well wishes guys, maybe just maybe we'll see something new from this old timer after all.
Oi, Martin, I did verify that I did in fact remove the flat x from the code and replaced it with variables prior and it didn't work, but if I take the parts where it references instance out of the if and throw it elsewhere it suddenly functions fine. So, looks like it's fun with gmegabuf if I want to get the sort of thing working that I want, time to knuckle down and get to work. ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#15 |
wellspring of milk
Major Dude |
I was thinking about what you said about learning shaders. There are some good online tutorial for creative coders. Check out https://thebookofshaders.com/
|
![]() |
![]() |
![]() |
#16 | |
Senior Member
Join Date: Sep 2016
Posts: 120
|
Quote:
which looks to be very helpful to noobs like me. Also, I'm sure Martin is glad to have some non-noobs here again to talk shop, lol. ![]() |
|
![]() |
![]() |
![]() |
#17 |
Junior Member
Join Date: Mar 2018
Posts: 30
|
I'm glad you update your old works. I appreciated. Well, do you intend to do completely new works? We are talking about Zylot and the expectations are quite high.
|
![]() |
![]() |
![]() |
#18 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
If you have high expectations then you haven't been paying attention
![]() Nevertheless, that's the final step. In between that is brushing up and getting gud. ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#19 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
Here I am, putting things together... slowly but surely.
------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#20 |
Major Dude
Join Date: Mar 2008
Location: Erlangen
Posts: 942
|
Bog standard but quite pleasant to watch.
What is the meaning of 0|x in wvaes 2 ? The logical "or" operator is usually "||" y = .5+(0|(((value1+value2)*.5)*3))*.001; |
![]() |
![]() |
![]() |
#21 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
Bitwise OR, we used it back in the day for shenanigans you couldn't otherwise get away with..
It's usable anywhere except in pixel shaders. There's also & for bitwise AND. ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#22 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
...and now for something completely different.
Fixed the other preset by emptying gmegabuf in init since it seemed to persist from preset to preset. ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#23 |
Member
Join Date: Sep 2014
Location: World
Posts: 98
|
An old stager finally shared something (I mean the beginning of the year 2000).
I wanted to see more magical things. On the other hand, I liked the three presets in this package. These are: - Fusion (Spinner mix), - Dance of Lights, - Your musical Spectrum in 3d ( awesome effect! ![]() Radiance, Funnels, and Crossing Over are my favorite presets from your old package. Also, I think you will quickly adapt to the warp and composite shaders. ![]() |
![]() |
![]() |
![]() |
#24 | |
Major Dude
Join Date: Mar 2008
Location: Erlangen
Posts: 942
|
Quote:
Doing bitwise operation on a float will produce rather garbage if applied straightaway, e.g. to an IEEE float representation. But it seems that MD is not quite stupid and in such cases does a float->integer conversion first. In your 0|x construct, the 0 does nothing apparently, but the bit operator tells MD to use integers. 0|x appears to be equivalent to int(x). The snake is not moving continuously; shouldn't it ? It rather goes step by step, and sometimes makes long pauses. Heck, what protracted code... I understand that you need collision detection and what not, but have you considered to proceed the snake in the megabuf simply by a memory copy e.g. memcpy (destination, source, number_of_values)? |
|
![]() |
![]() |
![]() |
#25 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
Thanks for the detailed post!
Re: The Snake memcpy, I had no idea this was a thing, now I do. The choppy movement: on purpose. It was originally smoothly choppy (IE: moved every X frames vs the motion of it's parts which degraded based on distance from the head (in increments of five frames)) but then I added some variance to make it more unpredictable and.. well.. bad. Like the unreliable performance of an older game. In theory, you could remove the frame%val code and get it to move every single frame. It'd be quick, and smoother, but not the effect I wanted. My code is bad: Yeah it is. ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#26 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
I've got nothing but time to figure stuff out and toy around.. but work is work and it's always gotta get in the way.
Fixed: Snake Game - fixed borked collision, collision works right now. New: Snake 2 Hypersnake - for those wot like faster snakes and all that. Two new modifications of true visionary, which is me figuring stuff out. ------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#27 |
Junior Member
Join Date: Mar 2018
Posts: 30
|
"Snake 2 Hypersnake.milk" was loved. ^,^
|
![]() |
![]() |
![]() |
#28 |
not fucked, not quite.
(Forum King) |
I wish I had seen this when you released it. Might try these out later, I just downloaded 52k presets that someone archived. All the old ones of mine look terrible now.
I wish I'd actually taken the time to understand more about the math behind these, I was just typing random shit until it looked cool. I miss this place. |
![]() |
![]() |
![]() |
#29 |
Major Dude
Join Date: Mar 2008
Location: Erlangen
Posts: 942
|
It has become a fairly lonely place
|
![]() |
![]() |
![]() |
#30 |
Junior Member
Join Date: Feb 2020
Posts: 22
|
This is awesome! Thank you for updating and collecting your work together. Will be fun to mash up with some fresh presets.
A few months back I used NestDrop to inject a 3D animation render into your preset: "Zylot - In death there is life (Wrong Portal mix).milk". Here is the result. https://www.jasonfletcher.info/vjloops/#series-of-tubes |
![]() |
![]() |
![]() |
#31 |
Major Dude
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 804
|
Yeah, I suspect that the move to all all this extra portable super streamable music leads to less people even needing winamp, which means less people to accidentally stumble upon right clicking the equalizer and wondering what "start visualization" means.
------------- What do you wish for? --Instrumentality |
![]() |
![]() |
![]() |
#32 |
Member
Join Date: Oct 2018
Posts: 69
|
my mashedup versions :
Attachment 54459 Zylot - True Visionary (Go Further Back) - Serge - Mashpotato 2.milk Zylot - True Visionary (Go Further Back) - Serge - Mashpotato 3.milk Zylot - True Visionary (Go Further Back) - Serge - Mashpotato 4.milk pretty epic to my eyes ![]() Last edited by serge000; 11th August 2022 at 05:06. |
![]() |
![]() |
![]() |
|
Tags |
presets, remastered, zylot |
Thread Tools | Search this Thread |
Display Modes | |
|
|