k3d/share/shaders/k3d_antialiasedchecks.sl:9: *   Ka, Kd	    	work just like the matte shader
k3d/share/shaders/k3d_antialiasedchecks.sl:10: *   color1, color2     these are the colors which make the pattern
k3d/share/shaders/k3d_antialiasedchecks.sl:14: * AUTHOR: written by Larry Gritz
k3d/share/shaders/k3d_antialiasedchecks.sl:17: *      27 Jan 1994 -- written by lg
k3d/share/shaders/k3d_antialiasedchecks.sl:31:  float smod, tmod;     /* Texture position within the pattern */
k3d/share/shaders/k3d_antialiasedchecks.sl:33:  float x, y;           /* Used to determine pattern */
k3d/share/shaders/k3d_antialiasedchecks.sl:50:  /* Get the place in the pattern where we're sampling */
k3d/share/shaders/k3d_antialiasedchecks.sl:54:  /* If the filter width is small enough, compute the pattern color */
k3d/share/shaders/k3d_antialiasedchecks.sl:66:  /* Use the matte reflectance formula */
k3d/share/shaders/k3d_brick.sl:14: *    brickcolor, mortarcolor	Pretty obvious (default is red bricks)
k3d/share/shaders/k3d_brick.sl:23: * AUTHOR: written by Larry Gritz, gritzl@acm.org
k3d/share/shaders/k3d_brick.sl:27:#include "k3d_patterns.h"
k3d/share/shaders/k3d_brick.sl:38:		  float pitting = 0.01;
k3d/share/shaders/k3d_brick.sl:46:  float ss, tt;
k3d/share/shaders/k3d_brick.sl:64:	     tt);
k3d/share/shaders/k3d_brick.sl:71:  tt +=
k3d/share/shaders/k3d_brick.sl:77:  tt +=
k3d/share/shaders/k3d_brick.sl:92:      clamp(filteredpulse(MHF, 1 - MHF, tt, twidth), max(1 - MHF / twidth, 0),
k3d/share/shaders/k3d_brick.sl:97:  if(tt < MHF)
k3d/share/shaders/k3d_brick.sl:100:      disp = groovedepth * (sqr((tt) / MHF) - 1);
k3d/share/shaders/k3d_brick.sl:102:  else if(tt > (1.0 - MHF))
k3d/share/shaders/k3d_brick.sl:104:      /* Bottom horizontal groove */
k3d/share/shaders/k3d_brick.sl:105:      disp = groovedepth * (sqr((1 - tt) / MHF) - 1);
k3d/share/shaders/k3d_brick.sl:116:  fact = smoothstep(0, 1.3 * MHF, tt) - smoothstep(1.0 - 1.3 * MHF, 1, tt);
k3d/share/shaders/k3d_brick.sl:118:  fact = pitting * (0.5 * fact + 0.5);
k3d/share/shaders/k3d_brick.sl:123:	 (tt + tbrick) * pockfrequency / BMWIDTH), 0.25);
k3d/share/shaders/k3d_brick2.sl:35:    float ss, tt, sbrick, tbrick, w, h;
k3d/share/shaders/k3d_brick2.sl:42:    tt = tcoord / BMHEIGHT;
k3d/share/shaders/k3d_brick2.sl:44:    if (mod(tt*0.5,1) > 0.5)
k3d/share/shaders/k3d_brick2.sl:47:    tbrick = floor(tt); /* which brick? */
k3d/share/shaders/k3d_brick2.sl:49:    tt -= tbrick;
k3d/share/shaders/k3d_brick2.sl:51:    h = step(MHF,tt) - step(1-MHF,tt);
k3d/share/shaders/k3d_brick3.sl:14: *    brickcolor, mortarcolor	Pretty obvious (default is red bricks)
k3d/share/shaders/k3d_brick3.sl:23: * AUTHOR: written by Larry Gritz, 1992
k3d/share/shaders/k3d_brick3.sl:29: *      28 May 1992 -- written by lg for the "Timbre Trees" video (saucer)
k3d/share/shaders/k3d_brick3.sl:58:  float scoord, tcoord, ss, tt;
k3d/share/shaders/k3d_brick3.sl:74:  tt = tcoord / BMHEIGHT;  /*                   "                   */
k3d/share/shaders/k3d_brick3.sl:79:  if (mod (tt*0.5, 1) > 0.5)
k3d/share/shaders/k3d_brick3.sl:82:  tbrick = floor (tt);   /* which brick row? */
k3d/share/shaders/k3d_brick3.sl:87:  ss -= sbrick;          /* Now ss and tt are coords within the brick */
k3d/share/shaders/k3d_brick3.sl:88:  tt -= tbrick;
k3d/share/shaders/k3d_brick3.sl:98:  else h = clamp (boxstep(MHF-twidth,MHF,tt), max(1-MHF/twidth,0),1)
k3d/share/shaders/k3d_brick3.sl:99:	 - clamp (boxstep(1-MHF-twidth,1-MHF,tt), 0, 2*MHF/twidth);
k3d/share/shaders/k3d_brickanti.sl:36:    float ss, tt, sbrick, tbrick, w, h;
k3d/share/shaders/k3d_brickanti.sl:44:    tt = tcoord / BMHEIGHT;
k3d/share/shaders/k3d_brickanti.sl:46:    if (mod(tt*0.5,1) > 0.5)
k3d/share/shaders/k3d_brickanti.sl:50:    twidth = abs(Du(tt)*du) + abs(Dv(tt)*dv);
k3d/share/shaders/k3d_brickanti.sl:51:    tbrick = floor(tt); /* which brick? */
k3d/share/shaders/k3d_brickanti.sl:57:    tt -= tbrick;
k3d/share/shaders/k3d_brickanti.sl:61:    h = boxstep(MHF-twidth,MHF,tt)
k3d/share/shaders/k3d_brickanti.sl:62:      - boxstep(1-MHF-twidth,1-MHF,tt);
k3d/share/shaders/k3d_brickanti.sl:69:#define tintegral(tt)  (floor(tt)*(1-2*MHF) + \
k3d/share/shaders/k3d_brickanti.sl:70:                        max(0,frac(tt)-MHF))
k3d/share/shaders/k3d_brickanti.sl:73:    h = (tintegral(tt+twidth) - tintegral(tt))/twidth;
k3d/share/shaders/k3d_brickbump.sl:8: *   in fact matte or plastic gives those nice white cinder block walls.
k3d/share/shaders/k3d_brickbump.sl:18: *    pitting                   The amplitude of the "pits" on the face of
k3d/share/shaders/k3d_brickbump.sl:23: * AUTHOR: written by Larry Gritz, 1992 (and subsequently modified)
k3d/share/shaders/k3d_brickbump.sl:27:#include "k3d_patterns.h"
k3d/share/shaders/k3d_brickbump.sl:33:			   float rowvary = .25, pitting = 0.01;
k3d/share/shaders/k3d_brickbump.sl:39:  float ss, tt;
k3d/share/shaders/k3d_brickbump.sl:47:	     tt);
k3d/share/shaders/k3d_brickbump.sl:51:  if(tt < MHF)
k3d/share/shaders/k3d_brickbump.sl:54:      disp = groovedepth * (sqr((tt) / MHF) - 1);
k3d/share/shaders/k3d_brickbump.sl:56:  else if(tt > (1.0 - MHF))
k3d/share/shaders/k3d_brickbump.sl:58:      /* Bottom horizontal groove */
k3d/share/shaders/k3d_brickbump.sl:59:      disp = groovedepth * (sqr((1 - tt) / MHF) - 1);
k3d/share/shaders/k3d_brickbump.sl:70:  fact = smoothstep(0, 1.3 * MHF, tt) - smoothstep(1.0 - 1.3 * MHF, 1, tt);
k3d/share/shaders/k3d_brickbump.sl:72:  fact = pitting * (0.75 * fact + 0.25);
k3d/share/shaders/k3d_brickbump.sl:77:	 (tt + tbrick) * pockfrequency / BMWIDTH), 0.25);
k3d/share/shaders/k3d_brickbump2.sl:35:    float ss, tt, sbrick, tbrick, w, h;
k3d/share/shaders/k3d_brickbump2.sl:43:    tt = tcoord / BMHEIGHT;
k3d/share/shaders/k3d_brickbump2.sl:45:    if (mod(tt*0.5,1) > 0.5)
k3d/share/shaders/k3d_brickbump2.sl:48:    tbrick = floor(tt); /* which brick? */
k3d/share/shaders/k3d_brickbump2.sl:50:    tt -= tbrick;
k3d/share/shaders/k3d_brickbump2.sl:52:    h = step(MHF,tt) - step(1-MHF,tt);
k3d/share/shaders/k3d_brickbump2.sl:58:    tbump = smoothstep(0,MHF,tt) - smoothstep(1-MHF,1,tt);
k3d/share/shaders/k3d_brickbump3.sl:8: *   in fact matte or plastic gives those nice white cinder block walls.
k3d/share/shaders/k3d_brickbump3.sl:18: *    pitting                   The amplitude of the "pits" on the face of
k3d/share/shaders/k3d_brickbump3.sl:23: * AUTHOR: written by Larry Gritz, 1992
k3d/share/shaders/k3d_brickbump3.sl:26: *      28 May 1992 -- written by lg for the "Timbre Trees" video (saucer)
k3d/share/shaders/k3d_brickbump3.sl:37:  displacement shader with the matte surface shader.  With appropriate
k3d/share/shaders/k3d_brickbump3.sl:45:	       "mortarthickness" 0.02 "pitting" 0.015 "pockfrequency" 12
k3d/share/shaders/k3d_brickbump3.sl:54:	    float rowvary = .25, pitting = 0.01;
k3d/share/shaders/k3d_brickbump3.sl:67:  float scoord, tcoord, ss, tt;
k3d/share/shaders/k3d_brickbump3.sl:78:  tt = tcoord / BMHEIGHT;
k3d/share/shaders/k3d_brickbump3.sl:81:  if (mod (tt*0.5, 1) > 0.5)
k3d/share/shaders/k3d_brickbump3.sl:84:  tbrick = floor (tt);   /* which brick row? */
k3d/share/shaders/k3d_brickbump3.sl:89:  ss -= sbrick;          /* Now ss and tt are coords within the brick */
k3d/share/shaders/k3d_brickbump3.sl:90:  tt -= tbrick;
k3d/share/shaders/k3d_brickbump3.sl:94:  if (tt < MHF) {
k3d/share/shaders/k3d_brickbump3.sl:96:      disp = groovedepth * (sqr((tt)/MHF) - 1);
k3d/share/shaders/k3d_brickbump3.sl:98:  if (tt > (1.0-MHF)) {
k3d/share/shaders/k3d_brickbump3.sl:99:      /* Bottom horizontal groove */
k3d/share/shaders/k3d_brickbump3.sl:100:      disp = groovedepth * (sqr((1-tt)/MHF) - 1);
k3d/share/shaders/k3d_brickbump3.sl:109:  fact = smoothstep (0, 1.3*MHF, tt) - smoothstep (1.0-1.3*MHF, 1, tt);
k3d/share/shaders/k3d_brickbump3.sl:111:  fact = pitting * (0.75 * fact + 0.25);
k3d/share/shaders/k3d_brickbump3.sl:113:		            (tt+tbrick)*pockfrequency/BMWIDTH), 0.25);
k3d/share/shaders/k3d_brickperturb.sl:35:    float ss, tt, sbrick, tbrick, w, h;
k3d/share/shaders/k3d_brickperturb.sl:42:    tt = tcoord / BMHEIGHT;
k3d/share/shaders/k3d_brickperturb.sl:44:    if (mod(tt*0.5,1) > 0.5)
k3d/share/shaders/k3d_brickperturb.sl:46:    tbrick = floor(tt); /* which brick? */
k3d/share/shaders/k3d_brickperturb.sl:50:    tt -= tbrick;
k3d/share/shaders/k3d_brickperturb.sl:52:    h = step(MHF,tt) - step(1-MHF,tt);
k3d/share/shaders/k3d_brushedmetal2.sl:1:/*  IDbrushedmetal.sl written 9/99 by Ivan DeWolf
k3d/share/shaders/k3d_brushedmetal2.sl:8: *  stochasticly spreads the map, so it looks a little grainy.
k3d/share/shaders/k3d_brushedmetal2.sl:83:	float angle, jitter;
k3d/share/shaders/k3d_brushedmetal2.sl:93:	      jitter = (random()-.5)*Jspread;
k3d/share/shaders/k3d_brushedmetal2.sl:95:	      Ntmp = rotate(Nf,angle+jitter,zro,VA);
k3d/share/shaders/k3d_bubbly.sl:1:/*  bubbly.sl written a while ago by Ivan DeWolf
k3d/share/shaders/k3d_causticlight.sl:21:	float atten = pow (cosangle, beamdistribution) / (L . L);
k3d/share/shaders/k3d_causticlight.sl:22:	atten *= smoothstep (cos(coneangle), cos(coneangle-conedeltaangle),
k3d/share/shaders/k3d_causticlight.sl:24:	Cl = atten * intensity * lightcolor;
k3d/share/shaders/k3d_celld.sl:22:	float voro_jitter = 0;  /* desc { Amount to perturb the voroni 
k3d/share/shaders/k3d_celld.sl:38:	voronoi_f1f2_3d (noiseP*voro_freq, voro_jitter, 
k3d/share/shaders/k3d_ceramictiles.sl:6: * Parameters for pattern placement and size:
k3d/share/shaders/k3d_ceramictiles.sl:8: *     establish a basic 2-D coordinate system for the pattern.
k3d/share/shaders/k3d_ceramictiles.sl:9: *   stilespacing, ttilespacing - tile-to-tile spacing (separate controls
k3d/share/shaders/k3d_ceramictiles.sl:17: * Parameters for tile color and pattern:
k3d/share/shaders/k3d_ceramictiles.sl:18: *   Cbase, Cmottle - base color and mottle color of the tile
k3d/share/shaders/k3d_ceramictiles.sl:19: *   mottlefreq - frequency of the mottling between Cbase & Cmottle
k3d/share/shaders/k3d_ceramictiles.sl:22: *   edgevary, mottling, speckly - individual scalar controls over
k3d/share/shaders/k3d_ceramictiles.sl:23: *      edge variation, mottling, and speckles.  Setting any to zero will
k3d/share/shaders/k3d_ceramictiles.sl:37: *   rayjitter, raysamples - ray tracing controls
k3d/share/shaders/k3d_ceramictiles.sl:58:#include "k3d_patterns.h"
k3d/share/shaders/k3d_ceramictiles.sl:60:/* Given 2-D texture coordinates ss,tt and their filter widths ds, dt,
k3d/share/shaders/k3d_ceramictiles.sl:66:float tilepattern(float ss, tt, ds, dt;
k3d/share/shaders/k3d_ceramictiles.sl:69:		  output float stile, ttile;)
k3d/share/shaders/k3d_ceramictiles.sl:72:  twhichtile = floor(tt);
k3d/share/shaders/k3d_ceramictiles.sl:74:  ttile = tt - twhichtile;
k3d/share/shaders/k3d_ceramictiles.sl:78:						     tt + grooveheight / 2,
k3d/share/shaders/k3d_ceramictiles.sl:84:/* Given coordinates (stile,ttile) and derivatives (ds,dt) *within* a
k3d/share/shaders/k3d_ceramictiles.sl:86: * features include: (1) mottling of the color; (2) darkening or shifting
k3d/share/shaders/k3d_ceramictiles.sl:91:		  float stile, ttile, ds, dt;
k3d/share/shaders/k3d_ceramictiles.sl:92:		  float edgevary, mottling, speckly; float mottlefreq;
k3d/share/shaders/k3d_ceramictiles.sl:93:		  color Cbase, Cedge, Cmottle, Cspeck)
k3d/share/shaders/k3d_ceramictiles.sl:97:  if(mottling > 0)
k3d/share/shaders/k3d_ceramictiles.sl:99:      point noisep = mottlefreq * point(stile, ttile, tileindex);
k3d/share/shaders/k3d_ceramictiles.sl:100:      float mottle =
k3d/share/shaders/k3d_ceramictiles.sl:101:	.2 + .6 * fBm(noisep, mottlefreq * max(ds, dt), 4, 2, 0.65);
k3d/share/shaders/k3d_ceramictiles.sl:102:      C = mix(C, Cmottle, clamp(mottling * mottle, 0, 1));
k3d/share/shaders/k3d_ceramictiles.sl:107:	.05 * fBm(point(stile * 10, ttile * 10, tileindex + 10),
k3d/share/shaders/k3d_ceramictiles.sl:110:	.05 * fBm(point(stile * 10, ttile * 10, tileindex - 3),
k3d/share/shaders/k3d_ceramictiles.sl:115:	 smoothpulse(.05, .15, .85, .95, ttile + tedgeoffset));
k3d/share/shaders/k3d_ceramictiles.sl:122:	point(stile * speckfreq, ttile * speckfreq, tileindex + 8);
k3d/share/shaders/k3d_ceramictiles.sl:172:			 float stilespacing = 10, ttilespacing = 10;
k3d/share/shaders/k3d_ceramictiles.sl:180:			 float edgevary = 1, mottling = 1, speckly = 1;
k3d/share/shaders/k3d_ceramictiles.sl:181:			 float mottlefreq = 7;
k3d/share/shaders/k3d_ceramictiles.sl:184:			 color Cmottle = color(.2, .2, .7);
k3d/share/shaders/k3d_ceramictiles.sl:192:  float ss, tt, dss, dtt;
k3d/share/shaders/k3d_ceramictiles.sl:193:    ProjectTo2D (projection, P, textureprojspace, array_to_mx(mx),ss, tt, dss, dtt);
k3d/share/shaders/k3d_ceramictiles.sl:196:  tt /= ttilespacing;
k3d/share/shaders/k3d_ceramictiles.sl:197:  dtt /= ttilespacing;
k3d/share/shaders/k3d_ceramictiles.sl:200:   * Find out where in the pattern we are: which tile we're on, and
k3d/share/shaders/k3d_ceramictiles.sl:201:   * the (stile,ttile) coordinates (both on [0,1]) within our tile.
k3d/share/shaders/k3d_ceramictiles.sl:203:  float swhichtile, twhichtile, stile, ttile;
k3d/share/shaders/k3d_ceramictiles.sl:204:  float intile = tilepattern(ss, tt, dss, dtt,
k3d/share/shaders/k3d_ceramictiles.sl:206:			     swhichtile, twhichtile, stile, ttile);
k3d/share/shaders/k3d_ceramictiles.sl:211:   * the grooves between tiles.  Also, add just a little bit of
k3d/share/shaders/k3d_ceramictiles.sl:215:  tiledisp *= smoothpulse(0, .075, 0.925, 1, ttile);
k3d/share/shaders/k3d_ceramictiles.sl:226:   * so every tile looks a little different.
k3d/share/shaders/k3d_ceramictiles.sl:228:  color Ctile = tiletexture(tileindex, stile, ttile, dss, dtt,
k3d/share/shaders/k3d_ceramictiles.sl:229:			    edgevary, mottling, speckly,
k3d/share/shaders/k3d_ceramictiles.sl:230:			    mottlefreq,
k3d/share/shaders/k3d_ceramictiles.sl:231:			    Cbase, Cedge, Cmottle, Cspeck);
k3d/share/shaders/k3d_ceramictiles.sl:239:  point Q = 20 * point(ss, tt, 0);
k3d/share/shaders/k3d_checkerboard.sl:1:#include "k3d_patterns.h"
k3d/share/shaders/k3d_contacshadow.sl:36:    float tt = (1 - ycomp(screenP)) * 0.5;  
k3d/share/shaders/k3d_contacshadow.sl:38:    if (ss < 0 || ss > 1 || tt < 0 || tt > 1) {  
k3d/share/shaders/k3d_contacshadow.sl:45:	float mapdist = float texture(shadowname, ss, tt, "samples", samples);
k3d/share/shaders/k3d_corktile.sl:13: *   (if tiles=1) the number of tiles fitted into the texture as s and t vary from 0 to 1
k3d/share/shaders/k3d_corktile.sl:27: * The shader makes an attempt at being self antaliasing
k3d/share/shaders/k3d_corktile.sl:46:		/* 	the pattern is built up of the sum of two offset noise functions, perturbed slightly
k3d/share/shaders/k3d_craters.sl:11:#include "k3d_patterns.h"
k3d/share/shaders/k3d_craters.sl:22:   float jitter=1.0;     /* irregularity of crater spacing */
k3d/share/shaders/k3d_craters.sl:32:    float ss, tt, angle, r, rim, uu, a, i, j, sc, asc, lev;
k3d/share/shaders/k3d_craters.sl:59:		  /* if ( fBm_default(xp) < pitfactor)  *//* I like this distribution better - pitf = -1 -> 1 */
k3d/share/shaders/k3d_craters.sl:61:		    sctr = cellsizescale * (scell + 0.5 + jitter * cellnoise(scell+0.5, tcell+0.5));
k3d/share/shaders/k3d_craters.sl:62:		    tctr = cellsizescale * (tcell + 0.5 + jitter * cellnoise(scell+3.5, tcell+8.5));
k3d/share/shaders/k3d_craters.sl:64:		    tt = t - tctr;
k3d/share/shaders/k3d_craters.sl:65:		    r = ss*ss + tt*tt; /* r is distance from center squared */
k3d/share/shaders/k3d_crayon.sl:8:	It makes an attempt at antaliasing.
k3d/share/shaders/k3d_crayon.sl:22:		graduation of shading from top to bottom of the object
k3d/share/shaders/k3d_crayontoon.sl:9: * This shader is a constant with little diffusion, 

