Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/blender/blender_shader.cpp
| Show First 20 Lines • Show All 306 Lines • ▼ Show 20 Lines | static ShaderNode *add_node(Scene *scene, BL::BlendData b_data, BL::Scene b_scene, ShaderGraph *graph, BL::ShaderNodeTree b_ntree, BL::ShaderNode b_node) | ||||
| } | } | ||||
| else if (b_node.is_a(&RNA_ShaderNodeBackground)) { | else if (b_node.is_a(&RNA_ShaderNodeBackground)) { | ||||
| node = new BackgroundNode(); | node = new BackgroundNode(); | ||||
| } | } | ||||
| else if (b_node.is_a(&RNA_ShaderNodeHoldout)) { | else if (b_node.is_a(&RNA_ShaderNodeHoldout)) { | ||||
| node = new HoldoutNode(); | node = new HoldoutNode(); | ||||
| } | } | ||||
| else if (b_node.is_a(&RNA_ShaderNodeBsdfAnisotropic)) { | else if (b_node.is_a(&RNA_ShaderNodeBsdfAnisotropic)) { | ||||
| node = new WardBsdfNode(); | BL::ShaderNodeBsdfAnisotropic b_aniso_node(b_node); | ||||
| AnisotropicBsdfNode *aniso = new AnisotropicBsdfNode(); | |||||
| switch (b_aniso_node.distribution()) | |||||
| { | |||||
| case BL::ShaderNodeBsdfAnisotropic::distribution_SHARP: | |||||
| aniso->distribution = ustring("Sharp"); | |||||
| break; | |||||
| case BL::ShaderNodeBsdfAnisotropic::distribution_BECKMANN: | |||||
| aniso->distribution = ustring("Beckmann"); | |||||
| break; | |||||
| case BL::ShaderNodeBsdfAnisotropic::distribution_GGX: | |||||
| aniso->distribution = ustring("GGX"); | |||||
| break; | |||||
| case BL::ShaderNodeBsdfAnisotropic::distribution_ASHIKHMIN_SHIRLEY: | |||||
| aniso->distribution = ustring("Ashikhmin-Shirley"); | |||||
| break; | |||||
| } | |||||
| node = aniso; | |||||
| } | } | ||||
| else if (b_node.is_a(&RNA_ShaderNodeBsdfDiffuse)) { | else if (b_node.is_a(&RNA_ShaderNodeBsdfDiffuse)) { | ||||
| node = new DiffuseBsdfNode(); | node = new DiffuseBsdfNode(); | ||||
| } | } | ||||
| else if (b_node.is_a(&RNA_ShaderNodeSubsurfaceScattering)) { | else if (b_node.is_a(&RNA_ShaderNodeSubsurfaceScattering)) { | ||||
| BL::ShaderNodeSubsurfaceScattering b_subsurface_node(b_node); | BL::ShaderNodeSubsurfaceScattering b_subsurface_node(b_node); | ||||
| SubsurfaceScatteringNode *subsurface = new SubsurfaceScatteringNode(); | SubsurfaceScatteringNode *subsurface = new SubsurfaceScatteringNode(); | ||||
| Show All 18 Lines | case BL::ShaderNodeBsdfGlossy::distribution_SHARP: | ||||
| glossy->distribution = ustring("Sharp"); | glossy->distribution = ustring("Sharp"); | ||||
| break; | break; | ||||
| case BL::ShaderNodeBsdfGlossy::distribution_BECKMANN: | case BL::ShaderNodeBsdfGlossy::distribution_BECKMANN: | ||||
| glossy->distribution = ustring("Beckmann"); | glossy->distribution = ustring("Beckmann"); | ||||
| break; | break; | ||||
| case BL::ShaderNodeBsdfGlossy::distribution_GGX: | case BL::ShaderNodeBsdfGlossy::distribution_GGX: | ||||
| glossy->distribution = ustring("GGX"); | glossy->distribution = ustring("GGX"); | ||||
| break; | break; | ||||
| case BL::ShaderNodeBsdfGlossy::distribution_ASHIKHMIN_SHIRLEY: | |||||
| glossy->distribution = ustring("Ashikhmin-Shirley"); | |||||
| break; | |||||
| } | } | ||||
| node = glossy; | node = glossy; | ||||
| } | } | ||||
| else if (b_node.is_a(&RNA_ShaderNodeBsdfGlass)) { | else if (b_node.is_a(&RNA_ShaderNodeBsdfGlass)) { | ||||
| BL::ShaderNodeBsdfGlass b_glass_node(b_node); | BL::ShaderNodeBsdfGlass b_glass_node(b_node); | ||||
| GlassBsdfNode *glass = new GlassBsdfNode(); | GlassBsdfNode *glass = new GlassBsdfNode(); | ||||
| switch(b_glass_node.distribution()) { | switch(b_glass_node.distribution()) { | ||||
| case BL::ShaderNodeBsdfGlass::distribution_SHARP: | case BL::ShaderNodeBsdfGlass::distribution_SHARP: | ||||
| ▲ Show 20 Lines • Show All 773 Lines • Show Last 20 Lines | |||||