Blender Cycles OSL: Color Squares
Hi everybody. Today I'm going to show you a color squares pattern material, similar to present papers. The materials looks like this:
Here the code is:
The node setup for the material above is a simple diffuse node. But if you want it looks more like a present paper, you can add some glossiness with this setup:
This is the result:
Or this setup to get a more metallic finish, like a satin paper:
Bye
Here the code is:
/* * Migrated from "http://glsl.heroku.com/e#5335.0" * Author: elbrujodelatribu */ // Returns fractional part float fract(float x) { return (x - floor(x)); } // Returns fractional part, by coordenates point fract(point x) { return point(fract(x[0]),fract(x[1]),fract(x[2])); } // Colorize squares point tri(point p, float r) { point pos = p; pos *= r; point x = fract(pos); point i = pos - x; point c = point(sin(i[0]*2.0), sin(i[1]*2.0), 0.0)*0.2+0.2; return (((x[0] < x[1]) == (x[0] < 1.0 - x[1])) ? 1.0 : 0.0) * c; } shader color_squares( float Scale = 1.0, vector Vector = P, output color ColorOut = 0.8) { vector pos = Vector*Scale; float r = 20.0; point x = fract(pos*r); point i = pos*r - x; float w = 50.0; float l = clamp(0.0, 1.0, (0.5 - abs(x[0]-0.5))*w); l *= clamp(0.0, 1.0, (0.5 - abs(x[1]-0.5))*w); l *= clamp(0.0, 1.0, abs(x[0] - x[1])*w); l *= clamp(0.0, 1.0, abs(1.0 - x[0] - x[1])*w); point tc = tri(pos, r); tc += tri(pos, r*0.5); tc += tri(pos, r*0.25); tc += tri(pos, r*0.125); // Returns color ColorOut = color(tc*l); }
The node setup for the material above is a simple diffuse node. But if you want it looks more like a present paper, you can add some glossiness with this setup:
This is the result:
Or this setup to get a more metallic finish, like a satin paper:
Bye
Comentarios