k3d/share/shaders/k3d_crayontoon.sl:12: * better to let the user change this.

k3d/share/shaders/k3d_cyclone.sl:71:  /* Shade like matte, but with color scaled by cloud opacity */
k3d/share/shaders/k3d_decalplastic.sl:41:			float tt = mix(t0, t1, t);
k3d/share/shaders/k3d_decalplastic.sl:42:			float alpha = float texture(texturename[3], ss, tt);
k3d/share/shaders/k3d_decalplastic.sl:43:			Ct = (1.0 - alpha) * Cs + (alpha * color texture(texturename, ss, tt));
k3d/share/shaders/k3d_dented.sl:15: * AUTHOR: written by Larry Gritz, based on the "dented" shader in
k3d/share/shaders/k3d_dented.sl:19: *      Dec 1992 -- written by lg for "Timbre Trees Examples" (jingle)
k3d/share/shaders/k3d_depthcue_surf.sl:3: *  Author: Daniel S. Matthews dan@3-e.net
k3d/share/shaders/k3d_ember.sl:1:/* Glowing ember shader 2002 Graeme Nattress & NOITAMINANIMATION Inc.
k3d/share/shaders/k3d_ember.sl:16:		float attenuation = 4;
k3d/share/shaders/k3d_ember.sl:66:		angle = pow(angle, attenuation);
k3d/share/shaders/k3d_emboss.sl:6: * emboss(): emboss a pencil with lettering.  It uses the same texture
k3d/share/shaders/k3d_emboss.sl:7: * 	map as sdixon() to define the lettering.
k3d/share/shaders/k3d_eyeball.sl:9: *   functions are used for the veining and the iris mottling.
k3d/share/shaders/k3d_eyeball.sl:27: * AUTHOR: written by Larry Gritz
k3d/share/shaders/k3d_eyeball.sl:30: *      Nov 1991 - crude written of "eye" by lg for Herman's eyes for
k3d/share/shaders/k3d_eyeball.sl:34: *      28 Jun 94 (lg) - revamped to add veins and iris mottling, renamed
k3d/share/shaders/k3d_eyeball.sl:69:  float bloody, tt;
k3d/share/shaders/k3d_eyeball.sl:82:  tt = 1-t;
k3d/share/shaders/k3d_eyeball.sl:83:  irisstat = smoothstep (irissize, irissize+twidth, tt);
k3d/share/shaders/k3d_eyeball.sl:84:  pupilstat = smoothstep (pupilsize, pupilsize+twidth, tt);
k3d/share/shaders/k3d_eyeball.sl:85:  bloody = bloodshot * (smoothstep (-irissize, 2.5*irissize, tt));
k3d/share/shaders/k3d_eyeball.sl:88:   * then calculate the veining pattern.  Otherwise, just use the color
k3d/share/shaders/k3d_eyeball.sl:89:   * of the whites.  The veining pattern is essentially summed zero sets
k3d/share/shaders/k3d_eyeball.sl:107:  Ciris = mix (iriscolor, irisoutercolor, smoothstep (irissize*.8, irissize, tt));
k3d/share/shaders/k3d_eyeball.sl:108:  /* If we're somewhere in the iris, calculate the iris pattern, which is
k3d/share/shaders/k3d_eyeball.sl:121:   * and what patterns we calculated.
k3d/share/shaders/k3d_eyeball.sl:126:  /* Make the eye a little glossier on the iris and pupil */
k3d/share/shaders/k3d_fakesky.sl:5: * sphere, with color varying a bit by altitude, in an attempt to mimic the

