diff options
author | Nicholas Bishop <nicholasbishop@gmail.com> | 2015-01-19 22:04:27 +0300 |
---|---|---|
committer | Nicholas Bishop <nicholasbishop@gmail.com> | 2015-02-06 19:19:49 +0300 |
commit | 964285c25e299589b013893be0cf9b7fe36606db (patch) | |
tree | 4b4fd52e593580fb1122b7b54d2dc1b4c96b96f0 /intern/cycles/blender/blender_shader.cpp | |
parent | c50694060db83a1a77685dbe2cb01350a7bed98d (diff) |
Add Ptex support to Cycles image node, also add Ptex node
Diffstat (limited to 'intern/cycles/blender/blender_shader.cpp')
-rw-r--r-- | intern/cycles/blender/blender_shader.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/intern/cycles/blender/blender_shader.cpp b/intern/cycles/blender/blender_shader.cpp index baf79a78987..c141b9eeabd 100644 --- a/intern/cycles/blender/blender_shader.cpp +++ b/intern/cycles/blender/blender_shader.cpp @@ -577,6 +577,9 @@ static ShaderNode *add_node(Scene *scene, BL::BlendData b_data, BL::Scene b_scen image->animated = b_image_node.image_user().use_auto_refresh(); image->use_alpha = b_image.use_alpha(); + // TODO(nicholasbishop) + image->ptex = string_endswith(image->filename, ".ptx"); + /* TODO(sergey): Does not work properly when we change builtin type. */ if (b_image.is_updated()) { scene->image_manager->tag_reload_image(image->filename, @@ -591,6 +594,15 @@ static ShaderNode *add_node(Scene *scene, BL::BlendData b_data, BL::Scene b_scen get_tex_mapping(&image->tex_mapping, b_image_node.texture_mapping()); node = image; } + else if (b_node.is_a(&RNA_ShaderNodeTexPtex)) { + // TODO + BL::ShaderNodeTexPtex b_image_node(b_node); + PtexTextureNode *image = new PtexTextureNode(); + + image->ptex = true; + image->ptex_layer = b_image_node.layer_name(); + node = image; + } else if (b_node.is_a(&RNA_ShaderNodeTexEnvironment)) { BL::ShaderNodeTexEnvironment b_env_node(b_node); BL::Image b_image(b_env_node.image()); |