From c3d3d8be3675e284cbe269b4173c3cc15ce762ae Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Wed, 25 Sep 2013 20:28:49 +0000 Subject: Fix cycles issue with mapping node rotation and scale order. When using both scale and rotation in mapping node, there would be shearing, and the only way to avoid that was to add 2 mapping nodes. This is because to transform the texture, the inverse transform needs to be done on the texture coordinate Now the mapping node has Texture/Point/Vector/Normal types to transform the vector for a particular purpose. Point is the existing behavior, Texture is the new default that behaves more like you might expect. --- source/blender/makesdna/DNA_texture_types.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (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 0b6e5f9c7bb..fcd0575f1c5 100644 --- a/source/blender/makesdna/DNA_texture_types.h +++ b/source/blender/makesdna/DNA_texture_types.h @@ -263,7 +263,7 @@ typedef struct TexMapping { float loc[3], rot[3], size[3]; int flag; char projx, projy, projz, mapping; - int pad; + int type; float mat[4][4]; float min[3], max[3]; @@ -287,6 +287,12 @@ typedef struct ColorMapping { #define TEXMAP_CLIP_MAX 2 #define TEXMAP_UNIT_MATRIX 4 +/* texmap->type */ +#define TEXMAP_TYPE_POINT 0 +#define TEXMAP_TYPE_TEXTURE 1 +#define TEXMAP_TYPE_VECTOR 2 +#define TEXMAP_TYPE_NORMAL 3 + /* colormap->flag */ #define COLORMAP_USE_RAMP 1 -- cgit v1.2.3