k3d/share/shaders/k3d_fill.sl:1:/*IDfill written by Ivan DeWolf
k3d/share/shaders/k3d_fire.sl:15:  float ss, tt;
k3d/share/shaders/k3d_fire.sl:27:  tt = t + frame * 0.1;
k3d/share/shaders/k3d_fire.sl:31:  width = max(filterwidth(ss), filterwidth(tt));
k3d/share/shaders/k3d_fire.sl:36:    turb += abs(snoise2(ss * f, tt * f)) / f;
k3d/share/shaders/k3d_fire.sl:38:  turb += fade * abs(snoise2(ss * f, tt * f)) / f;
k3d/share/shaders/k3d_flame.sl:14: *    setting the "octaves" parameter based on distance from eye point.
k3d/share/shaders/k3d_fresnelplastic.sl:28:			 not over-written by "colorMap } */
k3d/share/shaders/k3d_fresnelplastic.sl:59:    float ss, tt;
k3d/share/shaders/k3d_fresnelplastic.sl:70:	tt = s;
k3d/share/shaders/k3d_fresnelplastic.sl:74:	tt = t;
k3d/share/shaders/k3d_fresnelplastic.sl:79:	tt = 1 - tt;
k3d/share/shaders/k3d_fresnelplastic.sl:94:    /*Ct = (CHKTX (colorMap))? texture (colorMap, ss, tt): Csurf; */
k3d/share/shaders/k3d_fresnelplastic.sl:96:      Ct = texture (colorMap, ss, tt);
k3d/share/shaders/k3d_fur2.sl:20:    float Atten;
k3d/share/shaders/k3d_fur2.sl:27:    Atten = max(0.0,LN.NN);
k3d/share/shaders/k3d_fur2.sl:29:    Cout *= Atten;
k3d/share/shaders/k3d_glass.sl:13: *    rayjitter, raysamples - ray tracing controls for reflection
k3d/share/shaders/k3d_glass.sl:18: *    reflrayjitter, refrraysamples - ray tracing controls for refraction
k3d/share/shaders/k3d_glass.sl:41:		  float refrrayjitter = 0, refrraysamples = 1;)
k3d/share/shaders/k3d_glass.sl:46:		  eta, transmitcolor, refrrayjitter, refrraysamples,
k3d/share/shaders/k3d_gloop.sl:1:/*  IDGloop.sl written 8/99 by Ivan DeWolf
k3d/share/shaders/k3d_gloop.sl:7: * Written as an explanation to the talk I gave at
k3d/share/shaders/k3d_glow.sl:1:surface k3d_glow(float attenuation = 2.0;
k3d/share/shaders/k3d_glow.sl:15:      strength = pow(incidence, attenuation);
k3d/share/shaders/k3d_gmarbtile_polish.sl:20: * AUTHOR: written by Larry Gritz
k3d/share/shaders/k3d_gmarbtile_polish.sl:41:			     uniform float envrad = 100, rayjitter =
k3d/share/shaders/k3d_gmarbtile_polish.sl:58:  float tt = ycomp(PP) / tilesize;
k3d/share/shaders/k3d_gmarbtile_polish.sl:59:  float dtt = filterwidth(tt);
k3d/share/shaders/k3d_gmarbtile_polish.sl:61:  float groovy = tilepattern(ss, tt, dss, dtt, groovewidth, groovewidth,
k3d/share/shaders/k3d_gmarbtile_polish.sl:62:			     whichs, whicht, ss, tt);
k3d/share/shaders/k3d_gooch.sl:9: *                 http://www.cs.utah.edu/~gooch/SIG98/abstract.html
k3d/share/shaders/k3d_gooch.sl:22: * AUTHOR: written by Mike King
k3d/share/shaders/k3d_graphic_lines.sl:99:	float tt_highlight;
k3d/share/shaders/k3d_graphic_lines.sl:113:/** setup tt_highlight with chosen axis **/
k3d/share/shaders/k3d_graphic_lines.sl:117:		tt_highlight=mod(z_highlight,1);
k3d/share/shaders/k3d_graphic_lines.sl:122:		tt_highlight=mod(y_highlight,1);
k3d/share/shaders/k3d_graphic_lines.sl:126:		tt_highlight=mod(x_highlight,1);
k3d/share/shaders/k3d_graphic_lines.sl:151:	float val_highlight=(smoothstep((stripemin_highlight)-(fuzz_highlight),(stripemin_highlight),(tt_highlight))-smoothstep((stripemax_highlight)-(fuzz_highlight),(stripemax_highlight),(tt_highlight)));
k3d/share/shaders/k3d_graphic_lines.sl:177:	float tt_paint;
k3d/share/shaders/k3d_graphic_lines.sl:193:		tt_paint=mod(z_paint,1);
k3d/share/shaders/k3d_graphic_lines.sl:198:		tt_paint=mod(y_paint,1);
k3d/share/shaders/k3d_graphic_lines.sl:202:		tt_paint=mod(x_paint,1);
k3d/share/shaders/k3d_graphic_lines.sl:224:	float val1=(smoothstep((stripemin_paint)-(fuzz_paint),(stripemin_paint),(tt_paint))-smoothstep((stripemax_paint)-(fuzz_paint),(stripemax_paint),(tt_paint)));
k3d/share/shaders/k3d_graphic_lines.sl:249:	float tt_ink;
k3d/share/shaders/k3d_graphic_lines.sl:265:		tt_ink=mod(z_ink,1);
k3d/share/shaders/k3d_graphic_lines.sl:270:		tt_ink=mod(y_ink,1);
k3d/share/shaders/k3d_graphic_lines.sl:274:		tt_ink=mod(x_ink,1);
k3d/share/shaders/k3d_graphic_lines.sl:296:	float val2=(smoothstep((stripemin_ink)-(fuzz_ink),(stripemin_ink),(tt_ink))-smoothstep((stripemax_ink)-(fuzz_ink),(stripemax_ink),(tt_ink)));
k3d/share/shaders/k3d_grass_displace.sl:8: * pattern.  The displacements are circular.

k3d/share/shaders/k3d_grass_displace.sl:24:  float ss, tt;

k3d/share/shaders/k3d_grass_displace.sl:28:  tt = t + snoise(noi + 333) * noiscale;

k3d/share/shaders/k3d_grass_displace.sl:31:        tmod = mod(tt*fac,1),

k3d/share/shaders/k3d_grass_surface.sl:21:  float ss, tt;

k3d/share/shaders/k3d_grass_surface.sl:25:  tt = t + snoise(noi + 333) * noiscale;

k3d/share/shaders/k3d_grass_surface.sl:28:        tmod = mod(tt*fac,1);

k3d/share/shaders/k3d_grids.sl:1:/** Grid shader copyright 2005 Daniel Scott Matthews dan@3-e.net **/
k3d/share/shaders/k3d_grids.sl:53:float G1L1_ss, G1L1_tt;
k3d/share/shaders/k3d_grids.sl:54:float G1L2_ss, G1L2_tt;
k3d/share/shaders/k3d_grids.sl:55:float G2L1_ss, G2L1_tt;
k3d/share/shaders/k3d_grids.sl:56:float G2L2_ss, G2L2_tt;
k3d/share/shaders/k3d_grids.sl:61:rotate2d(s, t, radians(G1L1_rotation), 0.5, 0.5, G1L1_ss, G1L1_tt);
k3d/share/shaders/k3d_grids.sl:63:G1L1_tt = repeat(G1L1_tt, G1L1_freq);
k3d/share/shaders/k3d_grids.sl:65:color G1L1_layer_opac = pulse(G1L1_linewidth, 1-G1L1_linewidth, G1L1_fuzz, G1L1_tt);
k3d/share/shaders/k3d_grids.sl:69:rotate2d(s, t, radians(G1L2_rotation), 0.5, 0.5, G1L2_ss, G1L2_tt);
k3d/share/shaders/k3d_grids.sl:71:G1L2_tt = repeat(G1L2_tt, G1L2_freq);
k3d/share/shaders/k3d_grids.sl:73:color G1L2_layer_opac = pulse(G1L2_linewidth, 1-G1L2_linewidth, G1L2_fuzz, G1L2_tt);
k3d/share/shaders/k3d_grids.sl:80:rotate2d(s, t, radians(G2L1_rotation), 0.5, 0.5, G2L1_ss, G2L1_tt);
k3d/share/shaders/k3d_grids.sl:82:G2L1_tt = repeat(G2L1_tt, G2L1_freq);
k3d/share/shaders/k3d_grids.sl:84:color G2L1_layer_opac = pulse(G2L1_linewidth, 1-G2L1_linewidth, G2L1_fuzz, G2L1_tt);
k3d/share/shaders/k3d_grids.sl:88:rotate2d(s, t, radians(G2L2_rotation), 0.5, 0.5, G2L2_ss, G2L2_tt);
k3d/share/shaders/k3d_grids.sl:90:G2L2_tt = repeat(G2L2_tt, G2L2_freq);
k3d/share/shaders/k3d_grids.sl:92:color G2L2_layer_opac = pulse(G2L2_linewidth, 1-G2L2_linewidth, G2L2_fuzz, G2L2_tt);
k3d/share/shaders/k3d_grids_disp.sl:31:float ss0, tt0;
k3d/share/shaders/k3d_grids_disp.sl:33:rotate2d(s, t, radians(rotation0), 0.5, 0.5, ss0, tt0);
k3d/share/shaders/k3d_grids_disp.sl:35:tt0 = repeat(tt0, freq0);
k3d/share/shaders/k3d_grids_disp.sl:37:color layer_opac0 = pulse(linewidth0, 1-linewidth0, fuzz0, tt0);
k3d/share/shaders/k3d_grids_disp.sl:44:float ss1, tt1;
k3d/share/shaders/k3d_grids_disp.sl:46:rotate2d(s, t, radians(rotation1), 0.5, 0.5, ss1, tt1);
k3d/share/shaders/k3d_grids_disp.sl:48:tt1 = repeat(tt1, freq1);
k3d/share/shaders/k3d_grids_disp.sl:50:color layer_opac1 = pulse(linewidth1, 1-linewidth1, fuzz1, tt1);
k3d/share/shaders/k3d_hdr_light.sl:6:*simon@rendermania.com http://www.rendermania.com/HDRI/

k3d/share/shaders/k3d_hdr_light.sl:29:	float tt = 0.5 + (Dy * r);

k3d/share/shaders/k3d_hdr_light.sl:33:		hdrtex = texture(envname,ss,tt,"blur",blur);

k3d/share/shaders/k3d_hdr_surface.sl:6:*simon@rendermania.com http://www.rendermania.com/HDRI/

k3d/share/shaders/k3d_hdr_surface.sl:28:	float tt = 0.5 + (Dy * r);

k3d/share/shaders/k3d_hdr_surface.sl:32:		hdrtex = texture(envname,ss,tt,"blur",blur);

