Announcement

Collapse
No announcement yet.

How change backgound color of telek flicker.milk?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • How change backgound color of telek flicker.milk?

    I would like to change the background color of this effect telek flicker.milk. I would like to change it to red. These are the default values. What do I change?

    code:

    [preset00]
    fRating=5.000000
    fGammaAdj=1.000000
    fDecay=1.000000
    fVideoEchoZoom=1.000000
    fVideoEchoAlpha=0.000000
    nVideoEchoOrientation=3
    nWaveMode=3
    bAdditiveWaves=1
    bWaveDots=0
    bWaveThick=1
    bModWaveAlphaByVolume=0
    bMaximizeWaveColor=0
    bTexWrap=0
    bDarkenCenter=0
    bRedBlueStereo=0
    bBrighten=0
    bDarken=0
    bSolarize=0
    bInvert=0
    fWaveAlpha=4.099998
    fWaveScale=0.430333
    fWaveSmoothing=0.630000
    fWaveParam=1.000000
    fModWaveAlphaStart=0.710000
    fModWaveAlphaEnd=1.300000
    fWarpAnimSpeed=1.000000
    fWarpScale=1.000000
    fZoomExponent=1.000000
    fShader=0.000000
    zoom=1.000000
    rot=0.000000
    cx=0.500000
    cy=0.500000
    dx=0.000000
    dy=0.000000
    warp=0.001000
    sx=1.000000
    sy=1.000000
    wave_r=0.650000
    wave_g=0.650000
    wave_b=0.650000
    wave_x=0.460000
    wave_y=0.005000
    ob_size=0.005000
    ob_r=0.000000
    ob_g=0.000000
    ob_b=0.000000
    ob_a=0.060000
    ib_size=0.260000
    ib_r=0.250000
    ib_g=0.250000
    ib_b=0.250000
    ib_a=0.000000
    nMotionVectorsX=58.752007
    nMotionVectorsY=14.400000
    mv_dx=0.006000
    mv_dy=0.000000
    mv_l=5.000000
    mv_r=0.100000
    mv_g=1.000000
    mv_b=0.000000
    mv_a=0.000000
    per_frame_1=bass_x = max(bass_x*.7+max(bass_att-.9,0)*.3,0); //decaying bass max
    per_frame_2=
    per_frame_3=wave_x = ((frame%3-1)*.5*bass_x+1)*wave_x; //spreads flame
    per_frame_4=
    per_frame_5=decay = 3000000+57.75; // Magic 'flame' decay
    per_frame_6=//wave_mystery = sin(time*.2)*.05+1;
    per_frame_7=
    per_frame_8=ob_a = sqr(sqr(sin(time*1)*.25+.25)); // 'ad-lib decay' to black - no ugly artefacts
    per_frame_9=// ^4 to get it up there quick -> min time with decay on.
    per_frame_10=
    per_frame_11=ob_a = ob_a*(1-bass_x); // just so we don't get rid of the wide impressive
    per_frame_12=// flames so quickly
    per_frame_13=
    per_frame_14=monitor = ob_a;
    per_frame_15=
    per_frame_16=//Other decays to try:
    per_frame_17=//300000 + 42.53, 90.63, 43.00 These are all fairly similar, but all are stable (equiv to decay 0.990 -> 1 in terms of speed of fade)
    per_frame_18=//3000000 + 57.75 <<< =:-)
    per_pixel_1=dy = (x+.08*sin(rand(100)))*2%2*-.01-.005;
    per_pixel_2=dy = -.0025*((1-y)*10+rand(5)); //wobble, and faster at top - accelerating like real flames
    per_pixel_3=
    per_pixel_4=dx = rand(20)*.0001*sin(rand(2)-.5); //flicker
    per_pixel_5=dx = dx*sqr(y); //dampens top
    per_pixel_6=//dx = dx*(1-x/2); //slows sides
    per_pixel_7=dx = dx*-.2*(rand(10)-5); //random damper
    per_pixel_8=dx = dx -(x-.5)*.04*(.8-sqr(y)); //drift towards centre
    per_pixel_9=dx = dx + cos(sqr(y-.5)*10-time*1.1)*sqr(1-(y))*.01; //add flutter at top
    per_pixel_10=
    per_pixel_11=// Telek - 26/09/2002
    per_frame_init_1=bass_x = 1;



  • #2
    I have limited experience with non-warp shader stuff, but have a general idea of what to do from here. You'll want to start off with settings the borders and wave code to red, setting the other color channels to 0. Then you can slowly adjust from there and work with the decay amount to get the effect you want.


    bAdditiveWaves=1

    This may whiten the screen, set it to 0 for now.


    So, for example here, raising the wave_r value will of course make the red from the wave brighter, especially if wave alpha is 1 (or above, but I think anything above 1 or below 0 has no additional effect). Here, wave_g and wave_b should be set to 0 for now, otherwise the wave will appear grayish to white with additive setting on.

    wave_r=0.650000

    wave_g=0.650000

    wave_b=0.650000


    I'm assuming you're not intending for the outer border to do anything but provide a buffer for the inner border to do its work or for it to mix in black colors with the red colors. If the per pixel section has significant warping, the outer border will transfer its color to the screen.

    ob_r=0.000000

    ob_g=0.000000

    ob_b=0.000000


    Here, also, .25, .25, .25 will give dark gray, you'll want to start with a high ib_r value and 0 values for g and b to get red, then work from there.

    ib_r=0.250000

    ib_g=0.250000

    ib_b=0.250000


    Having ib_a = 0 makes it invisible, so it will not translate any color information to the screen. Your borders as they are may not be working as inteded.

    ib_a=0.000000


    Again, if you want motion vectors to be preset on the screen, you'll need to increase the mv_a value to above 0 (1 is 100% visibility wherever alpha is concerned). With that fixed, mv_r = .1 is going to look green with mv_g = 1, so raise the red value, set the green value to 0, and start from there to get the colors you want.

    mv_r=0.100000

    mv_g=1.000000

    mv_b=0.000000

    mv_a=0.000000


    Again, I'm not really familiar with what decay is doing, but that seems like a huge value. Is it working as intended? From the milkdrop preset authoring guide (can be found in "docs" folder under milkdrop2 folder, " decay (0..1) - controls the eventual fade to black; 1=no fade, 0.9=strong fade, 0.98=recommended".

    per_frame_5=decay = 3000000+57.75; // Magic 'flame' decay


    I've never heard of the sqr() function. Are you trying to do sqare root? sqrt() is the proper function.

    per_frame_8=ob_a = sqr(sqr(sin(time*1)*.25+.25)); // 'ad-lib decay' to black - no ugly artefacts


    Usually, if there is a syntax error milkdrop throws a compiler error and points to where that occurs. I don't think per-vertex code does this though, so there can be syntax errors here and the preset will still fully compile without error. Again, unfamiliar with sqr(), did you mean sqrt()?

    per_pixel_5=dx = dx*sqr(y); //dampens top

    per_pixel_8=dx = dx -(x-.5)*.04*(.8-sqr(y)); //drift towards centre

    per_pixel_9=dx = dx + cos(sqr(y-.5)*10-time*1.1)*sqr(1-(y))*.01; //add flutter at top


    Hope this helps . I've been working with milkdrop for a while now but still a lot I don't know.
    Creativity turned into madness. And then back again.

    Comment


    • #3
      Press M to edit the preset while it runs
      In drawing: simple waveform
      set the colors

      edit: I overlooked that you want the background changed. The easiest way is to define a shape, set its radius to cover the entire screen, and set the colors accordingly.
      Last edited by Nitorami; 15 October 2018, 20:29.

      Comment


      • #4
        Sorry fumbling, I had not noted your response when scrolling over the long code section.
        sqr(x) is the square of x: sqr(8) -> 64

        sqr(sqr(x)) can be expressed simpler as pow (x,4)

        You already mentioned the decay, values of 30000+something are nonsense, the defined argument range is 0..1.
        Decay = 0.9 does approximately the same as ret = GetPixel(uv)*0.9 in the warp shader. It comes from a time when milkdrop did not yet support shaders.

        Comment


        • #5
          My bad, thanks Martin for clearing that up .
          Creativity turned into madness. And then back again.

          Comment

          Working...
          X
          😀
          🥰
          🤢
          😎
          😡
          👍
          👎