Old 29th May 2008, 21:02   #1
Phat
Major Dude
 
Phat's Avatar
 
Join Date: Nov 2003
Posts: 940
Some milk 2 stuff cuz I was bored

Some stuff I've been working on...

http://www.eos4life.com/mp3s/SnowBall_WeirdHOp_23.mp3
http://www.eos4life.com/mp3s/Odd%20Hop_11.mp3
http://www.eos4life.com/lost2007_hires_xvid.avi
Phat is offline   Reply With Quote
Old 30th May 2008, 10:49   #2
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
you're back or what?
Flexi is offline   Reply With Quote
Old 30th May 2008, 17:07   #3
Phat
Major Dude
 
Phat's Avatar
 
Join Date: Nov 2003
Posts: 940
Um, I might toss a few things into Milkdrop 2 with Eo.S..... (Even though I still think my best work will always be in Redi Jedi's beta...)

Why is 'being back' even an issue? Milkdrop's just a vector for artistic expression anyway... I doubt I'm going to be too active.
Phat is offline   Reply With Quote
Old 30th May 2008, 17:23   #4
Phat
Major Dude
 
Phat's Avatar
 
Join Date: Nov 2003
Posts: 940
Anyway, what a gruff 'welcome back'... lame
Phat is offline   Reply With Quote
Old 30th May 2008, 20:41   #5
51Strong
Member
 
Join Date: Jan 2006
Posts: 80
Welcome back man.
Great Work on the .avi and md2 presets.
Hope to see more.
51Strong is offline   Reply With Quote
Old 30th May 2008, 22:47   #6
Saint Goody
Senior Member
 
Join Date: Apr 2008
Location: Somewhere in Southern Indiana
Posts: 184
Nice work, play around with shaders some more. They might turn you around. There are some very powerful possibilities with Pixel Shader 3.

I am the purple heathen.
Saint Goody is offline   Reply With Quote
Old 30th May 2008, 23:37   #7
Phat
Major Dude
 
Phat's Avatar
 
Join Date: Nov 2003
Posts: 940
pixel shader 3 is powerful, but it's much more powerful when I'm free to use pixel shaders anywhere in the pipeline http://www.eos4life.com/visuals/apophenia.avi http://www.eos4life.com/visuals/bassfaery visual in progress.avi . Pixel shaders in milkdrop doesn't bring back the functions I most benefitted from that were in the milkdrop beta
Phat is offline   Reply With Quote
Old 31st May 2008, 00:03   #8
Saint Goody
Senior Member
 
Join Date: Apr 2008
Location: Somewhere in Southern Indiana
Posts: 184
ah well.

MD2 just needs to have it's source code released.

I am the purple heathen.
Saint Goody is offline   Reply With Quote
Old 31st May 2008, 08:23   #9
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
howie, you're sensitive - but that's okay

i very appreciate your tracks, they excited my center of my taste in music
being back is an issue? - you made one of it (:

anyway, let's say it in easy words:
welcome back

Flexi is offline   Reply With Quote
Old 31st May 2008, 11:24   #10
hexcollie
Senior Member
 
hexcollie's Avatar
 
Join Date: Feb 2008
Location: Rochester, Michigan
Posts: 177
Send a message via AIM to hexcollie
Hi...my name is hex, and I'm a MD-aholic. Welcome back to your home away from reality!! Your presence is inspiring,and another brilliant mind's perspective feeds the evolution of expression from all of the active authors,whom are very talented! The recent presets and shaders have come so far from the initial release of MD2 that the program has been able to move in an entirely profound direction in comparison to all previous versions.

In short... You're wanted back

^_^ Don't Panic!! ^_^
hexcollie is offline   Reply With Quote
Old 31st May 2008, 19:27   #11
Phat
Major Dude
 
Phat's Avatar
 
Join Date: Nov 2003
Posts: 940
Whatever, I was just trying to get a rise out of ya! Well it's just people have been using our older code in some stuff... Also, it's good to have good clean presets to use as compositing layers in other single frame artworks...
Phat is offline   Reply With Quote
Old 31st May 2008, 19:34   #12
redi jedi
Will code for food
 
Join Date: Mar 2005
Location: orlando
Posts: 521
Quote:
Pixel shaders in milkdrop doesn't bring back the functions I most benefitted from that were in the milkdrop beta
I wish someone would tell ryan that! I've had to resort to trying to rebuild it from scratch..

Blah!
redi jedi is offline   Reply With Quote
Old 31st May 2008, 20:02   #13
Saint Goody
Senior Member
 
Join Date: Apr 2008
Location: Somewhere in Southern Indiana
Posts: 184
We should go raid geiss's place of living!

Ha. Or we could start a petition to get the source released or at least include the updates in a new release.

Wow... I'm being halfway serious for once...

Anyway, I'm finding lots of potential JUST in the pixel shaders. Look around for Nitorami's (martin's) presets to see some good examples of what can be done with pixel shaders in milkdrop.

I just recently got heavily into pixel shaders, and I'm pretty damn pleased to have the capability in milkdrop even if it could use more capability as phat says.

I am the purple heathen.
Saint Goody is offline   Reply With Quote
Old 1st June 2008, 01:59   #14
Phat
Major Dude
 
Phat's Avatar
 
Join Date: Nov 2003
Posts: 940
Hello hexcollie, sweet. Although I might not be the most active person here for a while.
Phat is offline   Reply With Quote
Old 1st June 2008, 02:01   #15
Phat
Major Dude
 
Phat's Avatar
 
Join Date: Nov 2003
Posts: 940
Well there are a few very obvious aesthetic things. Firstly not having a mirror texture wrap is pretty damming... There are other things along the same lines.
Phat is offline   Reply With Quote
Old 1st June 2008, 08:25   #16
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
getPixel(frac(uv)) is an easy workaround to the mirroring issue - had to deal with it too.
Flexi is offline   Reply With Quote
Old 1st June 2008, 11:41   #17
Phat
Major Dude
 
Phat's Avatar
 
Join Date: Nov 2003
Posts: 940
Yea, but is that going to work in each individual shape?
Phat is offline   Reply With Quote
Old 1st June 2008, 14:31   #18
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 i remember. there were some cool features in the beta.
in principle you can rebuild all texture effects with shaders - but this will munch some serious operations
Flexi is offline   Reply With Quote
Old 1st June 2008, 18:57   #19
Phat
Major Dude
 
Phat's Avatar
 
Join Date: Nov 2003
Posts: 940
Eo.S. seems to disagree with you there. She says there would be no way for the pixel shader to know where the shape is, or where it's center point would be. Maybe there would be a way if the shape was all one color maybe, but then you'd only have 256 different positions, I believe.

If you have some better ideas I'd love to hear them, or rather, see them.
Phat is offline   Reply With Quote
Old 2nd June 2008, 10:23   #20
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
ok, i have to agree: image freezing might not be doable with shaders. but shifting/scaling/rotation can be reproduced in some short equations. ( trust me, this is cool - you can mirror and warp at the same time!)
you can pass some vectors via the q variables to the warp shader like position and angle (or you code them hard in there). the tricky part is to keep the aspect ratio, but all in all you have more and more direct control than ever. see my 'ferny ernie' preset - i know it's a bad example cause i did'nt care much about the aspect ratio issues, but it points in the direction (sine and cosine values are calculated in the per-frame section, while the position and scaling factors are fixed in the shader - and it uses 5 replicants of its own) - maybe i will go find out about dealing with aspect-aware shape rebuilding, but i am convinced you can do that too

and on the other hand, shapes are still a very powerful tool - did you notice the multi instance feature?

best to be viewed at an aspect ratio of 4:3
Attached Files
File Type: milk flexi - fractrip.milk (13.3 KB, 263 views)
Flexi is offline   Reply With Quote
Old 3rd June 2008, 09:44   #21
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
look there

replace the 'uv_orig' by 'uv' in the first line of the warp shader and see the difference with an additional warp.

and you have full control, which color channel is additive and which not, and and and...
Attached Files
File Type: milk aspect-aware texture mirror shader example.milk (11.5 KB, 352 views)
Flexi is offline   Reply With Quote
Old 3rd June 2008, 12:12   #22
redi jedi
Will code for food
 
Join Date: Mar 2005
Location: orlando
Posts: 521
The only way to have the pixel shader know where the shape is is to have its per frame code in the main presets perframe then pass all the output variables both to the shape and to the pixel shader... of course you still have to rebuild the shape creation algrothyem(ie build the shape from the center, radius, number of sides) then you could have a "mask" to operate on, but even then your not going to get the Image holding feature.. or re-centering of the texture on the shape. NOR will it allow you to render the shape/wave "pre-warp" or in the background..

and no manner of pixel shader magic will recreate the Sound(min,max) function.. I really miss that one..

About wrap modes:
Quote:
getPixel(frac(uv))
this is a regular wrap, not a mirror... I'm sure theres a way to make a mirror, but thats not it... any idea how to mirror(or even wrap) on one axis but not the other(wrap x, clamp y)? ....How about wrap x and y, then do a video echo oriented on the y axis and mirrored on the x with a half translucent shape mirrored on x and wraped on y?

the user control keys where kinda nice, but not used much so I can stand them not being there..

page up, page down in code editor anyone?


Don't get me wrong, the sharers are freaking sweet... I just don't understand why good usable features where left out, after they had been tested and people where using them...

Plus I would have done sharers differently... additional pixel shaders for each shape and wave, plus vertex shaders for the points of the shape/wave(Irregular shapes!!)

@Phat:
Quote:
Maybe there would be a way if the shape was all one color maybe
Speaking of that, if you make the shape all white, full opacity in the pixel shader you can do a test for full white pixels and replace them with the pixel from a texture effectively giving you a "peep hole" into an underlying world.. very interesting effect... although as E.OS. pointed out you have no data on the center/raduis/ang of the shape...

Blah!
redi jedi is offline   Reply With Quote
Old 3rd June 2008, 16:12   #23
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
i don't mean to let the shader know where the shape is - i speak of letting the shader do, what the shape did before.

and i could also point you to the shader equation for mirroring on any axis - but it's even more fun to let you do it as homework (we can compare our results next weekend - this is plain geometry)

Quote:
any idea how to mirror(or even wrap) on one axis but not the other(wrap x, clamp y)?
getPixel(float2(frac(uv.x),saturate(uv.y))); ???

hf
Flexi is offline   Reply With Quote
Old 3rd June 2008, 19:16   #24
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
code:
uv *=4;
float2 m = floor(frac(uv*0.5)*2);
uv = frac(uv)*(1-m) + (m)*frac(1-uv);



texture mirroring!

Last edited by Flexi; 3rd June 2008 at 19:59.
Flexi is offline   Reply With Quote
Old 3rd June 2008, 20:34   #25
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
...and crossed with the rotation...
Flexi is offline   Reply With Quote
Old 4th June 2008, 21:48   #26
redi jedi
Will code for food
 
Join Date: Mar 2005
Location: orlando
Posts: 521
Quote:
uv *=4;
float2 m = floor(frac(uv*0.5)*2);
uv = frac(uv)*(1-m) + (m)*frac(1-uv);

nice!
but that still wont add mirroring to shapes... well I guess you could recreate the corners of the shape(hard coded number of sides) in the per-frame, throw them through the q vars and build a "mask" then only do the the above when in the mask... but you'd have to bring not only position data but the texture position/angle data as well to correctly orient/zoom the mirror... but that would be a bitch and likely very slow..

Especially when the c++ code to add that feature is prolly 4 lines total, 10 max.

in fact almost all the features I added where about that size...

Oh I forgot one, Page Up/Page Down while editing code....

Blah!
redi jedi is offline   Reply With Quote
Old 5th June 2008, 10:14   #27
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
why build a mask - you load one from a texture (and you can even put a uv-transformation on it)
Flexi is offline   Reply With Quote
Old 5th June 2008, 13:40   #28
redi jedi
Will code for food
 
Join Date: Mar 2005
Location: orlando
Posts: 521
I dont think were talking about the same thing...
loading a mask from a texture is not going to let you change the wrap settings on the texture used in the shape.. Did you use the beta much? do you know which feature were referring to when we say mirroring the shape texture?

Quote:
i don't mean to let the shader know where the shape is - i speak of letting the shader do, what the shape did before.
I'm not sure what you mean by this.. you can already do just about everything the shape did in 1.04d in the shader...

Blah!
redi jedi is offline   Reply With Quote
Old 5th June 2008, 16:08   #29
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
yes i'm quite sure what you're talking about. (hehe, i even reinstalled the beta to check it)

i mean a total rebuild of the shape functionality - all in some lines of shader code. maybe you got me wrong due to the fact that i showed it as an after effect in the composite shader - you can easily apply this to the warp shader and then add it to the basic return value or draw it over it or swap color channels or...
what i did not show you yet, is how to use masks for the shaping and coloring issues. but you're right: you can already reproduce everything the shape did in 1.05 beta - even drawing in background.
Flexi is offline   Reply With Quote
Old 5th June 2008, 19:06   #30
Eo.S.
Milkdrop Moderator
 
Join Date: Oct 2004
Posts: 114
everything shapes did in the beta cannot be replicated in milkdrop 2's pixel shaders, without destroying framerate. YES, shaders COULD replicate it all, but not the ones in milkdrop 2.

First off the shapes are geometry, and the vertex shader for the warp and composite shader are not exposed in milkdrop2. Even if they were, and you changed it to draw a shape [which would also require new geometry because the warp/composite shaders are using a quad with 4 vertices and 2 polygons, so no pentagons or circles, etc] then you would ONLY get that one shape; instead of the full screen quad rendering the warp/composite shader.

If you were to write code into the existing pixel shader to recalculate the pixels on screen occupied by the shape, and to replicate the behaviour of the shape, but to only do this for those pixels [and in the remaining pixels do the entirely different code that you want for the warp/composite shader] it would be painfully slow. That is a LOT of instructions, done on every pixel, that could have been once by the cpu for an actual shape. Nevermind doing this for 4 shapes. This is not an option.

Some of the beta things are insanely simple in the backend code. Even if shapes did have pixel shaders, it's inefficient to do mirrored texturing by altering the texture coordinates for every pixel, when instead the texture sampler can just be set with the "mirror" sampler state that basically does it for free [rather than 5 assembly instructions every pixel].

If shapes had pixel shaders then a lot of the beta improvements to shapes could be replicated without much trouble, inefficient but not noticeably so. MD2's current pixel shaders however will not replicate the functionality of an entire shape.

believe me, i've been lead shader artist/programmer at two different major game developers for 3.5 years.
Eo.S.
Eo.S. is offline   Reply With Quote
Old 5th June 2008, 19:45   #31
Saint Goody
Senior Member
 
Join Date: Apr 2008
Location: Somewhere in Southern Indiana
Posts: 184
Then someone send this conversation to geiss.

I am the purple heathen.
Saint Goody is offline   Reply With Quote
Old 5th June 2008, 21:14   #32
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
hi Eo.S!
i absolutely go with that. never considered about speed.
You say that's not an option, but i had to at least check it out. And what i saw, didn't seem too slow to me. It's not the thing that i miss those features from the beta. I only wanted to say: if you do, there are some hacks...
I really like MD2 as it is - even with all its quirk
Flexi is offline   Reply With Quote
Old 5th June 2008, 21:36   #33
redi jedi
Will code for food
 
Join Date: Mar 2005
Location: orlando
Posts: 521
Quote:
And what i saw, didn't seem too slow to me.
Where you rendering 4 shapes with a different number of sides while also doing complex warps and or composites? because recreating a single shape by it self is trivial, its running it with say a fractal in the background that its feeding off of...


and you said you could reproduce the draw in background effect, which I find hard to believe considering that option actually changed the order in which the shapes are rendered, so although you may be able to recreate it under some circumstances, I see no way for it to be done in total, as like I said the render actually happened at a different time, but if you have a solution or partial solution I'd like to see it...

@Saint Goody
Quote:
Then someone send this conversation to geiss.
He knows about the beta(he calls it a mod), there for he knows these features are missing, although I'm not sure he knows what features I added so by all means send it over...
but It sounds to me like him(or nullsoft or AOL) is trying to un-open source it, why else would he have started with his old code instead of 1.04c,1.04d,1.04e or one of the betas?


If anyone talks to him, Ya can tell him that I will re-add these features(the ones that aren't obsolete) if I can get the source, or explain to him what I was trying to do if he doesn't want me to touch it, but for god's sake gimme back my page up/page down in code and the shape mods if nothing else.. Sound(min,max) would be nice too, as it makes audio reaction better..

Its not that I dont like MD2, Its great.. but I know the code, and it could be ALOT better with only minor edits(MD beta was my first ever project out of school so they are really that easy to add)

Blah!
redi jedi is offline   Reply With Quote
Old 5th June 2008, 22:21   #34
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
Quote:
but if you have a solution or partial solution I'd like to see it...
that is what i wanted to have shown with the 'aspect-aware...' preset above. using 'uv' means drawing in background, while using 'uv_orig' means drawing before warp.

i have shown in my examples on this thread how to rotate and mirror textures properly - you can apply the same algorithms to a mask texture and finally do the composition

anyway i don't see a need to rebuild, not just to prove i'm right
there definetly are some limits. why you wanna get an example with 4 faked shapes, as long as there still are the real ones?
Flexi is offline   Reply With Quote
Old 5th June 2008, 23:17   #35
redi jedi
Will code for food
 
Join Date: Mar 2005
Location: orlando
Posts: 521
drawing before Warp is Drawing in background, that setting literally moved the rendering of the shape above the warping process. so if you copied shape 1 to shape 4( so there right on top of eachother) you would not see shape one because shape 4 is being drawn on top(assuming 100% opacity) but if you set shape 4 to draw in background it is now ahead of shape 1 in the render loop and is drawn first, effectively hiding shape
4(also assuming no warp effects).

I guess that since your generating the shape in Pixel shaders that using the uv_orig is kinda like drawing in the background, but you cant do the real shapes that way.

Quote:
why you wanna get an example with 4 faked shapes, as long as there still are the real ones?
because if you cant make 4(5 really) different shapes plus add effects in PS then its all a moot point because although you can accomplish some of the basic features you cant recreate the effects of beta...

Plus it would be kinda cool to see how fast(or slow) it actually runs(not that I want you to waste your time building it, I'm just saying it would be cool)

btw, I havent look at your examples yet, i'll try to get to it.. but I'm currently building a little app that will download all the presets ever posted to this form cause I'm sick of wading through all the threads to find new stuff.

Blah!
redi jedi is offline   Reply With Quote
Old 5th June 2008, 23:44   #36
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
oops - right, ment to say after warp.
i guess i will risk a try the next days

MD = recreational fun by fishing for effects
Flexi is offline   Reply With Quote
Old 6th June 2008, 01:29   #37
Eo.S.
Milkdrop Moderator
 
Join Date: Oct 2004
Posts: 114
Quote:
float2 m = floor(frac(uv*0.5)*2);
uv = frac(uv)*(1-m) + (m)*frac(1-uv);uv *=4;
btw this, mirroring texture coordinates is much more efficiently done with this code [5 less assembly instructions]

uv = 1.0 - abs( frac( uv * 0.5 ) * 2.0 - 1.0 );
Eo.S. is offline   Reply With Quote
Old 7th June 2008, 10:16   #38
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
thanks for shortening the code! wicked math

Quote:
redi jedi:
Where you rendering 4 shapes with a different number of sides while also doing complex warps and or composites? because recreating a single shape by it self is trivial, its running it with say a fractal in the background that its feeding off of...
again, see the ferny ernie preset:
PHP Code:
// warp shader code:
float1 s,c,m;

shader_body
{
float2 uv_limb 0.5 + (uv-0.5)*float2(1.18,1.2) + float2(0,1)*0.08;
float1 limb tex2D(sampler_fc_mainuv_limb).x;

float2 uv_l = (uv 0.5)*float2(1,-1)*aspect.xy;
float2 uv_r uv_l;
float2 uv_ll uv_l float2(0.105,-0.015);
float2 uv_rr uv_l float2(0.105,+0.015);

_qb.x;
_qb.y;
uv_l 0.5 3.5*float2s*uv_l.c*uv_l.yc*uv_l.s*uv_l.y)*aspect.yx float2(+0.45,-0.67);

_qb.z;
_qb.w;
uv_r 0.5 3.5*float2s*uv_r.c*uv_r.yc*uv_r.s*uv_r.y)*aspect.yx float2(-0.45,-0.67);

_qc.x;
_qc.y;
uv_ll 0.5 1.8*float2s*uv_ll.c*uv_ll.yc*uv_ll.s*uv_ll.y)*aspect.yx*float2(0.85,1) + float2(0.05,-0.06);

_qc.z;
_qc.w;
uv_rr 0.5 1.8*float2s*uv_rr.c*uv_rr.yc*uv_rr.s*uv_rr.y)*aspect.yx*float2(0.85,1) + float2(-0.05,-0.06);

float1 l tex2D(sampler_fc_mainuv_l).x;
float1 r tex2D(sampler_fc_mainuv_r).x;
float1 ll max(tex2D(sampler_fc_mainuv_ll).x,tex2D(sampler_fc_mainuv_ll).y);
float1 rr max(tex2D(sampler_fc_mainuv_rr).x,tex2D(sampler_fc_mainuv_rr).z);
ret.max(limb,max(l,r));
ret.ll;
ret.rr;
ret ret*1.2 0.01;

this code composes a fractal by 5 copies of itself including the drawing in background effect. well, i didn't limit the faked shapes by borders. But for example see how ret.y and ret.z are feeded by the red channel (have a closer look at the rr = max(...) expression)


@Phat:
if you can point me to a 1.05beta preset, which uses mirrored shapes, i would really love to reinterprete it with MD2.
Flexi is offline   Reply With Quote
Old 7th June 2008, 16:29   #39
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
PHP Code:
float1 s,c;

shader_body
{
ret 0;

// fern fractal on the red channel

float2 uv0 uv.yx*-float2(3,0);
float c0 tex2D(sampler_fc_mainuv0).z// feeded by the spiral

float2 uv1 0.5 + (uv-0.5)*1.15 float2(-1,1)*0.05// main arm
float1 c1 tex2D(sampler_fc_mainuv1).x;

float2 uv2 float2(-1,0) + (float2(-1,1)*uv float2(1,0) - 0.5)*4// upper limb
float1 c2 tex2D(sampler_fc_mainuv2).x;

float2 uv3 float2(1,2) + (float2(1,-1)*uv float2(0,1) - 0.5)*4// lower limb
float1 c3 tex2D(sampler_fc_mainuv3).x;

ret.= (c0 c1 c2 c3)*1.075// composition of the red fractal

// spiral in the blue channel

float2 uv4 float2(-1,0) + (float2(-1,1)*uv float2(1,0) - 0.5)*4;
float1 c4 tex2D(sampler_fc_mainuv4).x// feeded by the fern

q1// sin(w)
q2// cos(w)
float2 scale 1.05;
float2 uv5 = (uv-0.5)*aspect.xy;
       
uv5 scale*float2c*uv5.s*uv5.ys*uv5.c*uv5.y); // rotation
       
uv5 0.5 uv5*aspect.zw float2(-0.03,0.03);

float1 c5 tex2D(sampler_fc_mainuv5).z;

ret.= (c4 c5)*1.075 0.00;

// mirrored rotated checker in the green channel

q3// sin(w)
q4// cos(w)

float2 uv6 = (uv-0.5)*aspect.xy*2.4;
       
uv6 scale*float2c*uv6.s*uv6.ys*uv6.c*uv6.y); // rotation
       
uv6 0.5 uv6*aspect.zw float2(q9,q10);

       
uv6 1.0 absfracuv6 0.5 ) * 2.0 1.0 ); // Eo.S' mirror code

float c6 tex2D(sampler_fc_main,uv6).z// feeded by the spiral
float c7 tex2D(sampler_fc_main,uv6).y;

ret.lerp(max(c6,c7-0.15),tex2D(sampler_fc_main,uv_orig).y-0.004,0.6); // motion blur


never said, there's alway a need for a full rebuild of textured shapes. but see yourself, what is possible.

Last edited by Flexi; 7th June 2008 at 17:34.
Flexi is offline   Reply With Quote
Old 7th June 2008, 18:20   #40
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
...and some more finishing touches...
Attached Files
File Type: milk flexi - deep fractal.milk (18.0 KB, 236 views)

Last edited by Flexi; 7th June 2008 at 18:40.
Flexi 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