38
static bNodeSocketTemplate inputs[]= {
39
{ SOCK_RGBA, 1, "Bricks 1", 0.596f, 0.282f, 0.0f, 1.0f },
40
{ SOCK_RGBA, 1, "Bricks 2", 0.632f, 0.504f, 0.05f, 1.0f },
41
{ SOCK_RGBA, 1, "Mortar", 0.0f, 0.0f, 0.0f, 1.0f },
42
{ SOCK_FLOAT, 1, "Thickness", 0.02f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_UNSIGNED },
43
{ SOCK_FLOAT, 1, "Bias", 0.0f, 0.0f, 0.0f, 0.0f, -1.0f, 1.0f, PROP_NONE },
44
{ SOCK_FLOAT, 1, "Brick Width", 0.5f, 0.0f, 0.0f, 0.0f, 0.001f, 99.0f, PROP_UNSIGNED },
45
{ SOCK_FLOAT, 1, "Row Height", 0.25f, 0.0f, 0.0f, 0.0f, 0.001f, 99.0f, PROP_UNSIGNED },
38
static bNodeSocketTemplate inputs[] = {
39
{ SOCK_RGBA, 1, N_("Bricks 1"), 0.596f, 0.282f, 0.0f, 1.0f },
40
{ SOCK_RGBA, 1, N_("Bricks 2"), 0.632f, 0.504f, 0.05f, 1.0f },
41
{ SOCK_RGBA, 1, N_("Mortar"), 0.0f, 0.0f, 0.0f, 1.0f },
42
{ SOCK_FLOAT, 1, N_("Thickness"), 0.02f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_UNSIGNED },
43
{ SOCK_FLOAT, 1, N_("Bias"), 0.0f, 0.0f, 0.0f, 0.0f, -1.0f, 1.0f, PROP_NONE },
44
{ SOCK_FLOAT, 1, N_("Brick Width"), 0.5f, 0.0f, 0.0f, 0.0f, 0.001f, 99.0f, PROP_UNSIGNED },
45
{ SOCK_FLOAT, 1, N_("Row Height"), 0.25f, 0.0f, 0.0f, 0.0f, 0.001f, 99.0f, PROP_UNSIGNED },
48
static bNodeSocketTemplate outputs[]= {
49
{ SOCK_RGBA, 0, "Color"},
48
static bNodeSocketTemplate outputs[] = {
49
{ SOCK_RGBA, 0, N_("Color")},
53
static void init(bNodeTree *UNUSED(ntree), bNode* node, bNodeTemplate *UNUSED(ntemp))
53
static void init(bNodeTree *UNUSED(ntree), bNode *node, bNodeTemplate *UNUSED(ntemp))
55
55
node->custom3 = 0.5; /* offset */
56
56
node->custom4 = 1.0; /* squash */
102
102
ins_y = y - row_height*rownum;
104
104
tint = noise((rownum << 16) + (bricknum & 0xFFFF)) + bias;
105
CLAMP(tint,0.0f,1.0f);
105
CLAMP(tint, 0.0f, 1.0f);
107
if ( ins_x < mortar_thickness || ins_y < mortar_thickness ||
108
ins_x > (brick_width - mortar_thickness) ||
109
ins_y > (row_height - mortar_thickness) ) {
110
copy_v4_v4( out, mortar );
107
if (ins_x < mortar_thickness || ins_y < mortar_thickness ||
108
ins_x > (brick_width - mortar_thickness) ||
109
ins_y > (row_height - mortar_thickness))
111
copy_v4_v4(out, mortar);
113
copy_v4_v4( out, bricks1 );
114
ramp_blend( MA_RAMP_BLEND, out, tint, bricks2 );
114
copy_v4_v4(out, bricks1);
115
ramp_blend(MA_RAMP_BLEND, out, tint, bricks2);