t3du - Add Brick Texture
This commit is contained in:
		| @ -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 | ||||
|  | ||||
|  | ||||
		Reference in New Issue
	
	Block a user