Old 5th March 2010, 13:11   #41
ORB 13
Member
 
Join Date: Feb 2006
Location: South Africa
Posts: 79
@redi jedi: Loading a shader from a text file during runtime will not be easy with XNA. The content pipeline converts all assets into a intermediate form (xnb files) that can be loaded easily. This is done during the build process. See http://forums.xna.com/forums/p/3026/14984.aspx
ORB 13 is offline   Reply With Quote
Old 5th March 2010, 13:55   #42
redi jedi
Will code for food
 
Join Date: Mar 2005
Location: orlando
Posts: 521
@ORB yeah I know, I hit that snag already so I was just gonna do MD1 but it just didn't seem worth it anymore... I just thought it was cool that I had presets loading/running and doing the basic waves/movements on both the xbox and pc... most of the code is just c# so I think I'll offload it to just be a stand-alone ordeal making directX calls... haven't had alot of time lately.

Blah!
redi jedi is offline   Reply With Quote
Old 9th March 2010, 20:50   #43
Nitorami
Major Dude
 
Join Date: Mar 2008
Location: Erlangen
Posts: 856
An approach to tempo recognition

Sorry, it seems I made a mistake and had to withdraw this... hope I still can make it work

Martin

Last edited by Nitorami; 9th March 2010 at 21:08.
Nitorami is offline   Reply With Quote
Old 19th March 2010, 02:21   #44
Amandio C
Senior Member
 
Join Date: Dec 2008
Posts: 400
Just a note about the difference between the 2 MD versions with the integer division operand %.
In previous MD, for example for t=n%10, t changes when the decimal part of n is .5.
In the Beta, t changes when the decimal part of n is 0.
Amandio C is offline   Reply With Quote
Old 21st June 2010, 16:43   #45
Stahlregen
Senior Member
 
Join Date: Feb 2008
Posts: 218
Is it possible that the equal operation is somewhat broken in this release?
I noticed that some of my random switches (in the form of "if(equal(rand(2),1),1,-1)") were broken, and some other stuff that relies on it, like the attached waveform by shifter, won't work anymore, either...
Attached Files
File Type: zip shifter - word waveform.zip (1.9 KB, 491 views)
Stahlregen is offline   Reply With Quote
Old 21st June 2010, 18:01   #46
Nitorami
Major Dude
 
Join Date: Mar 2008
Location: Erlangen
Posts: 856
Hey, Stahlregen ! A rave from the grave ... haven't heard from you in ages!

Actually a few things have changed in the syntax, e.g. as Amandio C found out, certain float - integer conversions... Don't remember the details, you have to look it up in the forum. I think the rounding changed, and whether 1.5 is converted to 1 or 2... that may affect the integer operations as performed with int, % etc.

In shifters preset however the problem is the line

lr = if(sw,lr,rand(10));

I wonder how this ever worked, because rand() is supposed to deliver a float value, not an integer. The next line

let = equal(lr,0)*sa + equal(lr,1)*sb + equal(lr,2)*sc .........

will never deliver anything else than zero because the chance that rand() spits out exactly an integer number like 1,2,3,4, etc. are zero and therefore equal (lr,1) will NEVER be true. The problem is solved easily by changing the line to

lr = if(sw,lr,int(rand(10)));

I don't know where this incompatibility was introduced. Apart from that I must say the compiler has improved a lot, with the introduction of huge arrays, loop processing and simplifications making the code more similar to C .... e.g. instead of x = above (y,2) you may now use x = (y >= 2) as in standard languages. Unfortunately there seems to be no reasonable tutorial.

Martin
Nitorami is offline   Reply With Quote
Old 21st June 2010, 18:18   #47
Flexi
wellspring of milk
Major Dude
 
Flexi's Avatar
 
Join Date: Apr 2007
Location: 54.089866,12.11168,18.75
Posts: 2,058
Send a message via ICQ to Flexi
In the former version the rand() function actually has put out Integers! I have not used it much anyway or i used high multipliers for float value generation - obsolete now. Good find, thanks for pointing out that change.

Welcome back Stahlregen, I'm going to sift through your new presets...
Flexi is offline   Reply With Quote
Old 21st June 2010, 18:32   #48
Stahlregen
Senior Member
 
Join Date: Feb 2008
Posts: 218
D'oh. Should've checked the rand() output. It used to be integers.

Sure enough, using floor() or int() fixes that.

Also, as a curiosity I found while testing, it seems that rand(0) will output the same as rand(1).

