From 8030cb03fd41673b7d687128782a0e21417baaea Mon Sep 17 00:00:00 2001 From: Ton Roosendaal Date: Wed, 12 Nov 2008 19:03:50 +0000 Subject: Patch #7897 Texture Nodes! Robin (Frrr) Allen did a decent job on this, so we can also welcome him as a member in the svn committers team to maintain it! I do the first commit with some minor fixes: - get Makefiles work - fix rounding issue with tiles on unit faces - removed UI includes from tex node A nice doc in wiki is here: http://wiki.blender.org/index.php/User:Frr/TexnodeManual On the todo for Robin is: - When using one or more Texture-input nodes, you cannot edit them by activating (as works now for Material nodes). - The new "output node" option fails on the default case, when only one output node is active. It then shows often a blank menu. Will get fixed asap. - When using a NodeTree-Texture as input node, the menu for 'active output' should not show. NodeTree should ignore other nodetrees to keep things sane for now. - On a future todo is proper usage of "Dxt" and "Dyt" texture vectors for superior antialising of checkers/bricks. General note; I know people are dying to get a full integrated shader system with nodes. In theory we could merge this with Material Nodetrees... but I rather wait for a solid and very well thought out design proposal for this, also including design ideas for unifying with a shader language (GPU, CPU). For the time being this is a nice extension of current textures. :) --- source/blender/makesdna/DNA_texture_types.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'source/blender/makesdna/DNA_texture_types.h') diff --git a/source/blender/makesdna/DNA_texture_types.h b/source/blender/makesdna/DNA_texture_types.h index 111dc08ee02..6e07336a4b1 100644 --- a/source/blender/makesdna/DNA_texture_types.h +++ b/source/blender/makesdna/DNA_texture_types.h @@ -55,13 +55,13 @@ typedef struct MTex { float ofs[3], size[3]; short texflag, colormodel, pmapto, pmaptoneg; - short normapspace, pad[3]; + short normapspace, which_output, pad[2]; float r, g, b, k; float def_var, rt; float colfac, norfac, varfac; float dispfac; - float warpfac; + float warpfac; } MTex; @@ -166,6 +166,7 @@ typedef struct Tex { struct ImageUser iuser; + struct bNodeTree *nodetree; struct Ipo *ipo; struct Image *ima; struct PluginTex *plugin; @@ -173,6 +174,9 @@ typedef struct Tex { struct EnvMap *env; struct PreviewImage * preview; + char use_nodes; + char pad[7]; + } Tex; /* used for mapping node. note: rot is in degrees */ -- cgit v1.2.3