Revision: 41599
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41599
Author:   blendix
Date:     2011-11-06 21:05:58 +0000 (Sun, 06 Nov 2011)
Log Message:
-----------
Cycles: procedural texture nodes reorganization. This will break existing files
using them, but rather do it now that I have the chance still. Highlights:

* Wood and Marble merged into a single Wave texture
* Clouds + Distorted Noise merged into new Noise node
* Blend renamed to Gradient
* Stucci removed, was mostly useful for old bump
* Noise removed, will come back later, didn't actually work yet
* Depth setting is now Detail socket, which accepts float values
* Scale socket instead of Size socket

http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/Textures

Modified Paths:
--------------
    branches/cycles/intern/cycles/blender/blender_shader.cpp
    branches/cycles/intern/cycles/kernel/CMakeLists.txt
    branches/cycles/intern/cycles/kernel/svm/svm.h
    branches/cycles/intern/cycles/kernel/svm/svm_fresnel.h
    branches/cycles/intern/cycles/kernel/svm/svm_magic.h
    branches/cycles/intern/cycles/kernel/svm/svm_musgrave.h
    branches/cycles/intern/cycles/kernel/svm/svm_texture.h
    branches/cycles/intern/cycles/kernel/svm/svm_types.h
    branches/cycles/intern/cycles/kernel/svm/svm_voronoi.h
    branches/cycles/intern/cycles/render/nodes.cpp
    branches/cycles/intern/cycles/render/nodes.h
    branches/cycles/intern/cycles/util/util_hash.h
    branches/cycles/source/blender/blenkernel/BKE_node.h
    branches/cycles/source/blender/blenkernel/intern/node.c
    branches/cycles/source/blender/blenloader/intern/readfile.c
    branches/cycles/source/blender/editors/space_node/drawnode.c
    branches/cycles/source/blender/makesdna/DNA_node_types.h
    branches/cycles/source/blender/makesrna/intern/rna_nodetree.c
    branches/cycles/source/blender/makesrna/intern/rna_nodetree_types.h
    branches/cycles/source/blender/nodes/CMakeLists.txt
    branches/cycles/source/blender/nodes/NOD_shader.h
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_noise.h
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_magic.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_musgrave.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_voronoi.c

Added Paths:
-----------
    branches/cycles/intern/cycles/kernel/svm/svm_gradient.h
    branches/cycles/intern/cycles/kernel/svm/svm_noisetex.h
    branches/cycles/intern/cycles/kernel/svm/svm_wave.h
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_layer_weight.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_gradient.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_noise.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_wave.c

Removed Paths:
-------------
    branches/cycles/intern/cycles/kernel/svm/svm_blend.h
    branches/cycles/intern/cycles/kernel/svm/svm_clouds.h
    branches/cycles/intern/cycles/kernel/svm/svm_distorted_noise.h
    branches/cycles/intern/cycles/kernel/svm/svm_marble.h
    branches/cycles/intern/cycles/kernel/svm/svm_noisetex.h
    branches/cycles/intern/cycles/kernel/svm/svm_stucci.h
    branches/cycles/intern/cycles/kernel/svm/svm_wood.h
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_blend_weight.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_blend.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_clouds.c
    
branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_distnoise.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_marble.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_noise.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_stucci.c
    branches/cycles/source/blender/nodes/shader/nodes/node_shader_tex_wood.c

Modified: branches/cycles/intern/cycles/blender/blender_shader.cpp
===================================================================
--- branches/cycles/intern/cycles/blender/blender_shader.cpp    2011-11-06 
18:40:13 UTC (rev 41598)
+++ branches/cycles/intern/cycles/blender/blender_shader.cpp    2011-11-06 
21:05:58 UTC (rev 41599)
@@ -191,8 +191,8 @@
                        node = new FresnelNode();
                        break;
                }
