From b5e77aeef8cd9f07a2a06ecc6e871326fbafca24 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Wed, 28 May 2025 21:30:38 +0000 Subject: [PATCH] t3du - Add Brick Texture --- .../material/cycles_nodes/nodes_texture.py | 27 +++++++++++++------ 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/leenkx/blender/lnx/material/cycles_nodes/nodes_texture.py b/leenkx/blender/lnx/material/cycles_nodes/nodes_texture.py index e0615c1..0cee734 100644 --- a/leenkx/blender/lnx/material/cycles_nodes/nodes_texture.py +++ b/leenkx/blender/lnx/material/cycles_nodes/nodes_texture.py @@ -29,24 +29,35 @@ else: def parse_tex_brick(node: bpy.types.ShaderNodeTexBrick, out_socket: bpy.types.NodeSocket, state: ParserState) -> Union[floatstr, vec3str]: - state.curshader.add_function(c_functions.str_tex_brick) + state.curshader.add_function(c_functions.str_tex_brick_blender) if node.inputs[0].is_linked: co = c.parse_vector_input(node.inputs[0]) else: co = 'bposition' + offset_amount = node.offset + offset_frequency = node.offset_frequency + squash_amount = node.squash + squash_frequency = node.squash_frequency + + col1 = c.parse_vector_input(node.inputs[1]) + col2 = c.parse_vector_input(node.inputs[2]) + col3 = c.parse_vector_input(node.inputs[3]) + scale = c.parse_value_input(node.inputs[4]) + mortar_size = c.parse_value_input(node.inputs[5]) + mortar_smooth = c.parse_value_input(node.inputs[6]) + bias = c.parse_value_input(node.inputs[7]) + brick_width = c.parse_value_input(node.inputs[8]) + row_height = c.parse_value_input(node.inputs[9]) + #res = f'tex_brick({co} * {scale}, {col1}, {col2}, {col3})' + # Color if out_socket == node.outputs[0]: - col1 = c.parse_vector_input(node.inputs[1]) - col2 = c.parse_vector_input(node.inputs[2]) - col3 = c.parse_vector_input(node.inputs[3]) - scale = c.parse_value_input(node.inputs[4]) - res = f'tex_brick({co} * {scale}, {col1}, {col2}, {col3})' + res = f'tex_brick_blender({co}, {col1}, {col2}, {col3}, {scale}, {mortar_size}, {mortar_smooth}, {bias}, {brick_width}, {row_height}, {offset_amount}, {offset_frequency}, {squash_amount}, {squash_frequency})' # Fac else: - scale = c.parse_value_input(node.inputs[4]) - res = 'tex_brick_f({0} * {1})'.format(co, scale) + res = f'tex_brick_blender_f({co}, {col1}, {col2}, {col3}, {scale}, {mortar_size}, {mortar_smooth}, {bias}, {brick_width}, {row_height}, {offset_amount}, {offset_frequency}, {squash_amount}, {squash_frequency})' return res