diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-08-12 09:30:58 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-08-12 09:30:58 +0400 |
commit | 1294c3baf74733e9ad3e8688403a43ce65bc023a (patch) | |
tree | 266589f25a671ce1b4ea17abda1b2d484804ef2f /io_scene_fbx/cycles_shader_compat.py | |
parent | a13a093fc4ac21a9d2b73ae8b292e87c3d54e1e7 (diff) |
use diffuse alpha channel if no other alpha channel set, hidden option to treat all alpa as decals (no shadow and z offset)
Diffstat (limited to 'io_scene_fbx/cycles_shader_compat.py')
-rw-r--r-- | io_scene_fbx/cycles_shader_compat.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/io_scene_fbx/cycles_shader_compat.py b/io_scene_fbx/cycles_shader_compat.py index 4b7e4cce..ae050ec9 100644 --- a/io_scene_fbx/cycles_shader_compat.py +++ b/io_scene_fbx/cycles_shader_compat.py @@ -327,14 +327,25 @@ class CyclesShaderWrapper(): self._image_create_helper(image, node, (node.inputs["Color2"],)) def alpha_value_set(self, value): - self.node_bsdf_alpha.mute = (value <= 0.0) + self.node_bsdf_alpha.mute &= (value >= 1.0) node = self.node_mix_color_alpha node.inputs["Color1"].default_value = (value,) * 4 def alpha_image_set(self, image): + self.node_bsdf_alpha.mute = False node = self.node_mix_color_alpha self._image_create_helper(image, node, (node.inputs["Color2"],)) + def alpha_image_set_from_diffuse(self): + tree = self.node_mix_color_diff.id_data + links = tree.links + + self.node_bsdf_alpha.mute = False + node_image = self.node_mix_color_diff.inputs["Color2"].links[0].from_node + node = self.node_mix_color_alpha + links.new(node_image.outputs["Alpha"], + node.inputs["Color2"]) + def normal_factor_set(self, value): node = self.node_normal_map node.inputs["Strength"].default_value = value |