file: /src/pixel_bender/cubes/flatGenerator.pbk, 33 lines, 1393 characters           line numbers [show] [hide]
       1:<languageVersion : 1.0;>
       2:
       3:kernel FlatGenerator
       4:<   namespace : "omino";
       5:    vendor : "omino.com";
       6:    version : 1;
       7:    description : "Some 2d Arithmetic";
       8:>
       9:{
      10:    parameter pixel2 center <minValue:float2(0,0) ; maxValue:float2(400,400); defaultValue:float2(200,200);>;
      11:    parameter float4 dividers <minValue:float4(.1,.1,.1,.1); maxValue:float4(50,50,50,50); defaultValue:float4(10,10,10,10);>;
      12:    parameter float4 redContribution <minValue:float4(-1,-1,-1,-1); maxValue:float4(1,1,1,1); defaultValue:float4(0,0,0,0);>;
      13:    parameter float4 greenContribution <minValue:float4(-1,-1,-1,-1); maxValue:float4(1,1,1,1); defaultValue:float4(0,0,0,0);>;
      14:    parameter float4 blueContribution <minValue:float4(-1,-1,-1,-1); maxValue:float4(1,1,1,1); defaultValue:float4(0,0,0,0);>;
      15:    input image3 src;
      16:    output pixel3 dst;
      17:
      18:    void
      19:    evaluatePixel()
      20:    {
      21:        float2 coord = outCoord() - center;
      22:        float4 parts;
      23:        parts.x = sin(coord.x / (0.01 + sqrt(abs(coord.x/ dividers.x))));
      24:        parts.y = sin(coord.x / (0.01 + sqrt(abs(coord.y/ dividers.y))));
      25:        parts.z = sin(coord.y / (0.01 + sqrt(abs(coord.x/ dividers.z))));
      26:        parts.w = sin(coord.y / (0.01 + sqrt(abs(coord.y/ dividers.w))));
      27:        
      28:        dst.r = dot(parts,redContribution);
      29:        dst.g = dot(parts,greenContribution);
      30:        dst.b = dot(parts,blueContribution);
      31:    }
      32:}
      33:
    

formatted by saShowCode.php