-               case BL::ShaderNode::type_BLEND_WEIGHT: {
-                       node = new BlendWeightNode();
+               case BL::ShaderNode::type_LAYER_WEIGHT: {
+                       node = new LayerWeightNode();
                        break;
                }
                case BL::ShaderNode::type_ADD_SHADER: {
@@ -316,26 +316,17 @@
                        node = env;
                        break;
                }
-               case BL::ShaderNode::type_TEX_NOISE: {
-                       BL::ShaderNodeTexNoise b_noise_node(b_node);
-                       NoiseTextureNode *noise = new NoiseTextureNode();
-                       get_tex_mapping(&noise->tex_mapping, 
b_noise_node.texture_mapping());
-                       node = noise;
+               case BL::ShaderNode::type_TEX_GRADIENT: {
+                       BL::ShaderNodeTexGradient b_gradient_node(b_node);
+                       GradientTextureNode *gradient = new 
GradientTextureNode();
+                       gradient->type = 
GradientTextureNode::type_enum[(int)b_gradient_node.gradient_type()];
+                       get_tex_mapping(&gradient->tex_mapping, 
b_gradient_node.texture_mapping());
+                       node = gradient;
                        break;
                }
-               case BL::ShaderNode::type_TEX_BLEND: {
-                       BL::ShaderNodeTexBlend b_blend_node(b_node);
-                       BlendTextureNode *blend = new BlendTextureNode();
-                       blend->progression = 
BlendTextureNode::progression_enum[(int)b_blend_node.progression()];
-                       blend->axis = 
BlendTextureNode::axis_enum[(int)b_blend_node.axis()];
-                       get_tex_mapping(&blend->tex_mapping, 
b_blend_node.texture_mapping());
-                       node = blend;
-                       break;
-               }
                case BL::ShaderNode::type_TEX_VORONOI: {
                        BL::ShaderNodeTexVoronoi b_voronoi_node(b_node);
                        VoronoiTextureNode *voronoi = new VoronoiTextureNode();
-                       voronoi->distance_metric = 
VoronoiTextureNode::distance_metric_enum[(int)b_voronoi_node.distance_metric()];
                        voronoi->coloring = 
VoronoiTextureNode::coloring_enum[(int)b_voronoi_node.coloring()];
                        get_tex_mapping(&voronoi->tex_mapping, 
b_voronoi_node.texture_mapping());
                        node = voronoi;
@@ -349,67 +340,29 @@
                        node = magic;
                        break;
                }
-               case BL::ShaderNode::type_TEX_MARBLE: {
-                       BL::ShaderNodeTexMarble b_marble_node(b_node);
-                       MarbleTextureNode *marble = new MarbleTextureNode();
-                       marble->depth = b_marble_node.turbulence_depth();
-                       marble->basis = 
MarbleTextureNode::basis_enum[(int)b_marble_node.noise_basis()];
-                       marble->type = 
MarbleTextureNode::type_enum[(int)b_marble_node.marble_type()];
-                       marble->wave = 
MarbleTextureNode::wave_enum[(int)b_marble_node.wave_type()];
-                       marble->hard = b_marble_node.noise_type() == 
BL::ShaderNodeTexMarble::noise_type_HARD;
-                       get_tex_mapping(&marble->tex_mapping, 
b_marble_node.texture_mapping());
-                       node = marble;
+               case BL::ShaderNode::type_TEX_WAVE: {
+                       BL::ShaderNodeTexWave b_wave_node(b_node);
+                       WaveTextureNode *wave = new WaveTextureNode();
+                       wave->type = 
WaveTextureNode::type_enum[(int)b_wave_node.wave_type()];
+                       get_tex_mapping(&wave->tex_mapping, 
b_wave_node.texture_mapping());
+                       node = wave;
                        break;
                }
-               case BL::ShaderNode::type_TEX_CLOUDS: {
-                       BL::ShaderNodeTexClouds b_clouds_node(b_node);
-                       CloudsTextureNode *clouds = new CloudsTextureNode();
-                       clouds->depth = b_clouds_node.turbulence_depth();
-                       clouds->basis = 
CloudsTextureNode::basis_enum[(int)b_clouds_node.noise_basis()];
-                       clouds->hard = b_clouds_node.noise_type() == 
BL::ShaderNodeTexClouds::noise_type_HARD;
-                       get_tex_mapping(&clouds->tex_mapping, 
b_clouds_node.texture_mapping());
-                       node = clouds;
+               case BL::ShaderNode::type_TEX_NOISE: {
+                       BL::ShaderNodeTexNoise b_noise_node(b_node);
+                       NoiseTextureNode *noise = new NoiseTextureNode();
+                       get_tex_mapping(&noise->tex_mapping, 
b_noise_node.texture_mapping());
+                       node = noise;
                        break;
                }
-               case BL::ShaderNode::type_TEX_WOOD: {
-                       BL::ShaderNodeTexWood b_wood_node(b_node);
-                       WoodTextureNode *wood = new WoodTextureNode();
-                       wood->type = 
WoodTextureNode::type_enum[(int)b_wood_node.wood_type()];
-                       wood->basis = 
WoodTextureNode::basis_enum[(int)b_wood_node.noise_basis()];
-                       wood->hard = b_wood_node.noise_type() == 
BL::ShaderNodeTexWood::noise_type_HARD;
-                       wood->wave = 
WoodTextureNode::wave_enum[(int)b_wood_node.wave_type()];
-                       get_tex_mapping(&wood->tex_mapping, 
b_wood_node.texture_mapping());
-                       node = wood;
-                       break;
-               }
                case BL::ShaderNode::type_TEX_MUSGRAVE: {
                        BL::ShaderNodeTexMusgrave b_musgrave_node(b_node);
                        MusgraveTextureNode *musgrave = new 
MusgraveTextureNode();
                        musgrave->type = 
MusgraveTextureNode::type_enum[(int)b_musgrave_node.musgrave_type()];
-                       musgrave->basis = 
MusgraveTextureNode::basis_enum[(int)b_musgrave_node.noise_basis()];
                        get_tex_mapping(&musgrave->tex_mapping, 
b_musgrave_node.texture_mapping());
                        node = musgrave;
                        break;
                }
-               case BL::ShaderNode::type_TEX_STUCCI: {
-                       BL::ShaderNodeTexStucci b_stucci_node(b_node);
-                       StucciTextureNode *stucci = new StucciTextureNode();
-                       stucci->type = 
StucciTextureNode::type_enum[(int)b_stucci_node.stucci_type()];
-                       stucci->basis = 
StucciTextureNode::basis_enum[(int)b_stucci_node.noise_basis()];
-                       stucci->hard = b_stucci_node.noise_type() == 
BL::ShaderNodeTexStucci::noise_type_HARD;
-                       get_tex_mapping(&stucci->tex_mapping, 
b_stucci_node.texture_mapping());
-                       node = stucci;
-                       break;
-               }
-               case BL::ShaderNode::type_TEX_DISTORTED_NOISE: {
-                       BL::ShaderNodeTexDistortedNoise 
b_distnoise_node(b_node);
-                       DistortedNoiseTextureNode *distnoise = new 
DistortedNoiseTextureNode();
-                       distnoise->basis = 
DistortedNoiseTextureNode::basis_enum[(int)b_distnoise_node.noise_basis()];
-                       distnoise->distortion_basis = 
DistortedNoiseTextureNode::basis_enum[(int)b_distnoise_node.noise_distortion()];
-                       get_tex_mapping(&distnoise->tex_mapping, 
b_distnoise_node.texture_mapping());
-                       node = distnoise;
-                       break;
-               }
                case BL::ShaderNode::type_TEX_COORD: {
                        node = new TextureCoordinateNode();;
                        break;

Modified: branches/cycles/intern/cycles/kernel/CMakeLists.txt
===================================================================
--- branches/cycles/intern/cycles/kernel/CMakeLists.txt 2011-11-06 18:40:13 UTC 
(rev 41598)
+++ branches/cycles/intern/cycles/kernel/CMakeLists.txt 2011-11-06 21:05:58 UTC 
(rev 41599)
@@ -42,33 +42,29 @@
        svm/emissive.h
        svm/svm.h
        svm/svm_attribute.h
-       svm/svm_blend.h
        svm/svm_bsdf.h
        svm/svm_closure.h
-       svm/svm_clouds.h
        svm/svm_convert.h
        svm/svm_displace.h
-       svm/svm_distorted_noise.h
        svm/svm_fresnel.h
        svm/svm_geometry.h
+       svm/svm_gradient.h
        svm/svm_image.h
        svm/svm_light_path.h
        svm/svm_magic.h
        svm/svm_mapping.h
-       svm/svm_marble.h
        svm/svm_math.h
        svm/svm_mix.h
        svm/svm_musgrave.h
        svm/svm_noise.h
        svm/svm_noisetex.h
        svm/svm_sky.h
-       svm/svm_stucci.h
        svm/svm_tex_coord.h
        svm/svm_texture.h
        svm/svm_types.h
        svm/svm_value.h
        svm/svm_voronoi.h
-       svm/svm_wood.h
+       svm/svm_wave.h
        svm/volume.h
        )
 

Modified: branches/cycles/intern/cycles/kernel/svm/svm.h
===================================================================
--- branches/cycles/intern/cycles/kernel/svm/svm.h      2011-11-06 18:40:13 UTC 
(rev 41598)
+++ branches/cycles/intern/cycles/kernel/svm/svm.h      2011-11-06 21:05:58 UTC 
(rev 41599)
@@ -120,29 +120,25 @@
 #include "svm_texture.h"
 
 #include "svm_attribute.h"
-#include "svm_blend.h"
+#include "svm_gradient.h"
 #include "svm_closure.h"
-#include "svm_clouds.h"
+#include "svm_noisetex.h"
 #include "svm_convert.h"
 #include "svm_displace.h"
-#include "svm_distorted_noise.h"
 #include "svm_fresnel.h"
 #include "svm_geometry.h"
 #include "svm_image.h"
 #include "svm_light_path.h"
 #include "svm_magic.h"
 #include "svm_mapping.h"
-#include "svm_marble.h"
+#include "svm_wave.h"
 #include "svm_math.h"
 #include "svm_mix.h"
 #include "svm_musgrave.h"
-#include "svm_noisetex.h"
 #include "svm_sky.h"
-#include "svm_stucci.h"
 #include "svm_tex_coord.h"
 #include "svm_value.h"
 #include "svm_voronoi.h"
-#include "svm_wood.h"
 
 CCL_NAMESPACE_BEGIN
 
@@ -206,12 +202,6 @@
                                offset = node.y;
                                break;
 #ifdef __TEXTURES__
-                       case NODE_TEX_NOISE_F:
-                               svm_node_tex_noise_f(sd, stack, node.y, node.z);
-                               break;
-                       case NODE_TEX_NOISE_V:
-                               svm_node_tex_noise_v(sd, stack, node.y, node.z);
-                               break;
                        case NODE_TEX_IMAGE:
                                svm_node_tex_image(kg, sd, stack, node);
                                break;
@@ -221,11 +211,11 @@
                        case NODE_TEX_SKY:
                                svm_node_tex_sky(kg, sd, stack, node.y, node.z);
                                break;
-                       case NODE_TEX_BLEND:
-                               svm_node_tex_blend(sd, stack, node);
+                       case NODE_TEX_GRADIENT:
+                               svm_node_tex_gradient(sd, stack, node);
                                break;
-                       case NODE_TEX_CLOUDS:
-                               svm_node_tex_clouds(sd, stack, node);
+                       case NODE_TEX_NOISE:
+                               svm_node_tex_noise(kg, sd, stack, node, 
&offset);
                                break;
                        case NODE_TEX_VORONOI:
                                svm_node_tex_voronoi(kg, sd, stack, node, 
&offset);
@@ -233,21 +223,12 @@
                        case NODE_TEX_MUSGRAVE:
                                svm_node_tex_musgrave(kg, sd, stack, node, 
&offset);
                                break;
-                       case NODE_TEX_MARBLE:
-                               svm_node_tex_marble(kg, sd, stack, node, 
&offset);
+                       case NODE_TEX_WAVE:
+                               svm_node_tex_wave(kg, sd, stack, node, &offset);
                                break;
                        case NODE_TEX_MAGIC:
-                               svm_node_tex_magic(sd, stack, node);
+                               svm_node_tex_magic(kg, sd, stack, node, 
&offset);
                                break;
-                       case NODE_TEX_STUCCI:
-                               svm_node_tex_stucci(kg, sd, stack, node, 
&offset);
-                               break;
-                       case NODE_TEX_DISTORTED_NOISE:
-                               svm_node_tex_distorted_noise(kg, sd, stack, 
node, &offset);
-                               break;
-                       case NODE_TEX_WOOD:
-                               svm_node_tex_wood(kg, sd, stack, node, &offset);
-                               break;
 #endif
                        case NODE_GEOMETRY:
                                svm_node_geometry(sd, stack, node.y, node.z);
@@ -285,8 +266,8 @@
                        case NODE_FRESNEL:
                                svm_node_fresnel(sd, stack, node.y, node.z, 
node.w);
                                break;
-                       case NODE_BLEND_WEIGHT:
-                               svm_node_blend_weight(sd, stack, node);
+                       case NODE_LAYER_WEIGHT:
+                               svm_node_layer_weight(sd, stack, node);
                                break;
                        case NODE_SET_DISPLACEMENT:
                                svm_node_set_displacement(sd, stack, node.y);

Deleted: branches/cycles/intern/cycles/kernel/svm/svm_blend.h
===================================================================
--- branches/cycles/intern/cycles/kernel/svm/svm_blend.h        2011-11-06 
18:40:13 UTC (rev 41598)
+++ branches/cycles/intern/cycles/kernel/svm/svm_blend.h        2011-11-06 
21:05:58 UTC (rev 41599)
@@ -1,79 +0,0 @@
-/*
- * Copyright 2011, Blender Foundation.
- *

@@ Diff output truncated at 10240 characters. @@
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to