Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/blender/shader.cpp
| Show First 20 Lines • Show All 265 Lines • ▼ Show 20 Lines | if (b_node.is_a(&RNA_ShaderNodeRGBCurve)) { | ||||
| RGBCurvesNode *curves = graph->create_node<RGBCurvesNode>(); | RGBCurvesNode *curves = graph->create_node<RGBCurvesNode>(); | ||||
| array<float3> curve_mapping_curves; | array<float3> curve_mapping_curves; | ||||
| float min_x, max_x; | float min_x, max_x; | ||||
| curvemapping_color_to_array(mapping, curve_mapping_curves, RAMP_TABLE_SIZE, true); | curvemapping_color_to_array(mapping, curve_mapping_curves, RAMP_TABLE_SIZE, true); | ||||
| curvemapping_minmax(mapping, 4, &min_x, &max_x); | curvemapping_minmax(mapping, 4, &min_x, &max_x); | ||||
| curves->set_min_x(min_x); | curves->set_min_x(min_x); | ||||
| curves->set_max_x(max_x); | curves->set_max_x(max_x); | ||||
| curves->set_curves(curve_mapping_curves); | curves->set_curves(curve_mapping_curves); | ||||
| curves->set_extrapolate(mapping.extend() == mapping.extend_EXTRAPOLATED); | |||||
| node = curves; | node = curves; | ||||
| } | } | ||||
| if (b_node.is_a(&RNA_ShaderNodeVectorCurve)) { | if (b_node.is_a(&RNA_ShaderNodeVectorCurve)) { | ||||
| BL::ShaderNodeVectorCurve b_curve_node(b_node); | BL::ShaderNodeVectorCurve b_curve_node(b_node); | ||||
| BL::CurveMapping mapping(b_curve_node.mapping()); | BL::CurveMapping mapping(b_curve_node.mapping()); | ||||
| VectorCurvesNode *curves = graph->create_node<VectorCurvesNode>(); | VectorCurvesNode *curves = graph->create_node<VectorCurvesNode>(); | ||||
| array<float3> curve_mapping_curves; | array<float3> curve_mapping_curves; | ||||
| float min_x, max_x; | float min_x, max_x; | ||||
| curvemapping_color_to_array(mapping, curve_mapping_curves, RAMP_TABLE_SIZE, false); | curvemapping_color_to_array(mapping, curve_mapping_curves, RAMP_TABLE_SIZE, false); | ||||
| curvemapping_minmax(mapping, 3, &min_x, &max_x); | curvemapping_minmax(mapping, 3, &min_x, &max_x); | ||||
| curves->set_min_x(min_x); | curves->set_min_x(min_x); | ||||
| curves->set_max_x(max_x); | curves->set_max_x(max_x); | ||||
| curves->set_curves(curve_mapping_curves); | curves->set_curves(curve_mapping_curves); | ||||
| curves->set_extrapolate(mapping.extend() == mapping.extend_EXTRAPOLATED); | |||||
| node = curves; | node = curves; | ||||
| } | } | ||||
| else if (b_node.is_a(&RNA_ShaderNodeFloatCurve)) { | else if (b_node.is_a(&RNA_ShaderNodeFloatCurve)) { | ||||
| BL::ShaderNodeFloatCurve b_curve_node(b_node); | BL::ShaderNodeFloatCurve b_curve_node(b_node); | ||||
| BL::CurveMapping mapping(b_curve_node.mapping()); | BL::CurveMapping mapping(b_curve_node.mapping()); | ||||
| FloatCurveNode *curve = graph->create_node<FloatCurveNode>(); | FloatCurveNode *curve = graph->create_node<FloatCurveNode>(); | ||||
| array<float> curve_mapping_curve; | array<float> curve_mapping_curve; | ||||
| float min_x, max_x; | float min_x, max_x; | ||||
| curvemapping_float_to_array(mapping, curve_mapping_curve, RAMP_TABLE_SIZE); | curvemapping_float_to_array(mapping, curve_mapping_curve, RAMP_TABLE_SIZE); | ||||
| curvemapping_minmax(mapping, 1, &min_x, &max_x); | curvemapping_minmax(mapping, 1, &min_x, &max_x); | ||||
| curve->set_min_x(min_x); | curve->set_min_x(min_x); | ||||
| curve->set_max_x(max_x); | curve->set_max_x(max_x); | ||||
| curve->set_curve(curve_mapping_curve); | curve->set_curve(curve_mapping_curve); | ||||
| curve->set_extrapolate(mapping.extend() == mapping.extend_EXTRAPOLATED); | |||||
| node = curve; | node = curve; | ||||
| } | } | ||||
| else if (b_node.is_a(&RNA_ShaderNodeValToRGB)) { | else if (b_node.is_a(&RNA_ShaderNodeValToRGB)) { | ||||
| RGBRampNode *ramp = graph->create_node<RGBRampNode>(); | RGBRampNode *ramp = graph->create_node<RGBRampNode>(); | ||||
| BL::ShaderNodeValToRGB b_ramp_node(b_node); | BL::ShaderNodeValToRGB b_ramp_node(b_node); | ||||
| BL::ColorRamp b_color_ramp(b_ramp_node.color_ramp()); | BL::ColorRamp b_color_ramp(b_ramp_node.color_ramp()); | ||||
| array<float3> ramp_values; | array<float3> ramp_values; | ||||
| array<float> ramp_alpha; | array<float> ramp_alpha; | ||||
| ▲ Show 20 Lines • Show All 1,279 Lines • Show Last 20 Lines | |||||