PS: You haven't heard from me the last 15 months or so, I think. My interests had wandered off.
Stahlregen is offline   Reply With Quote
Old 3rd October 2010, 23:52   #49
Telek
Member
 
Telek's Avatar
 
Join Date: Sep 2002
Location: Melbourne, Australia
Posts: 95
Wow, it's been ages since I've been on these forums.

Gotta get back up to pace with the latest MD developments!

Great to see Redi Jedi, Flexi, Shifter and ROVASTAR still on here.

Telek Sterling
Dilettante Extraordinaire
Telek is offline   Reply With Quote
Old 13th December 2010, 15:36   #50
Zylot
Major Dude
 
Zylot's Avatar
 
Join Date: Jul 2001
Location: Pa, US(of)A
Posts: 803
yeah this place never dies... oldskoolers and new folks are always poking around. Good to see some other legends have returned as of late.

-------------
What do you wish for?
--Instrumentality
Zylot is offline   Reply With Quote
Old 10th March 2018, 09:51   #51
Virtual Self
Junior Member
 
Join Date: Mar 2018
Posts: 29
Quote:
Originally Posted by Zylot View Post
yeah this place never dies... oldskoolers and new folks are always poking around. Good to see some other legends have returned as of late.
I think so too. : Winamp:
Virtual Self is offline   Reply With Quote
Old 10th March 2018, 10:06   #52
Telek
Member
 
Telek's Avatar
 
Join Date: Sep 2002
Location: Melbourne, Australia
Posts: 95
Haha!
Well, welcome to 2018! Where I haven't had WinAmp installed for years and I didn't remember my forum password!

Telek Sterling
Dilettante Extraordinaire
Telek is offline   Reply With Quote
Old 11th March 2018, 18:08   #53
Flexi
wellspring of milk
Major Dude
 
Flexi's Avatar
 
