Shoestring Shaders

8/25/2014 Shoestring Shaders is now supported by Digital Carvers Guild and may be downloaded and purchased there.

After many great years of Carrara fun, from Metacreations to DAZ 8.5, I find that I have moved on in my life- I no longer have the passion for 3D. Rather than let Shoestring Shaders drift into the sunset, I have passed the source code to Eric Winemiller at DCG. Only fair, as he helped me get started, and then again and again (and again) through the years whenever my meager coding skills bumped up against my lofty ambitions.

If you are a licensed user already, I recommend you sign up for the DCG update mailing list in order to be kept abreast of the latest developments and bug fixes. If you aren't a licensed user, WHAT THE HECK ARE YOU WAITING FOR!? Head on over and support Eric! This website will be left up for the time being in case anyone is looking for any of the content. Have fun, and keep making art!

Signing off, Markd

click for .wmv (wmv9)


Key is used to knock out a mask based on a single color (or color range). It can be used in the alpha channel, transparency channel, or color channel (where it can directly affect the alpha of the channel)


Drip makes a perfect single ripple. . . great for single raindrops, multiple raindrops (with Supermixer in add mode), and impact hits of all types. You specify where the ripple starts, how fast it moves, how fast it fades in (or out), and how tall it is. There is even a Rebound box to let you simulate that secondary splash when the ejected material hits.


A radial shader- Spokes will let you make a flower, a wheel, even animate the hands of a clock, all in a texture! Fade side to side and/or radially. Works in UV space.

Supermixer Complex

Take everything you know about the Supermixer (or start experimenting if you don’t know anything ;-) and move it up to the top level shaders. Now you can mix entire shaders (all channels) based on greyscale mapping!

Shadow Pass

A very simple shader- Shadow Pass makes your object disappear, but leaves its shadow. A single checkbox switches between your real shader and the Shadow pass. This shader is not available in C6.

MultiPass Manager and MultiPass Control

These two shaders will let you assign up to 10 different shaders to an object, and swap between them by simply clicking a single radio button. If you build all your shaders the same way, and use a reference shader in the control slot, you can change all your objects shaders in sync, with a single click in the reference shader. Great for Multi Pass renders, swapping in fast “draft” shaders, and trying out different shaders without losing the old ones.


Ok, so its not REAL iridescence. . . this shader works by comparing the angle of a surface normal with the angle of a light striking it. What’s it good for? It adds a real spark to crystal shaders, especially animations. Pearl shaders too.

Actually, it is more generic than that. There are two “targetting” modes. The first is to point at another object in the scene. The main use of this mode is to point at a light (making the assumption that the light is pointed at the object being shaded). The second is a fixed orientation that is useful for distant lights (just copy the pich and yaw fields). But nothing is stopping you from using either mode to point at stuff other than lights!


The purpose of this shader component is to control color saturation. Useful on texture maps, of course, but can also be used on procedural shaders that are a bit too “hot” (or a bit too cool, for that matter). Handy for tweaking those Poser texture maps. Now usable in the top level position, so that even if multiple texture maps are being used, they can all be adjusted together.

There are two modes, Grayscale, which does a simple luminance preserving conversion, and Saturation control, which lets you control the overall color saturation, and also lets you manipulate the saturation levels of R, G, and B independently. Both overall and independent saturation controls can be used at the same time.


Supermixer lets you combine a bunch of shaders in two ways. The simple mode is an add- it just adds all the shaders together. Useful if you want to combine multiple masks, or multiple Lit shaders, for instance. The mix mode lets you combine multiple shaders based on the grayscale values of a control shader. Sort of a super gradient- instead of just colors, you can mix shaders, and instead of simple left to right or radial type options, you can use any shader to set the control ranges. You can have arbitrary mixes of up to ten shaders across any object- with controlled blending. Kind of like UV mapping- only you paint your UV map with grayscale values, and then use it to mix whatever shaders you want- including procedurals.


Ever wanted to do an over-under pattern? Weave is the shader for you! Five threads in the U direction, five threads in the V direction- you choose what goes over, what goes under, what each thread looks like, whether or not they are shaded to simulate depth. Works in the bump channel! Also has options for mask output, to allow easy use in the transparency channel. Distortion control shaders add a little randomness (or a lot, if you are into the 60’s psychedelic thing)


Location was designed for doing cutaways- making a section of an object transparent in order to see internals, but it has many applications beyond that. It is a basic location aware shader bulding block. It can be set to global or local space, and can handle all three axes.


How about a shader that knows where other objects are? Proximity can detect the approach of a specified object or objects. This allows for all sorts of reactive shader effects, great for animations!!

Fresnel (Dispersion)

A very advanced Fresnel shader- handles refraction and reflection. Easily set up for everything from looking at a puddle of water to looking from water into an air bubble. Allows for tweaking of all indices and values. And it has the ability to simulate accurate dispersion using a simple to set up process, including the ability to set up the white point of your lighting! So you can find out what your diamond will look like under fluorescent light as well as sunlight.


The Lit shader can monitor a specified light and react to it. Useful if you want a night side map for your planet. . . or for faking translucency (see the sample files). It is NOT a ray-tracer- while it will react correctly to the light setup (stuff like falloff and angle for spots) it will not react to other objects obscuring the light, or gels. If you set the intensity down, you can make a light that doesn’t actually light, but does cause the shader to react. Another useful animation tool.


Angle returns a grayscale value based on the angle of a ray drawn from one object, to the shaded object, and then to a third object. In typical usage, this would be from a light, to your shaded object, to the rendering camera. Useful for faking translucence.

Coordinate Shift

Coordinate Shift allows you to re-map the objects local and/or global coordinates on a selective basis- either a straight offset (which is added to the coordinates of the object) or a reference mode, where the hotpoint of a specified object is used to offset the shaded point. HERE IS THE CATCH- The object gets shaded using the modified coordinates, but it also gets LIT using those coordinates- which can lead to some very strange effects, depending on how you are lighting the area. This may or may not be a problem for you. If you are using ambient or distant light, this effect will be lessened.