k3d/share/shaders/k3d_hexatile_bump.sl:5:* A simple bump shader that tile a "Hexagon" pattern
k3d/share/shaders/k3d_hexatile_bump.sl:31:* Larry Gritz "noises.h", "project.h", "patterns.h"
k3d/share/shaders/k3d_hexatile_bump.sl:39:#include "k3d_patterns.h"
k3d/share/shaders/k3d_hexatile_bump.sl:42:Worley2D_f1f2 (float ss, tt; float jitter, seed, c1, c2, hexagon, scale_ss, scale_tt; 
k3d/share/shaders/k3d_hexatile_bump.sl:46:float sthiscell = floor(ss)+0.5, tthiscell = floor(tt)+0.5;
k3d/share/shaders/k3d_hexatile_bump.sl:54:				float ttestcell = tthiscell + j;
k3d/share/shaders/k3d_hexatile_bump.sl:58:	ttestcell += 0.5;
k3d/share/shaders/k3d_hexatile_bump.sl:60:	float spos = stestcell + jitter * (float cellnoise(stestcell,seed+ttestcell) - 0.5);
k3d/share/shaders/k3d_hexatile_bump.sl:61:	float tpos = ttestcell + jitter * (float cellnoise(stestcell+23,seed+ttestcell-87) - 0.5);
k3d/share/shaders/k3d_hexatile_bump.sl:63:	float toffset = (tpos - tt) * scale_tt;
k3d/share/shaders/k3d_hexatile_bump.sl:104:Worley2D_f1f2 (scale1,scale2,/* Jitter */ 0,/* Seed */ 0,C1,C2,/* Hexagon */ 1,/* TileScaleSS */ 1,
k3d/share/shaders/k3d_hextile.sl:5: *       This surface shader operates in s-t space and gives a pattern of
k3d/share/shaders/k3d_hextile.sl:6: *    hexagonal tiles, similar to that found as floor patterns in public
k3d/share/shaders/k3d_hextile.sl:8: *       The basic pattern is a hexagonal tiling, with a little bit of
k3d/share/shaders/k3d_hextile.sl:31: * AUTHOR: written by Larry Gritz, 1994
k3d/share/shaders/k3d_hextile.sl:34: *    15 Feb 1994 -- written by lg
k3d/share/shaders/k3d_hextile.sl:64:  float ss, tt;
k3d/share/shaders/k3d_hextile.sl:65:  float ttile, stile;
k3d/share/shaders/k3d_hextile.sl:82:  tt = mod (t, 1.5*tileradius);
k3d/share/shaders/k3d_hextile.sl:83:  ttile = floor (t/(1.5*tileradius));
k3d/share/shaders/k3d_hextile.sl:84:  if (mod (ttile/2, 1) == 0.5)
k3d/share/shaders/k3d_hextile.sl:91:  if (tt < tileradius) {
k3d/share/shaders/k3d_hextile.sl:97:      y = 1.7320508 * (tt - tileradius);
k3d/share/shaders/k3d_hextile.sl:99:	  if (mod (ttile/2, 1) == 0.5)
k3d/share/shaders/k3d_hextile.sl:101:	  ttile += 1;
k3d/share/shaders/k3d_hextile.sl:109:  tileindex = stile+41*ttile;
k3d/share/shaders/k3d_imagelayerclouds.sl:35:  /* Shade like matte, but use color Ct */
k3d/share/shaders/k3d_leather.sl:8: *and offer you this shader, it was done (JMredapple.sl) by Jonathan Merritt

k3d/share/shaders/k3d_leather.sl:11: *	re-autor istarion@3dvf.net    web site http://istarion.3dvf.net

k3d/share/shaders/k3d_leather.sl:13: * 	old-autor jmerritt@warpax.com   :-)

k3d/share/shaders/k3d_leather.sl:56:	 * Standard settings

k3d/share/shaders/k3d_leather.sl:132:	 * dottiness technique is stolen from LG's starfield 

k3d/share/shaders/k3d_leather.sl:143:	 * attached, and where the wierd bit at the very bottom

k3d/share/shaders/k3d_leather.sl:166:	 * noise, affected a little by the brown specks, and

k3d/share/shaders/k3d_lensflare.sl:9: *   pretty plain looking and uninteresting; this shader takes some
k3d/share/shaders/k3d_lensflare.sl:10: *   liberties but looks pretty good.
k3d/share/shaders/k3d_lensflare.sl:14: *   bloomintensity - overall intensity of the "bloom" effect.  Setting
k3d/share/shaders/k3d_lensflare.sl:26: *   disky, ringy, blotty, bloony - give the relative proportions of
k3d/share/shaders/k3d_lensflare.sl:45:#include "k3d_patterns.h"
k3d/share/shaders/k3d_lensflare.sl:97:		      float blotty = 1;
k3d/share/shaders/k3d_lensflare.sl:123:    float atten = acos(zcomp(normalize(vector transform("camera", P + L))));
k3d/share/shaders/k3d_lensflare.sl:124:    atten = 1 - smoothstep(1, 2, abs(atten) / (lensfov / 2));
k3d/share/shaders/k3d_lensflare.sl:127:      atten * intensity * (comp(Cl, 0) + comp(Cl, 1) + comp(Cl, 2)) / 3;
k3d/share/shaders/k3d_lensflare.sl:193:	uniform float alltypes = (disky + ringy + blotty + bloony);
k3d/share/shaders/k3d_lensflare.sl:208:	else if(type < (disky + ringy + blotty))
k3d/share/shaders/k3d_lensflare.sl:223:    Ci += Cflare * Cl * atten;
k3d/share/shaders/k3d_luna.sl:6: *    have craters, so it isn't good for closeups.  But it's pretty good at about
k3d/share/shaders/k3d_luna.sl:185:  /* Shade like matte */
k3d/share/shaders/k3d_lunette.sl:1:/* renamed JMlinette.sl for RMR.  -- tal */
k3d/share/shaders/k3d_lunette.sl:4: * lunette.sl -- A pretty surface shader ideal for "ground planes".
k3d/share/shaders/k3d_lunette.sl:7: *   A grid pattern overlaid upon an fBm noise.  This shader is good for
k3d/share/shaders/k3d_lunette.sl:11: *   pattern I saw in the background of another image entitled "Lunettes",
k3d/share/shaders/k3d_lunette.sl:13: *   name, anyway.  The pattern is calculated in 2D u,v coordinates.
k3d/share/shaders/k3d_lunette.sl:17: *   urepeats, vrepeats - number of repeats of the grid pattern in u and v
k3d/share/shaders/k3d_lunette.sl:31: * Author: written by Jonathan Merritt (jmerritt@warpax.com), 5th October 2002
k3d/share/shaders/k3d_lunette.sl:37:#include "k3d_patterns.h"
k3d/share/shaders/k3d_lunette.sl:42: * Base color for the "lunette" pattern.  The pattern is calculated in a two-
k3d/share/shaders/k3d_lunette.sl:43: * dimensional fashion using the coordinates ss and tt as texture / pattern
k3d/share/shaders/k3d_lunette.sl:47: *   ss, tt - 2D pattern coordinates.
k3d/share/shaders/k3d_lunette.sl:48: *   ssrepeats, ttrepeats - Number of repeats of the grid pattern in both ss
k3d/share/shaders/k3d_lunette.sl:49: *                           and tt directions.  Also scales the noise in both
k3d/share/shaders/k3d_lunette.sl:51: *   sslinewidth, ttlinewidth - Width of the grid lines in ss and tt
k3d/share/shaders/k3d_lunette.sl:54: *   colorA, colorB - Two colors for the background pattern.
k3d/share/shaders/k3d_lunette.sl:67: *   gridDensity - Effective opacity of the grid pattern over the underlying
k3d/share/shaders/k3d_lunette.sl:71:color lunetteColor (
k3d/share/shaders/k3d_lunette.sl:72:	float ss;		/* ss coordinate for the lunette pattern */
k3d/share/shaders/k3d_lunette.sl:73:	float tt;		/* tt coordinate for the lunette pattern */
k3d/share/shaders/k3d_lunette.sl:75:	float ttrepeats;	/* number of repeats in the tt direction */
k3d/share/shaders/k3d_lunette.sl:77:	float ttlinewidth;	/* proportional width of lines in tt */
k3d/share/shaders/k3d_lunette.sl:78:	color colorA;		/* first color in the pattern */
k3d/share/shaders/k3d_lunette.sl:79:	color colorB;		/* second color in the pattern */
k3d/share/shaders/k3d_lunette.sl:86:	float gridDensity;	/* density of the grid pattern */
k3d/share/shaders/k3d_lunette.sl:100:	float pulsett = filteredpulsetrain(
k3d/share/shaders/k3d_lunette.sl:101:		1/ttrepeats, ttlinewidth, tt, filterwidth(tt)
k3d/share/shaders/k3d_lunette.sl:103:	float pulsegrid = 1 - min(pulsess, pulsett); 
k3d/share/shaders/k3d_lunette.sl:106:	 * Find the base color for the pattern.  The base color is a mix
k3d/share/shaders/k3d_lunette.sl:111:		point(ss*ssrepeats, tt*ttrepeats, noiseRandom);
k3d/share/shaders/k3d_lunette.sl:120:	 * find the base line color for the grid pattern
k3d/share/shaders/k3d_lunette.sl:131:surface k3d_lunette (
k3d/share/shaders/k3d_lunette.sl:138:	/* Grid pattern parameters. */	
k3d/share/shaders/k3d_lunette.sl:157:	 * fetch the lunette color
k3d/share/shaders/k3d_lunette.sl:159:	color cc = lunetteColor(
k3d/share/shaders/k3d_map_pattern_1.sl:1:surface k3d_map_pattern_1 (
k3d/share/shaders/k3d_map_pattern_1.sl:8:float tt1=1; 
k3d/share/shaders/k3d_map_pattern_1.sl:25:float temp_tt1;
k3d/share/shaders/k3d_map_pattern_1.sl:27:if (tt1 ==1) {temp_tt1=t;} else {temp_tt1=tt1;}
k3d/share/shaders/k3d_map_pattern_1.sl:36:temt_c1=texture(map1,temp_ss1,temp_tt1,"swidth",swidth1,"twidth",twidth1,"samples",samples1);
k3d/share/shaders/k3d_map_pattern_1.sl:40:temt_c1=texture(map1[channel1],temp_ss1,temp_tt1,"swidth",swidth1,"twidth",twidth1,"samples",samples1);
k3d/share/shaders/k3d_matte.sl:1:/* matte.sl - Standard matte surface for RenderMan Interface.
k3d/share/shaders/k3d_matte.sl:9:surface k3d_matte(float Ka = 1;
k3d/share/shaders/k3d_mondometal.sl:4: * Layered shader with mondo as a base and a metal modulated with a matte file.

k3d/share/shaders/k3d_mondometal.sl:48:    string metalMatte = "";

k3d/share/shaders/k3d_mondometal.sl:63:    color Cmatte = 0;

k3d/share/shaders/k3d_mondometal.sl:64:    float ss, tt, roughness, diff, spec, bmp;

k3d/share/shaders/k3d_mondometal.sl:68:    tt = vector(s, t, 1) . vector(transform("shader", STMatrix1));

k3d/share/shaders/k3d_mondometal.sl:73:        Csurf = Cs * color texture(abColorMap, ss, tt,

k3d/share/shaders/k3d_mondometal.sl:78:            Copac = float texture(abColorMap[3], ss, tt, 

k3d/share/shaders/k3d_mondometal.sl:98:        diff = abDiffuse * float texture(abDiffuseMap, ss, tt, 

k3d/share/shaders/k3d_mondometal.sl:110:        spec = abSpecular * float texture(abSpecularMap, ss, tt, 

k3d/share/shaders/k3d_mondometal.sl:123:        Cspec = abSpecularColor * color texture(abSpecularColorMap, ss, tt,

k3d/share/shaders/k3d_mondometal.sl:134:        roughness = abRoughness * float texture(abRoughnessMap, ss, tt,

k3d/share/shaders/k3d_mondometal.sl:148:            Copac = Copac * color texture(abTransparencyMap, ss, tt,

k3d/share/shaders/k3d_mondometal.sl:154:            Copac = Copac * (color(1) - color texture(abTransparencyMap, ss, tt,

k3d/share/shaders/k3d_mondometal.sl:163:        Cincand = abIncandescence * color texture(abIncandescenseMap, ss, tt,

k3d/share/shaders/k3d_mondometal.sl:176:        bmp = abBumpScale * float texture( abBumpMap, ss, tt,

k3d/share/shaders/k3d_mondometal.sl:191:            P = PP; /* usually it's better to do displacments in displacement shader */

k3d/share/shaders/k3d_mondometal.sl:220:    if(metalMatte != "")

k3d/share/shaders/k3d_mondometal.sl:222:        Cmatte = color texture(metalMatte, ss, tt,

k3d/share/shaders/k3d_mondometal.sl:233:    if(comp(Cmatte, 1) < 0.5){

k3d/share/shaders/k3d_mysky.sl:14: *    puffy clouds (like painted clouds on a wall), then it would be pretty

k3d/share/shaders/k3d_mysky.sl:25: *    setting the "octaves" parameter based on distance from eye point.

k3d/share/shaders/k3d_mysky.sl:78:  /* Shade like matte, but use color Ct */

k3d/share/shaders/k3d_noisysmoke.sl:34:		      color scatter = 1;	/* for sky, try (1, 2.25, 21) */
k3d/share/shaders/k3d_noisysmoke.sl:55:  color li, last_li, lighttau;
k3d/share/shaders/k3d_noisysmoke.sl:86:	  lighttau = .5 * ss * (li * dtau + last_li * last_dtau);
k3d/share/shaders/k3d_noisysmoke.sl:88:	  scat = -tau * scatter;
k3d/share/shaders/k3d_noisysmoke.sl:92:	  dC = lighttau * dO;
k3d/share/shaders/k3d_oak.sl:6: *    pattern, one should translate the shadingspace (which defaults to
k3d/share/shaders/k3d_oak.sl:11: *   shadingspace - space in which the pattern is laid out
k3d/share/shaders/k3d_oak.sl:12: *   shadingfreq - overall scaling factor for the pattern
k3d/share/shaders/k3d_oak.sl:15: * Parameters for the color and pattern: 
k3d/share/shaders/k3d_oakplank.sl:6: *    the y axis.  The subpattern within each individual plank is just
k3d/share/shaders/k3d_oakplank.sl:10: *   shadingspace - space in which the pattern is laid out
k3d/share/shaders/k3d_oakplank.sl:11: *   shadingfreq - overall scaling factor for the pattern
k3d/share/shaders/k3d_oakplank.sl:14: * Parameters for the pattern of the plank structure: 
k3d/share/shaders/k3d_oakplank.sl:22: * Parameters for the color and pattern of the wood grain: 
k3d/share/shaders/k3d_oakplank.sl:43: *   rayjitter, raysamples - ray tracing controls
k3d/share/shaders/k3d_oakplank.sl:66:#include "k3d_patterns.h"
k3d/share/shaders/k3d_oakplank.sl:71:/* Given 2-D texture coordinates ss,tt, filter widths ds, dt, and the
k3d/share/shaders/k3d_oakplank.sl:76:float plankpattern(float ss, tt, ds, dt;
k3d/share/shaders/k3d_oakplank.sl:86:  float newt = tt + planklength * cellnoise(swhichplank);
k3d/share/shaders/k3d_oakplank.sl:124:  float ss = xcomp(Pshad), tt = ycomp(Pshad), height = zcomp(Pshad);
k3d/share/shaders/k3d_oakplank.sl:125:  float dss = filterwidth(ss), dtt = filterwidth(tt);
k3d/share/shaders/k3d_oakplank.sl:128:   * Find out where in the pattern we are: which plank we're on, and
k3d/share/shaders/k3d_oakplank.sl:132:  float inplank = plankpattern(ss, tt, dss, dtt, plankwidth, planklength,
k3d/share/shaders/k3d_orennayar.sl:13: *   tend to act more like retroreflectors than like isotropic scatterers.
k3d/share/shaders/k3d_orennayar.sl:16: *   Ka, Kd - just like matte.sl
k3d/share/shaders/k3d_orennayar.sl:35: *   14 June 1994 -- written by Larry Gritz
k3d/share/shaders/k3d_outlet.sl:13: *   Ka, Kd 	   	work just like the matte shader
k3d/share/shaders/k3d_outlet.sl:17: * AUTHOR: written by Larry Gritz
k3d/share/shaders/k3d_outlet.sl:20: *      June 1992 -- first written by lg for the Kitchen image
k3d/share/shaders/k3d_outline.sl:1:/* IDoutline written by Ivan DeWolf
k3d/share/shaders/k3d_painted_constant.sl:15:			float tt = mix(t0, t1, t);
k3d/share/shaders/k3d_painted_constant.sl:17:			Ct = color texture(texturename, ss, tt);
k3d/share/shaders/k3d_painted_constant.sl:18:			Ot = float texture(texturename[3], ss, tt);
k3d/share/shaders/k3d_paintedplastic.sl:37:			float tt = mix(t0, t1, t);
k3d/share/shaders/k3d_paintedplastic.sl:39:			Ct = color texture(texturename, ss, tt);
k3d/share/shaders/k3d_paintedplastic.sl:40:			Ot = float texture(texturename[3], ss, tt);
k3d/share/shaders/k3d_parquet_plank.sl:6: *   like oak plank parquet floor tiles.  The actual wood and plank pattern
k3d/share/shaders/k3d_parquet_plank.sl:22: *   wavy - relative wavyness of the ring pattern
k3d/share/shaders/k3d_parquet_plank.sl:24: * ANTIALIASING: this shader does a pretty good job of antialiasing itself,
k3d/share/shaders/k3d_parquet_plank.sl:50:  float swidth, twidth, fwidth, ss, tt, w, h, fade, ttt;
k3d/share/shaders/k3d_parquet_plank.sl:75:  tt = (txtscale * t) / PGHEIGHT;
k3d/share/shaders/k3d_parquet_plank.sl:76:  whichplank = floor(tt);
k3d/share/shaders/k3d_parquet_plank.sl:81:      tt = txtscale * s / PGHEIGHT;
k3d/share/shaders/k3d_parquet_plank.sl:82:      whichplank = floor(tt);
k3d/share/shaders/k3d_parquet_plank.sl:88:  tt -= whichplank;
k3d/share/shaders/k3d_parquet_plank.sl:107:      clamp(boxstep(GHF - twidth, GHF, tt), max(1 - GHF / twidth, 0),
k3d/share/shaders/k3d_parquet_plank.sl:108:	    1) - clamp(boxstep(1 - GHF - twidth, 1 - GHF, tt), 0,
k3d/share/shaders/k3d_parquet_plank.sl:112:   * h = step (GHF,tt) - step(1-GHF,tt);
k3d/share/shaders/k3d_parquet_plank.sl:118:   * Add the ring patterns
k3d/share/shaders/k3d_parquet_plank.sl:123:      ttt = tt / 4 + whichplank / 28.38 + wavy * noise(8 * ss, tt / 4);
k3d/share/shaders/k3d_parquet_plank.sl:124:      r = ringscale * noise(ss - whichplank, ttt);
k3d/share/shaders/k3d_parquet_plank.sl:131:       * Multiply the ring pattern by the fine grain
k3d/share/shaders/k3d_parquet_plank.sl:136:	  r2 = 1.3 - noise(ss * grainscale, (tt * grainscale / 4));
k3d/share/shaders/k3d_parquet_plank.sl:147:  /* Mix the light and dark wood according to the grain pattern */
k3d/share/shaders/k3d_parquet_plank2.sl:7: *   like oak plank parquet floor tiles.  The actual wood and plank pattern
k3d/share/shaders/k3d_parquet_plank2.sl:23: *   wavy - relative wavyness of the ring pattern
k3d/share/shaders/k3d_parquet_plank2.sl:25: * ANTIALIASING: this shader does a pretty good job of antialiasing itself,
k3d/share/shaders/k3d_parquet_plank2.sl:28: * AUTHOR: written by Larry Gritz, the George Washington University
k3d/share/shaders/k3d_parquet_plank2.sl:35: *    10 Feb 1995 - written by Larry Gritz, based on my "plank" shader.
k3d/share/shaders/k3d_parquet_plank2.sl:64:  float swidth, twidth, fwidth, ss, tt, w, h, fade, ttt;
k3d/share/shaders/k3d_parquet_plank2.sl:85:  tt = (txtscale * t) / PGHEIGHT;
k3d/share/shaders/k3d_parquet_plank2.sl:86:  whichplank = floor(tt);
k3d/share/shaders/k3d_parquet_plank2.sl:90:      tt = txtscale * s / PGHEIGHT;
k3d/share/shaders/k3d_parquet_plank2.sl:91:      whichplank = floor(tt);
k3d/share/shaders/k3d_parquet_plank2.sl:95:  tt -= whichplank;
k3d/share/shaders/k3d_parquet_plank2.sl:109:  else h = clamp (boxstep(GHF-twidth,GHF,tt), max(1-GHF/twidth,0),1)
k3d/share/shaders/k3d_parquet_plank2.sl:110:	 - clamp (boxstep(1-GHF-twidth,1-GHF,tt), 0, 2*GHF/twidth);
k3d/share/shaders/k3d_parquet_plank2.sl:113:   * h = step (GHF,tt) - step(1-GHF,tt);
k3d/share/shaders/k3d_parquet_plank2.sl:119:   * Add the ring patterns
k3d/share/shaders/k3d_parquet_plank2.sl:123:      ttt = tt/4+whichplank/28.38 + wavy * noise (8*ss, tt/4);
k3d/share/shaders/k3d_parquet_plank2.sl:124:      r = ringscale * noise (ss-whichplank, ttt);
k3d/share/shaders/k3d_parquet_plank2.sl:130:       * Multiply the ring pattern by the fine grain
k3d/share/shaders/k3d_parquet_plank2.sl:134:	  r2 = 1.3 - noise (ss*grainscale, (tt*grainscale/4));
k3d/share/shaders/k3d_parquet_plank2.sl:143:  /* Mix the light and dark wood according to the grain pattern */
k3d/share/shaders/k3d_parquet_tile.sl:8: *   like oak plank parquet floor tiles.  The actual wood and plank pattern
k3d/share/shaders/k3d_parquet_tile.sl:24: *   wavy - relative wavyness of the ring pattern
k3d/share/shaders/k3d_parquet_tile.sl:26: * ANTIALIASING: this shader does a pretty good job of antialiasing itself,
k3d/share/shaders/k3d_parquet_tile.sl:29: * AUTHOR: written by Larry Gritz, the George Washington University
k3d/share/shaders/k3d_parquet_tile.sl:36: *    10 Feb 1995 - written by Larry Gritz, based on my "plank" shader.
k3d/share/shaders/k3d_parquet_tile.sl:79:  float swidth, twidth, fwidth, ss, tt, w, h, fade, ttt;
k3d/share/shaders/k3d_parquet_tile.sl:100:  tt = (txtscale * t) / PGHEIGHT;
k3d/share/shaders/k3d_parquet_tile.sl:101:  whichplank = floor(tt);
k3d/share/shaders/k3d_parquet_tile.sl:105:      tt = txtscale * s / PGHEIGHT;
k3d/share/shaders/k3d_parquet_tile.sl:106:      whichplank = floor(tt);
k3d/share/shaders/k3d_parquet_tile.sl:110:  tt -= whichplank;
k3d/share/shaders/k3d_parquet_tile.sl:124:  else h = clamp (boxstep(GHF-twidth,GHF,tt), max(1-GHF/twidth,0),1)
k3d/share/shaders/k3d_parquet_tile.sl:125:	 - clamp (boxstep(1-GHF-twidth,1-GHF,tt), 0, 2*GHF/twidth);
k3d/share/shaders/k3d_parquet_tile.sl:128:   * h = step (GHF,tt) - step(1-GHF,tt);
k3d/share/shaders/k3d_parquet_tile.sl:134:   * Add the ring patterns
k3d/share/shaders/k3d_parquet_tile.sl:138:      ttt = tt/4+whichplank/28.38 + wavy * noise (8*ss, tt/4);
k3d/share/shaders/k3d_parquet_tile.sl:139:      r = ringscale * noise (ss-whichplank, ttt);
k3d/share/shaders/k3d_parquet_tile.sl:145:       * Multiply the ring pattern by the fine grain
k3d/share/shaders/k3d_parquet_tile.sl:149:	  r2 = 1.3 - noise (ss*grainscale, (tt*grainscale/4));
k3d/share/shaders/k3d_parquet_tile.sl:158:  /* Mix the light and dark wood according to the grain pattern */
k3d/share/shaders/k3d_planetclouds.sl:30: *           AttributeBegin
k3d/share/shaders/k3d_planetclouds.sl:31: *             Attribute "render" "casts_shadows" "shade"
k3d/share/shaders/k3d_planetclouds.sl:34: *           AttributeEnd
k3d/share/shaders/k3d_planetclouds.sl:108:  /* Shade like matte, but with color scaled by cloud opacity */
k3d/share/shaders/k3d_plank.sl:20: *   wavy - relative wavyness of the ring pattern
k3d/share/shaders/k3d_plank.sl:22: * ANTIALIASING: this shader does a pretty good job of antialiasing itself,
k3d/share/shaders/k3d_plank.sl:47:  float swidth, twidth, fwidth, ss, tt, w, h, fade, ttt;
k3d/share/shaders/k3d_plank.sl:72:  tt = (txtscale * t / PGHEIGHT) + 10 * snoise(0.5 + whichrow);
k3d/share/shaders/k3d_plank.sl:73:  whichplank = floor(tt);
k3d/share/shaders/k3d_plank.sl:74:  tt -= whichplank;
k3d/share/shaders/k3d_plank.sl:93:      clamp(boxstep(GHF - twidth, GHF, tt), max(1 - GHF / twidth, 0),
k3d/share/shaders/k3d_plank.sl:94:	    1) - clamp(boxstep(1 - GHF - twidth, 1 - GHF, tt), 0,
k3d/share/shaders/k3d_plank.sl:98:   * h = step (GHF,tt) - step(1-GHF,tt);
k3d/share/shaders/k3d_plank.sl:104:   * Add the ring patterns
k3d/share/shaders/k3d_plank.sl:109:      ttt = tt + whichplank / 28.38 + wavy * noise(8 * ss, tt);
k3d/share/shaders/k3d_plank.sl:110:      r = ringscale * noise(ss - whichplank, ttt);
k3d/share/shaders/k3d_plank.sl:117:       * Multiply the ring pattern by the fine grain
k3d/share/shaders/k3d_plank.sl:122:	  r2 = 1.3 - noise(ss * grainscale, (tt * grainscale));
k3d/share/shaders/k3d_plank.sl:133:  /* Mix the light and dark wood according to the grain pattern */
k3d/share/shaders/k3d_projectionmap_plastic.sl:53:			float tt = mix(t1, t0, y);
k3d/share/shaders/k3d_projectionmap_plastic.sl:55:			Ct = color texture(texturename, ss, tt);
k3d/share/shaders/k3d_projectionmap_plastic.sl:56:			Ot = float texture(texturename[3], ss, tt);
k3d/share/shaders/k3d_puffyclouds.sl:12: *    puffy clouds (like painted clouds on a wall), then it would be pretty
k3d/share/shaders/k3d_puffyclouds.sl:23: *    setting the "octaves" parameter based on distance from eye point.
k3d/share/shaders/k3d_puffyclouds.sl:75:  /* Shade like matte, but use color Ct */
k3d/share/shaders/k3d_redapple.sl:6: * Copyright (C) Jonathan Merritt, 1999.
k3d/share/shaders/k3d_redapple.sl:25: * pictures, job offers at Pixar, etc... to:  jmerritt@SpamSucks_warpax.com   :-)
k3d/share/shaders/k3d_redapple.sl:80:	 * Standard settings
k3d/share/shaders/k3d_redapple.sl:156:	 * dottiness technique is stolen from LG's starfield 
k3d/share/shaders/k3d_redapple.sl:167:	 * attached, and where the wierd bit at the very bottom
k3d/share/shaders/k3d_redapple.sl:190:	 * noise, affected a little by the brown specks, and
k3d/share/shaders/k3d_ripple.sl:18:  float ss, tt;

k3d/share/shaders/k3d_rubber.sl:6: * rubber(): This shader generates a rubber surface. It is a matte shader that
k3d/share/shaders/k3d_rubber.sl:7: * adds in a little white dust to mimic the dust on a new eraser.
k3d/share/shaders/k3d_rubber.sl:22:	/* Compute a matte surface. */
k3d/share/shaders/k3d_ruledpaper.sl:17: * AUTHOR: written by Emil Mikulic
k3d/share/shaders/k3d_ruledpaper.sl:28: *   Don't worry about the paper anatomy settings. I moved them to
k3d/share/shaders/k3d_ruledpaper.sl:48:	/* Paper anatomy settings */
k3d/share/shaders/k3d_ruledpaper.sl:61:	// Top and bottom margins for lines
k3d/share/shaders/k3d_ruledpaper.sl:67:	// Settings for binder holes (circles)
k3d/share/shaders/k3d_ruledpaper.sl:70:	// Circle radius in ss/tt coord. system
k3d/share/shaders/k3d_ruledpaper.sl:77:// Fancy macro checks ss/tt coords against bounding box and [if inside]
k3d/share/shaders/k3d_ruledpaper.sl:82:	if ((tt>(tm-circr)/ph) && (tt>(tm+circr)/ph))	\
k3d/share/shaders/k3d_ruledpaper.sl:84:		if (distance( point(ss,tt,0), point(sm,tm,0) ) <= circr)	\
k3d/share/shaders/k3d_ruledpaper.sl:91:    float ss,tt;
k3d/share/shaders/k3d_ruledpaper.sl:119:		tt = t * ph;
k3d/share/shaders/k3d_rustymetal.sl:5: *   A rough metal surface with controllable rust spots.  The rust pattern
k3d/share/shaders/k3d_rustymetal.sl:7: *   rusty, shade like rust colored matte, and also make it bumpy (like
k3d/share/shaders/k3d_rustymetal.sl:14: *   txtscale - overall scaling factor of the rust pattern.
k3d/share/shaders/k3d_rustymetal.sl:19: *   The fractal sum used to determine the rust pattern chooses a number of
k3d/share/shaders/k3d_rustymetal.sl:82:   * account the perturbed normal and shading like matte.
k3d/share/shaders/k3d_saturn.sl:84:  /* Shade using matte model */
k3d/share/shaders/k3d_saturnring.sl:105:			/* A Matte model */
k3d/share/shaders/k3d_scartissue.sl:1:/*  IDscartissue.sl written by Ivan DeWolf
k3d/share/shaders/k3d_screen_aa.sl:7: *   to change the material appearance.  This texture antialiases pretty
k3d/share/shaders/k3d_screen_aa.sl:15: * AUTHOR: written by Larry Gritz
k3d/share/shaders/k3d_screen_aa.sl:37:  float ss, tt;			/* s,t, parameters in phase */
k3d/share/shaders/k3d_screen_aa.sl:48:  /* Figure out where in the pattern we are */
k3d/share/shaders/k3d_screen_aa.sl:50:  tt = mod(frequency * t, 1);
k3d/share/shaders/k3d_screen_aa.sl:65:      clamp(boxstep(GWF - twidth, GWF, tt), max(1 - GWF / twidth, 0),
k3d/share/shaders/k3d_screen_aa.sl:66:	    1) - clamp(boxstep(1 - GWF - twidth, 1 - GWF, tt), 0,
k3d/share/shaders/k3d_screen_aa.sl:70:   *    h = step (GWF,tt) - step(1-GWF,tt);
k3d/share/shaders/k3d_sdixon.sl:24:	 *   metallic-green ink to a matte-yellow background. */
k3d/share/shaders/k3d_sdixon.sl:35:	   from a matte surface to a metallic one as ink is added. */
k3d/share/shaders/k3d_shadowspot.sl:24:	float	attenuation, 	/* falloff from center of illumination cone */
k3d/share/shaders/k3d_shadowspot.sl:29:		attenuation = pow(cosangle, beamdistribution) / (L.L);
k3d/share/shaders/k3d_shadowspot.sl:30:		attenuation *= smoothstep( cosoutside, cosinside, cosangle );
k3d/share/shaders/k3d_shadowspot.sl:32:		    attenuation *= (1.0 - shadow( shadowfile, Ps, "samples", samples, "blur", blur, "bias", bias ));
k3d/share/shaders/k3d_shadowspot.sl:33:		Cl = attenuation * intensity * lightcolor;
k3d/share/shaders/k3d_shifteddrtile.sl:22: *  Also, it would be better to set the width of the ring rather than
k3d/share/shaders/k3d_shifteddrtile.sl:64:	float ss, tt;      /* tiled s, t */
k3d/share/shaders/k3d_shifteddrtile.sl:86:	tt = repeat (t, tfreq);
k3d/share/shaders/k3d_shifteddrtile.sl:87:	d = distance (center, (ss, tt, 0));
k3d/share/shaders/k3d_shiftedmoontile.sl:62:	float ss, tt;            /* Tile coordinates */
k3d/share/shaders/k3d_shiftedmoontile.sl:77:	tt = repeat (t, tfreq);
k3d/share/shaders/k3d_shiftedmoontile.sl:79:	d = distance (center, (ss, tt, 0));
k3d/share/shaders/k3d_shiftedmoontile.sl:80:	d2 = distance (eclipseCenter, (ss, tt, 0));
k3d/share/shaders/k3d_shiny.sl:9: *    rayjitter, raysamples - ray tracing controls for reflection
k3d/share/shaders/k3d_shinyplastic.sl:10: *    rayjitter, raysamples - ray tracing controls for reflection
k3d/share/shaders/k3d_skin1.sl:23: * of blemishes on the skin. Use to give skin a little variation.
k3d/share/shaders/k3d_skin1.sl:97: * "Reflection from layered surfaces due to subsurface scattering", 
k3d/share/shaders/k3d_skin1.sl:103:   back-scattering and positive values correspond to more forward scattering.
k3d/share/shaders/k3d_skin1.sl:110:/* Compute a the single-scattering approximation to scattering from
k3d/share/shaders/k3d_skin1.sl:113:   scattering albedo (between 0 and 1 for physically-valid volumes),
k3d/share/shaders/k3d_skin1.sl:114:   and the thickness of the volume, use the closed-form single-scattering
k3d/share/shaders/k3d_skin1.sl:115:   equation to approximate overall scattering.
k3d/share/shaders/k3d_skin1.sl:117:float singleScatter(vector wi, wo; normal n; float g, albedo, thickness) {
k3d/share/shaders/k3d_skin1.sl:155:    (singleScatter(T, T2, Nn, .8, .8, thickness) +
k3d/share/shaders/k3d_skin1.sl:156:     singleScatter(T, T2, Nn, .3, .5, thickness) +
k3d/share/shaders/k3d_skin1.sl:157:     singleScatter(T, T2, Nn, 0., .4, thickness));
k3d/share/shaders/k3d_skin1.sl:223:  /* layer 1 .- apply a subsurface scattered BRDF to the surface.
k3d/share/shaders/k3d_skin2.sl:4: * Copyright (C) 2000-2001, Matt Pharr <mmp@SpamSucks_Exluna.com> 
k3d/share/shaders/k3d_skin2.sl:12: * "Reflection from layered surfaces due to subsurface scattering", 
k3d/share/shaders/k3d_skin2.sl:22:   back-scattering and positive values correspond to more forward scattering.
k3d/share/shaders/k3d_skin2.sl:29:/* Compute a the single-scattering approximation to scattering from
k3d/share/shaders/k3d_skin2.sl:32:   scattering albedo (between 0 and 1 for physically-valid volumes),
k3d/share/shaders/k3d_skin2.sl:33:   and the thickness of the volume, use the closed-form single-scattering
k3d/share/shaders/k3d_skin2.sl:34:   equation to approximate overall scattering.
k3d/share/shaders/k3d_skin2.sl:36:float singleScatter(vector wi, wo; normal n; float g, albedo, thickness) {
k3d/share/shaders/k3d_skin2.sl:58:   of refraction for the transmitted ray (say something like 1.4 for
k3d/share/shaders/k3d_skin2.sl:81:		(singleScatter(T, T2, Nn, .8, .8, thickness) +
k3d/share/shaders/k3d_skin2.sl:82:		 singleScatter(T, T2, Nn, .3, .5, thickness) +
k3d/share/shaders/k3d_skin2.sl:83:		 singleScatter(T, T2, Nn, 0., .4, thickness));
k3d/share/shaders/k3d_slateroof.sl:25: 		the smaller the detail on the tile pattern
k3d/share/shaders/k3d_slateroof.sl:28: 		different random patterning. A value > 20 works best
k3d/share/shaders/k3d_slateroof.sl:62:                 twidth = 1 / tfreq, 		/* ditto for the t direction */
k3d/share/shaders/k3d_slateroof.sl:66:	float stile, ttile, 							/* An integer identifying the current tile */
k3d/share/shaders/k3d_slateroof.sl:86:   ttile = tcoord / twidth;
k3d/share/shaders/k3d_slateroof.sl:87:	if (mod(ttile,2) >= 1)
k3d/share/shaders/k3d_slateroof.sl:91:   t_offset = ttile - floor(ttile);
k3d/share/shaders/k3d_slateroof.sl:93:   ttile = floor(ttile);
k3d/share/shaders/k3d_slateroof.sl:103:	ct = ttile + .5;
k3d/share/shaders/k3d_slateroof.sl:108:	if (ttile < tfreq - 1)
k3d/share/shaders/k3d_slateroof.sl:133:	 * storing the new tile in stile, ttile and new offset
k3d/share/shaders/k3d_slateroof.sl:135:	if ((t_offset <= maxadd) && (ttile >= 1))
k3d/share/shaders/k3d_slateroof.sl:138:			if (mod(ttile,2) >= 1)
k3d/share/shaders/k3d_slateroof.sl:148:			ct = ttile - .5;
k3d/share/shaders/k3d_slateroof.sl:159:					ttile = ttile - 1;
k3d/share/shaders/k3d_slateroof.sl:192:	if (ttile < tfreq - 1) 
k3d/share/shaders/k3d_slateroofd.sl:20: 			different random patterning. A value > 20 works best
k3d/share/shaders/k3d_slateroofd.sl:31:		the bottom of the tile, gaps to either side and the whole tile gently
k3d/share/shaders/k3d_slateroofd.sl:35:		considering with one calculated for the tile above, being a little
k3d/share/shaders/k3d_slateroofd.sl:55:                 twidth = 1 / tfreq, 		/* ditto for the t direction */
k3d/share/shaders/k3d_slateroofd.sl:58:   float stile, ttile, 							/* An integer identifying the current tile */
k3d/share/shaders/k3d_slateroofd.sl:77:   ttile = tcoord / twidth;
k3d/share/shaders/k3d_slateroofd.sl:78:	if (mod(ttile,2) >= 1)
k3d/share/shaders/k3d_slateroofd.sl:82:   t_offset = ttile - floor(ttile);
k3d/share/shaders/k3d_slateroofd.sl:84:   ttile = floor(ttile);
k3d/share/shaders/k3d_slateroofd.sl:89:	if (ttile < tfreq - 1)
k3d/share/shaders/k3d_slateroofd.sl:95:   		ct = ttile + .5;
k3d/share/shaders/k3d_slateroofd.sl:103: 		/* the very bottom row cannot expand */
k3d/share/shaders/k3d_slateroofd.sl:125:		storing the new tile in stile, ttile and new offset
k3d/share/shaders/k3d_slateroofd.sl:127:	if ((t_offset <= maxadd) && (ttile >= 1))
k3d/share/shaders/k3d_slateroofd.sl:130:			if (mod(ttile,2) >= 1)
k3d/share/shaders/k3d_slateroofd.sl:140:			ct = ttile - .5;
k3d/share/shaders/k3d_slateroofd.sl:150:					ttile = ttile - 1;
k3d/share/shaders/k3d_slideprojector.sl:18:  float attenuation, cosangle;
k3d/share/shaders/k3d_slideprojector.sl:36:    attenuation = pow(cosangle, beamdistribution) / (L.L);
k3d/share/shaders/k3d_slideprojector.sl:37:    attenuation *=
k3d/share/shaders/k3d_slideprojector.sl:50:    Cl = attenuation * intensity * lightcolor * Ct;
k3d/share/shaders/k3d_smoke.sl:6: *    used to find scattering and extinction.
k3d/share/shaders/k3d_smoke.sl:11: *   lightdensity - smoke density control as it affects light scattering
k3d/share/shaders/k3d_smoke.sl:19: *   scatter - when non-1, can be used to give wavelength-dependent
k3d/share/shaders/k3d_smoke.sl:38:		  output color Lscatter; output float smoke)
k3d/share/shaders/k3d_smoke.sl:40:  Lscatter = 0;
k3d/share/shaders/k3d_smoke.sl:47:      Lscatter += Cl;
k3d/share/shaders/k3d_smoke.sl:55:      if(comp(Lscatter, 0) + comp(Lscatter, 1) + comp(Lscatter, 2) > 0.01)
k3d/share/shaders/k3d_smoke.sl:80:		 color scatter = 1;	/* for sky, try (1, 2.25, 21) */
k3d/share/shaders/k3d_smoke.sl:96:  /* Get the in-scattered light and the local smoke density for the
k3d/share/shaders/k3d_smoke.sl:105:      /* Take a step and get the local scattered light and smoke density */
k3d/share/shaders/k3d_smoke.sl:111:      /* Find the blocking and light scattering contribution of 
k3d/share/shaders/k3d_smoke.sl:115:      color lighttau =
k3d/share/shaders/k3d_smoke.sl:119:      Cv += (1 - Ov) * lighttau;
k3d/share/shaders/k3d_smoke.sl:120:      Ov += (1 - Ov) * (1 - colorexp(-tau * scatter));
k3d/share/shaders/k3d_smoke2.sl:7: *    used to integrate the GADD to find scattering and extinction.
k3d/share/shaders/k3d_smoke2.sl:18: *   lightscale - multiplier for light scattered toward viewer in volume
k3d/share/shaders/k3d_smoke2.sl:83:	    color scatter = 1;   /* for sky, try (1, 2.25, 21) */
k3d/share/shaders/k3d_smoke2.sl:102:  color li, last_li, lighttau;
k3d/share/shaders/k3d_smoke2.sl:131:	  lighttau = .5 * ss * (li*dtau + last_li*last_dtau);
k3d/share/shaders/k3d_smoke2.sl:133:	  scat = -tau * scatter;
k3d/share/shaders/k3d_smoke2.sl:135:	  dC = lighttau * dO;
k3d/share/shaders/k3d_softboxes.sl:448:		color ttc;
k3d/share/shaders/k3d_softboxes.sl:450:		    ttc = Cl;
k3d/share/shaders/k3d_spacecloud.sl:64:  float ss, tt;
k3d/share/shaders/k3d_spacecloud.sl:88:	tt = t + adjust;
k3d/share/shaders/k3d_spacecloud.sl:89:	/* printf ("%.3f %.3f: %.3f %.3f\n", s, t, ss-s, tt-t); */
k3d/share/shaders/k3d_spacecloud.sl:93:		smoothPulse2Fuzz (startPulse, endPulse, bfuzz, afuzz, tt);
k3d/share/shaders/k3d_spaceshiphull1.sl:27:  float ss, tt, splate, tplate, platespecular;
k3d/share/shaders/k3d_spaceshiphull1.sl:34:  tt = t / height;
k3d/share/shaders/k3d_spaceshiphull1.sl:36:  tplate = floor(tt);
k3d/share/shaders/k3d_spotlight.sl:17:  float atten, cosangle;
k3d/share/shaders/k3d_spotlight.sl:23:    atten = pow(cosangle, beamdistribution) / (L.L);
k3d/share/shaders/k3d_spotlight.sl:24:    atten *=
k3d/share/shaders/k3d_spotlight.sl:26:    Cl = atten * intensity * lightcolor;
k3d/share/shaders/k3d_srfdeformation.sl:18:   by Rob Bredow and Scott Stokdyk 
k3d/share/shaders/k3d_star.sl:28:    float ss, tt, angle, r, a, in_out;
k3d/share/shaders/k3d_star.sl:37:    ss = s - sctr; tt = t - tctr;
k3d/share/shaders/k3d_star.sl:38:    angle = atan(ss, tt) + PI;
k3d/share/shaders/k3d_star.sl:39:    r = sqrt(ss*ss + tt*tt);
k3d/share/shaders/k3d_star.sl:48:    /* diffuse ("matte") shading model */
k3d/share/shaders/k3d_starfield.sl:8:	AUTHOR: written by Timothy M. Shead
k3d/share/shaders/k3d_stones.sl:31: * modified 10/17/02 Changed algorithms arround to make it render a little faster.
k3d/share/shaders/k3d_stones.sl:98: float ss, tt, stile,ttile;
k3d/share/shaders/k3d_stones.sl:121:   tt = repeat(cy,freq * tilefreq);
k3d/share/shaders/k3d_stones.sl:123:   ttile = whichtile(cy,freq * tilefreq);
k3d/share/shaders/k3d_stones.sl:126:   float stoneindex = stile + 13 * ttile;
k3d/share/shaders/k3d_stones.sl:131:   tt += noiscale * snoise(snoise2(s * noifreq, t * noifreq) + 333);
k3d/share/shaders/k3d_stones.sl:137:   point p2 = (ss,tt,0);
k3d/share/shaders/k3d_strata.sl:12: *    offset - z offset for the pattern
k3d/share/shaders/k3d_strata.sl:82:  /* Shade like matte, but with color scaled by cloudcolor and opacity */
k3d/share/shaders/k3d_stucco.sl:13: * AUTHOR: written by Larry Gritz (lg@bmrt.org)
k3d/share/shaders/k3d_superplank.sl:8: *   It can make the plank pattern as either straight staggered planks
k3d/share/shaders/k3d_superplank.sl:9: *   or in a parquet pattern.
k3d/share/shaders/k3d_superplank.sl:23: *   plankpattern - plank orientation pattern  1=straight, 2=parquet
k3d/share/shaders/k3d_superplank.sl:29: *   wavy - relative wavyness of the ring pattern
k3d/share/shaders/k3d_superplank.sl:36: * Antialiasing: this shader does a pretty good job of antialiasing itself,
k3d/share/shaders/k3d_superplank.sl:39: * Author: written by Larry Gritz
k3d/share/shaders/k3d_superplank.sl:47:#include "k3d_patterns.h"
k3d/share/shaders/k3d_superplank.sl:65:			float plankpattern = 1;	/* 1=straight, 2=parquet */
k3d/share/shaders/k3d_superplank.sl:86:  float ss, tt;
k3d/share/shaders/k3d_superplank.sl:99:  float fade, ttt;
k3d/share/shaders/k3d_superplank.sl:126:  tt = t * txtscale;
k3d/share/shaders/k3d_superplank.sl:129:  twidth = filterwidth(tt);
k3d/share/shaders/k3d_superplank.sl:134:   * the bumps scale relative to the overall pattern, rather than being
k3d/share/shaders/k3d_superplank.sl:141:   * 2. Plank pattern.
k3d/share/shaders/k3d_superplank.sl:146:  if(plankpattern == 1)
k3d/share/shaders/k3d_superplank.sl:154:      plank_t = tt / PGHEIGHT + 20 * plankstagger * cellnoise(whichrow);
k3d/share/shaders/k3d_superplank.sl:159:      /* Parquet pattern */
k3d/share/shaders/k3d_superplank.sl:164:      plank_t = tt / PGHEIGHT;
k3d/share/shaders/k3d_superplank.sl:168:	  plank_s = tt / PGWIDTH;
k3d/share/shaders/k3d_superplank.sl:173:	  ss = tt;
k3d/share/shaders/k3d_superplank.sl:174:	  tt = tmp;
k3d/share/shaders/k3d_superplank.sl:203:   * 3. Ring and grain patterns, color and specularity adjustment.
k3d/share/shaders/k3d_superplank.sl:217:      ring_t = tt * ringscale;
k3d/share/shaders/k3d_superplank.sl:218:      ttt = ring_t + whichplank * 28.38 + wavy * noise(8 * ring_s, ring_t);
k3d/share/shaders/k3d_superplank.sl:219:      ring = ringscale * noise(ring_s - whichplank * 4.18, ttt / 20);
k3d/share/shaders/k3d_superplank.sl:226:      /* Grain pattern */
k3d/share/shaders/k3d_superplank.sl:232:	  grain_t = tt * grainscale;
k3d/share/shaders/k3d_superplank.sl:252:  /* Darken the wood according to the ring and grain patterns */
k3d/share/shaders/k3d_superplank.sl:275:				  varnishbumpfreq * tt) - 1);
k3d/share/shaders/k3d_terran.sl:2:mottle_limit, mottle_scale, moddle_dim, mottle_mag - control the
k3d/share/shaders/k3d_terran.sl:3:           mottling that adds detail to lower latitude regions.
k3d/share/shaders/k3d_terran.sl:31:		   float depth_max = .5; float mottle_limit = 0.75;
k3d/share/shaders/k3d_terran.sl:32:		   float mottle_scale = 20; float mottle_dim = .25;
k3d/share/shaders/k3d_terran.sl:33:		   float mottle_mag = .02;)
k3d/share/shaders/k3d_terran.sl:141:      /* mottle the color some */
k3d/share/shaders/k3d_terran.sl:142:      if(latitude < mottle_limit)
k3d/share/shaders/k3d_terran.sl:144:	  PP = mottle_scale * Ptexture;
k3d/share/shaders/k3d_terran.sl:151:	      o *= mottle_dim;
k3d/share/shaders/k3d_terran.sl:153:	  Ct += (mottle_mag * purt) * (color(0.5, 0.175, 0.5));
k3d/share/shaders/k3d_terran.sl:172:  /* Shade using matte model */
k3d/share/shaders/k3d_terran2.sl:11: *   turbulence and mottling techniques.
k3d/share/shaders/k3d_terran2.sl:22: *                of the bump pattern.
k3d/share/shaders/k3d_terran2.sl:33: *    mottle_limit, mottle_scale, moddle_dim, mottle_mag - control the
k3d/share/shaders/k3d_terran2.sl:34: *               mottling that adds detail to lower latitude regions.
k3d/share/shaders/k3d_terran2.sl:93:	  float mottle_limit = 0.75;
k3d/share/shaders/k3d_terran2.sl:94:	  float mottle_scale = 20;
k3d/share/shaders/k3d_terran2.sl:95:	  float mottle_dim = .25;
k3d/share/shaders/k3d_terran2.sl:96:	  float mottle_mag = .02;)
k3d/share/shaders/k3d_terran2.sl:201:     /* mottle the color some */
k3d/share/shaders/k3d_terran2.sl:202:     if (latitude < mottle_limit) {
k3d/share/shaders/k3d_terran2.sl:203:         PP = mottle_scale * Ptexture;
k3d/share/shaders/k3d_terran2.sl:208:	     o *= mottle_dim;
k3d/share/shaders/k3d_terran2.sl:210:	 Ct += (mottle_mag * purt) * (color (0.5,0.175,0.5));
k3d/share/shaders/k3d_terran2.sl:227:  /* Shade using matte model */
k3d/share/shaders/k3d_texblender.sl:34:    color Cray = RayTrace (P, R, Kr, sqrt(blur), rayjitter, raysamples, alpha);
k3d/share/shaders/k3d_tooledsteel.sl:1:/*  tooledsteel.sl written 9/99 by Ivan DeWolf
k3d/share/shaders/k3d_tooledsteel.sl:143:	float angle, jitter;
k3d/share/shaders/k3d_tooledsteel.sl:154:	      jitter = (random()-.5)*Jspread;
k3d/share/shaders/k3d_tooledsteel.sl:156:	      Ntmp = rotate(Nf,angle+jitter,zro,VA);
k3d/share/shaders/k3d_toonmap.sl:16:float tt4=1; 
k3d/share/shaders/k3d_toonmap.sl:24:float tt3=1; 
k3d/share/shaders/k3d_toonmap.sl:37:float tt2=1; ) 
k3d/share/shaders/k3d_toonmap.sl:44:float temp_tt4;
k3d/share/shaders/k3d_toonmap.sl:46:if (tt4 ==1) {temp_tt4=t;} else {temp_tt4=tt4;}
k3d/share/shaders/k3d_toonmap.sl:55:temt_c4=texture(Highlight_Map,temp_ss4,temp_tt4,"swidth",swidth4,"twidth",twidth4,"samples",samples4);
k3d/share/shaders/k3d_toonmap.sl:59:temt_c4=texture(Highlight_Map[channel4],temp_ss4,temp_tt4,"swidth",swidth4,"twidth",twidth4,"samples",samples4);
k3d/share/shaders/k3d_toonmap.sl:65:float temp_tt3;
k3d/share/shaders/k3d_toonmap.sl:67:if (tt3 ==1) {temp_tt3=t;} else {temp_tt3=tt3;}
k3d/share/shaders/k3d_toonmap.sl:76:temt_c3=texture(Paint_Map,temp_ss3,temp_tt3,"swidth",swidth3,"twidth",twidth3,"samples",samples3);
k3d/share/shaders/k3d_toonmap.sl:80:temt_c3=texture(Paint_Map[channel3],temp_ss3,temp_tt3,"swidth",swidth3,"twidth",twidth3,"samples",samples3);
k3d/share/shaders/k3d_toonmap.sl:86:float temp_tt2;
k3d/share/shaders/k3d_toonmap.sl:88:if (tt2 ==1) {temp_tt2=t;} else {temp_tt2=tt2;}
k3d/share/shaders/k3d_toonmap.sl:97:temt_c2=texture(Ink_Map,temp_ss2,temp_tt2,"swidth",swidth2,"twidth",twidth2,"samples",samples2);
k3d/share/shaders/k3d_toonmap.sl:101:temt_c2=texture(Ink_Map[channel2],temp_ss2,temp_tt2,"swidth",swidth2,"twidth",twidth2,"samples",samples2);
k3d/share/shaders/k3d_translucency.sl:58:	float tt = (t - colorT) / colorScaleT;
k3d/share/shaders/k3d_translucency.sl:81:			float opac = float texture(colorTx[3], ss, tt);
k3d/share/shaders/k3d_translucency.sl:82:			Ct = color texture(colorTx, ss, tt, "blur", blurcolorTx) + (1-opac)*Cs;
k3d/share/shaders/k3d_translucency.sl:87:			float opac = float texture(colorTx2[3], ss, tt);
k3d/share/shaders/k3d_translucency.sl:88:			Ct = color texture(colorTx2, ss, tt, "blur", blurcolorTx2) + (1-opac)*Cs;
k3d/share/shaders/k3d_translucency.sl:99:			 Kt = float texture(transTex[0], ss, tt, "blur", transblurTx);
k3d/share/shaders/k3d_translucency.sl:105:			 Kt = float texture(transTex2[0], ss, tt, "blur", transblurTx2);
k3d/share/shaders/k3d_uberlight.sl:22: *   lighttype - one of "spot", "omni", or "arealight".  Spot lights are
k3d/share/shaders/k3d_uberlight.sl:25: *       Area lights are emitted from actual geometry (this only works on
k3d/share/shaders/k3d_uberlight.sl:31: *       this range, no energy is transmitted.
k3d/share/shaders/k3d_uberlight.sl:80: *       done and the light emitted from the source will be filtered
k3d/share/shaders/k3d_uberlight.sl:94: *       attenuation of light as it passes through a window with 
k3d/share/shaders/k3d_uberlight.sl:169: *       atmospheric scattering only for those lights that have this
k3d/share/shaders/k3d_uberlight.sl:183: * This shader was written as part of the course notes for ACM
k3d/share/shaders/k3d_uberlight.sl:187: * original attribution and all comments.
k3d/share/shaders/k3d_uberlight.sl:274: *   - attenuation factor based on the falloff and shaping
k3d/share/shaders/k3d_uberlight.sl:277:		       string lighttype;	/* what kind of light */
k3d/share/shaders/k3d_uberlight.sl:292:  float atten = 1;
k3d/share/shaders/k3d_uberlight.sl:295:  if(lighttype == "spot")
k3d/share/shaders/k3d_uberlight.sl:304:  atten *= smoothstep(znear - nearedge, znear, Pz);
k3d/share/shaders/k3d_uberlight.sl:305:  atten *= 1 - smoothstep(zfar, zfar + faredge, Pz);
k3d/share/shaders/k3d_uberlight.sl:312:	  atten *= pow(falloffdist / PLlen, falloff);
k3d/share/shaders/k3d_uberlight.sl:318:	  atten *= (maxintensity * exp(s * pow(PLlen / falloffdist, beta)));
k3d/share/shaders/k3d_uberlight.sl:323:  if(lighttype != "omni" && beamdistribution > 0)
k3d/share/shaders/k3d_uberlight.sl:324:    atten *= pow(zcomp(normalize(vector PL)), beamdistribution);
k3d/share/shaders/k3d_uberlight.sl:325:  if(lighttype == "spot")
k3d/share/shaders/k3d_uberlight.sl:327:      atten *=
k3d/share/shaders/k3d_uberlight.sl:332:  return atten;
k3d/share/shaders/k3d_uberlight.sl:371:		     string lighttype = "spot"; float intensity = 1;
k3d/share/shaders/k3d_uberlight.sl:424:  /* For PRMan, we've gotta do it the hard way */
k3d/share/shaders/k3d_uberlight.sl:429:  if(lighttype == "spot")
k3d/share/shaders/k3d_uberlight.sl:435:  else if(lighttype == "arealight")
k3d/share/shaders/k3d_uberlight.sl:447:    /* Accumulate attenuation of the light as it is affected by various
k3d/share/shaders/k3d_uberlight.sl:448:     * blockers and whatnot.  Start with no attenuation (i.e., a 
k3d/share/shaders/k3d_uberlight.sl:449:     * multiplicative attenuation of 1.
k3d/share/shaders/k3d_uberlight.sl:451:    float atten = 1.0;
k3d/share/shaders/k3d_uberlight.sl:457:    atten *=
k3d/share/shaders/k3d_uberlight.sl:458:      ShapeLightVolume(PL, lighttype, axis, cuton, cutoff, nearedge, faredge,
k3d/share/shaders/k3d_uberlight.sl:474:    if(atten > 0)
k3d/share/shaders/k3d_uberlight.sl:482:	    atten *= n;
k3d/share/shaders/k3d_uberlight.sl:521:    Cl = (atten * intensity) * lcol;
k3d/share/shaders/k3d_urbermap.sl:44:float ss, tt, roughness, diff, spec, bmp;
k3d/share/shaders/k3d_urbermap.sl:48:tt = vector(s, t, 1) . vector(transform("shader", STMatrix1));
k3d/share/shaders/k3d_urbermap.sl:53:Csurf = Cs * color texture(abColorMap, ss, tt,
k3d/share/shaders/k3d_urbermap.sl:58:Copac = float texture(abColorMap[3], ss, tt,
k3d/share/shaders/k3d_urbermap.sl:78:diff = abDiffuse * float texture(abDiffuseMap, ss, tt,
k3d/share/shaders/k3d_urbermap.sl:90:spec = abSpecular * float texture(abSpecularMap, ss, tt,
k3d/share/shaders/k3d_urbermap.sl:102:Cspec = abSpecularColor * color texture(abSpecularColorMap, ss, tt,
k3d/share/shaders/k3d_urbermap.sl:114:roughness = abRoughness * float texture(abRoughnessMap, ss, tt,
k3d/share/shaders/k3d_urbermap.sl:128:Copac = Copac * color texture(abTransparencyMap, ss, tt,
k3d/share/shaders/k3d_urbermap.sl:134:Copac = Copac * (color(1) - color texture(abTransparencyMap, ss, tt,
k3d/share/shaders/k3d_urbermap.sl:143:Cincand = abIncandescence * color texture(abIncandescenseMap, ss, tt,
k3d/share/shaders/k3d_urbermap.sl:156:bmp = abBumpScale * float texture( abBumpMap, ss, tt,
k3d/share/shaders/k3d_velvet.sl:7: *   An attempt at a velvet surface.
k3d/share/shaders/k3d_velvet.sl:10: *   - Scattering near the horizon, regardless of incident direction
k3d/share/shaders/k3d_velvet.sl:17: *   sheen:	color of retroreflective lobe and horizon scattering
k3d/share/shaders/k3d_velvet.sl:22: * AUTHOR: written by Stephen H. Westin, Ford Motor Company
k3d/share/shaders/k3d_velvet.sl:27: *			"backscatter" parameter to control it; added
k3d/share/shaders/k3d_velvet.sl:28: *			"edginess" parameter to control horizon scatter;
k3d/share/shaders/k3d_velvet.sl:40:	    float backscatter = 0.1,
k3d/share/shaders/k3d_velvet.sl:51:  float cosine, sine;            /* Components for horizon scatter */
k3d/share/shaders/k3d_velvet.sl:61:    shiny += pow ( cosine, 1.0/roughness ) * backscatter
k3d/share/shaders/k3d_velvet.sl:63:    /* Horizon scattering */
k3d/share/shaders/k3d_venus.sl:94:  /* Shade like matte, but with color scaled by cloud color */
k3d/share/shaders/k3d_venus2.sl:93:  /* Shade like matte, but with color scaled by cloud color */
k3d/share/shaders/k3d_volcube.sl:6:   StepJitter          - 0-1 jitter the sample position.
k3d/share/shaders/k3d_volcube.sl:188:	     float  StepJitter     = 0;
k3d/share/shaders/k3d_volcube.sl:219:    float  jitter       = (random() - .5) * StepJitter;
k3d/share/shaders/k3d_volcube.sl:221:    point  Pcur_obj     = inPoint_obj + jitter * step_obj;
k3d/share/shaders/k3d_volcube.sl:222:    point  Pcur        = P  + jitter * step_cur;
k3d/share/shaders/k3d_wallpaper.sl:28:    float ss, tt, angle, r, a, in_out;
k3d/share/shaders/k3d_wallpaper.sl:54:                tt = t - tctr;
k3d/share/shaders/k3d_wallpaper.sl:56:                angle = atan(ss, tt) + PI;
k3d/share/shaders/k3d_wallpaper.sl:57:                r = sqrt(ss*ss + tt*tt);
k3d/share/shaders/k3d_wallpaper.sl:69:    /* "matte" reflection model */
k3d/share/shaders/k3d_wallpaper_2stripe.sl:5: *   Makes a double striped pattern appropriate for wall paper.  Stripes
k3d/share/shaders/k3d_wallpaper_2stripe.sl:20: * AUTHOR: written by Larry Gritz (email: lg@bmrt.org)
k3d/share/shaders/k3d_wallpaper_2stripe.sl:26:#include "k3d_patterns.h"
k3d/share/shaders/k3d_water.sl:24: *      Aug 1991 -- written by lg in C

k3d/share/shaders/k3d_windowlight.sl:26:#include "k3d_patterns.h"
k3d/share/shaders/k3d_wood2.sl:14: * AUTHOR: written by Larry Gritz (lg@bmrt.org)
k3d/share/shaders/k3d_woodcut.sl:16:float stripemin, stripemax, tt;
k3d/share/shaders/k3d_woodcut.sl:37:tt = mod(z,1);
k3d/share/shaders/k3d_woodcut.sl:42:tt = mod(y,1);
k3d/share/shaders/k3d_woodcut.sl:76:float val = pulse(stripemin, stripemax, fuzz, tt);