Join Date: Apr 2007
Location: 54.089866,12.11168,18.75
Posts: 2,058
Send a message via ICQ to Flexi
hehe, welcome! (:
Flexi is offline   Reply With Quote
Old 5th June 2018, 23:45   #54
zerowaitstate
Junior Member
 
Join Date: Aug 2008
Posts: 21
Hi all, i appreciate the effort you guys contribute to MD, its a tool i have used for a few decades almost now.

With the ability to run spout MD out put can now be pulled directly in to VJ app such as Grand VJ and resolume etc. this has been on my wish list for so long.(it really makes integrating live feed so much cleaner,

the only thing i could possible hope for now is the ability to revers a visual, is there any way this can be achieved, IE streaming output into a 10-20 second buffer (that can then be scrubbed back and forward as desired.?)
zerowaitstate is offline   Reply With Quote
Old 25th June 2018, 12:21   #55
hatecubed
Junior Member
 
Join Date: Sep 2016
Posts: 32
zerowaitstate, I spent some time recently looking into options for saving/streaming MD in this way, though my notes are on the other computer (and unfortunately my 'actual' job takes up more time than I'd care to admit)... I'll see if I've got anything noted that may help.

But be warned, I'll probably ask you for help when I re-visit Spout
hatecubed is offline   Reply With Quote
Old 1st August 2018, 10:27   #56
myphamlinhhuong
Banned
 
Join Date: Jul 2018
Posts: 1
How to use MD2 replace MD1 flexible and choice best option for plugin replace it.
myphamlinhhuong is offline   Reply With Quote
Old 4th August 2018, 15:08   #57
En D
Junior Member
 
Join Date: Aug 2018
Posts: 15
i lost a lot of presets in the past well i released two presets packs that were half and they're gone and lazily scripted and totally lame some of them i could not see the shaders in project m because project m on linux has no shaders nor nothing im waiting for butter churn to release a feature to input your own presets onto your computer
En D is offline   Reply With Quote
Old 4th August 2018, 15:09   #58
En D
Junior Member
 
Join Date: Aug 2018
Posts: 15
Quote:
Originally Posted by En D View Post
i lost a lot of presets in the past well i released two presets packs that were half and they're gone and lazily scripted and totally lame some of them i could not see the shaders in project m because project m on linux has no shaders nor nothing im waiting for butter churn to release a feature to input your own presets onto your computer
i had to guess all the what would be the outcome
En D is offline   Reply With Quote
Old 1st February 2019, 05:39   #59
Telek
Member
 
Telek's Avatar
 
Join Date: Sep 2002
Location: Melbourne, Australia
Posts: 95
Why should I think this isn't spam, and a dodgy website?

Telek Sterling
Dilettante Extraordinaire
Telek is offline   Reply With Quote
Old 9th June 2019, 19:01   #60
IssaMe
Junior Member
 
Join Date: May 2019
Posts: 4
I wished that syntax changes over time were better documented/listed.

I recently revisited MilkDrop after a long hiatus (still trying to get assistence to get my original forum account revived but that's a different story) and before I realized this forum still was live to get some nice presets apart from the included ones, started out by getting the collections from SourceForge and Archive.org. In doing so I discovered these contain a lot of crap/duplicates/malformed/corrupted presets so decided to skim the threads here to get the originals.

To my surprise I found that some presets did absolutely nothing or looked like attempts of a two year old at drawing despite the comments from fellow posters raising the expectation said presets were above average.

Purely by accident I discovered some syntax difference between subsequent releases of the same preset and lo and behold, after applying those same changes to those presets I found to be "broken", these suddenly lived up to the praise given by fellow posters in the respective topics...

e.g. the change from
code:
num_instance
to
code:
num_inst
was an eyeopener. Also it seems that
code:
rand(whatever)
should now be written as
code:
int(rand(whatever))
. Both latter forms I've seen occur in a lot of presets but until now I never knew why... which means I have again a shitload of work ahead of me going through all presets and adjust where needed to see what difference this makes...

Had I known this from reading these forums, it might have saved me from discarding a bucket load of presets as non-functional or as amateurish attempts.
IssaMe is offline   Reply With Quote
Old 13th June 2019, 20:45   #61
mancoast
Junior Member
 
Join Date: Dec 2015
Posts: 5
Hello everyone. I see a few mentions of projectm in this sticky thread so I hope to add my two cents and continue the dialog here. Leveraged milkdrop for many years, then I got involved with projectm a few months back and modernized windows support. I am looking to communicate with those that understand the preset design process for Milkdrop so we can make it happen for projectM.

on a tangential note, Its actually quite wild how the Xbox release of projectM operates, (HLSL to GLSL transpilation in libprojectM, then OpenGLES to DirectX transpilation using Angle for Xbox) but it works great! As a dev team, we are now starting to figure out what is next for this and I think we need more presets! I am curious, how are these presets developed? Are there any active preset developers that are still here on this board?
mancoast is offline   Reply With Quote
Old 16th June 2019, 12:05   #62
Nitorami
Major Dude
 
Join Date: Mar 2008
Location: Erlangen
Posts: 856
@IssaMe

Agreed, the behaviour of rand() has silently changed and broken a number of presets. As regards variable names, I always limit them to 8 characters, which seems to be safe.
These incompatibilities may have sneaked in with the integration of ns_eel language features into milkdrop. This is poorly documented - it took me quite a while to understand how to get a while() loop working - but it was a major improvement. Unfortunately introduced rather late, and not many preset authors really took advantage of the new features.

@ mancoast

What do you mean by "understand the design process" ?
Nitorami is offline   Reply With Quote
Old 16th June 2019, 23:18   #63
JarC
Junior Member
 
Join Date: Jun 2000
Posts: 3
Send a message via ICQ to JarC
@Nitorami

IssaMe here, I finally got my old account revived so will use this one from now on.

I've come across several presets that were specifically made for ATI/NVidia cards. I still have an old Radeon HD 6950 and of the few GPU specific presets I've found, both the ATI/NV types seem to work fine on my ATI card... however, contrary to the mentions presets may not always work on ATI cards, I've had more issues with the GeForce 210 (really old) on my wife's computer (apart from presets requiring shader 4.0 which always freezes my MD for a short period)

I'm currently facing a forced hardware change as one of the monitors died, and from the looks of it this also means I'll be forced to update the GPU...I will probably again end up going with an AMD GPU but on the off chance I'll end up going with an NVidia GPU, is there a list of functions/calculation methods that will likely cause presets to not show as intended? I'll need to recheck which presets but I've encountered several that gave error messages on the NVidia card even though the presets seemed to show the same as on my ATI card.

Raj
JarC is offline   Reply With Quote
Old 17th June 2019, 22:12   #64
Nitorami
Major Dude
 
Join Date: Mar 2008
Location: Erlangen
Posts: 856
Raj

I'm not an expert on this. Issues I am aware of:

1. Shader model 1, used by most older presets, allows 64 instructions, but the number of instructions generated depends on the compiler. It may happen that the preset compiles to 63 instructions on a specific test setup, but to 65 on another, in which case it would throw an error. This can easily be resolved by changing to a higher shader model.

2. Shader model "4" (version number in the milk file) would allow 1024 instructions, but this only seems to work on NVidia cards, and not even all of them. With ATI cards, you may just see a black screen. Probably a MD bug. Try it out by setting the lines
PSVERSION=
PSVERSION_WARP=
PSVERSION_COMP=
to "4" in the milk file.

Other than these, I have not encountered any specific functions which work on one card but not another.

Cheers
Martin
Nitorami is offline   Reply With Quote
Old 7th July 2019, 12:39   #65
mancoast
Junior Member
 
Join Date: Dec 2015
Posts: 5
Greetings @Nitorami

Sorry for getting off-topic, but I want to better understand the preset design process, and implement a design studio element into the library of libprojectM, primarily so my kids can play it on the Xbox. Are you the same martin that I see as author of many presets? Do you have any presence on GitHub?

Also, I am curious from the preset designers lens, does projectm need anything fixed for full compatibility with your MilkDrop designs for 5.57beta?
mancoast is offline   Reply With Quote
Old 8th July 2019, 18:35   #66
Nitorami
Major Dude
 
Join Date: Mar 2008
Location: Erlangen
Posts: 856
Hi mancoast
Quote:
Are you the same martin that I see as author of many presets?
Yes.

Quote:
Do you have any presence on GitHub?
No. I'm just a hobby programmer who happened to stumble across milkdrop ten years ago.

Quote:
does projectm need anything fixed for full compatibility with your MilkDrop designs for 5.57beta?
Well, I can't tell. I am exclusively using winamp/milkdrop under win10 and and honestly had no need to try projectm.

Quote:
I want to better understand the preset design process
Well, I bet that most presets out there were created simply by smashing the A key, followed by S when the result seemed ok. Milkdrop's block architecture using separate functional blocks for waves, shapes, warp and comp shader was obviously designed with the goal to enable easy "mashups", and is probably the major reason why we now have some 50000+ presets. Making new presets just requires no artistical neither programming skills whatsoever. The downside is that many presets are not particularly original or interesting.

Of course there were/ are preset authors who wrote their own genuine code, and some of them certainly put countless hours into it. What can I say ? I personally always tried to make something new, a 3D effect or just something which does not look "like milkdrop". The possibilities are very limited, we have waves and shapes which can only be rotated around only single axis; and we have warp and comp shaders which do not support a geometry, i.e. no z-axis, just a flat mesh. This results in truly painful limitations.
My own work all revolves around the desire to overcome the limitations imposed by this simple concept, and to make something which had not previously been considered possible with milkdrop. I gradually learned how shaders work, but my attempts often ended with frustration because I had not understood the limitations yet, and consequently things did not work out the way I had imagined.
Now, by years of experience, I know quite well what can be done and what not. But other than that, there is absolutely no design process I followed.
Nitorami is offline   Reply With Quote
Old 9th July 2019, 12:03   #67
neebster
Junior Member
 
Join Date: Jan 2008
Posts: 28
Quote:
Originally Posted by Nitorami View Post
No. I'm just a hobby programmer who happened to stumble across milkdrop ten years ago.
Martin if you don't mind, may I ask what your profession is? If you're not a professional programmer and just a hobbyist, how are you so good at it?

You've always been an inspiration and I only ask this out of curiosity as someone who is changing careers and self-learning coding (albeit just JavaScript and web development frameworks).
neebster is offline   Reply With Quote
Old 9th July 2019, 21:06   #68
Nitorami
Major Dude
 
Join Date: Mar 2008
Location: Erlangen
Posts: 856
Hi Neebster

Thanks for asking; I am an electrical engineer, and learned programming with a beautiful language: Pascal. It was always self-learning to me, and I never abandoned it. My interest was always more on algorithms than applications, user interfaces or communications... the web ! - oh leave me alone.

I discovered milkdrop by chance. With programming skills rusty and hopelessly outdated, the wysiwyg way to program shaders - which I never had heard of - was just overwhelming. I had had no clue things like that were possible.
I got into it, by tinkering, try and error, self learning, a lot of patience and perseverance. The mathematical background from the studies was certainly helpful, notably for the spatial rotations and matrix operations in pixies party. But with hindsight, fascination and perseverance were probably the main factors. I spent far more time with milkdrop than what most others would consider sane... and guess that is it, more or less.

Best
Martin
Nitorami is offline   Reply With Quote
Old 14th July 2019, 13:50   #69
neebster
Junior Member
 
Join Date: Jan 2008
Posts: 28
Thanks for your candid reply, good to get to know one of the most prolific preset authors a bit better
neebster is offline   Reply With Quote
Reply
Go Back   Winamp & Shoutcast Forums > Visualizations > MilkDrop > MilkDrop Presets

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump