[Bf-blender-cvs] [caf5d90] master: Fix T39189: Node editor Map Uv requires an scale node to work.

Lukas Tönne noreply at git.blender.org
Sat Mar 15 10:40:22 CET 2014


Commit: caf5d90fb07d2aee5cdb49635ec726ae22df6c78
Author: Lukas Tönne
Date:   Sat Mar 15 10:24:07 2014 +0100
https://developer.blender.org/rBcaf5d90fb07d2aee5cdb49635ec726ae22df6c78

Fix T39189: Node editor Map Uv requires an scale node to work.

This is a regression caused by rB67134a7bf689279785e2e40b29cd24243813998b
The UV coordinates read from the UV input must be scaled by the Image
input size instead of the UV input size.

Also now this node uses the UV input resolution instead of the Image
resolution, since this is what determines the available resolution. The
image is EWA-sampled anyway, it's resolution does not have a direct
impact.

===================================================================

M	source/blender/compositor/operations/COM_MapUVOperation.cpp

===================================================================

diff --git a/source/blender/compositor/operations/COM_MapUVOperation.cpp b/source/blender/compositor/operations/COM_MapUVOperation.cpp
index 292f073..87ad1d6 100644
--- a/source/blender/compositor/operations/COM_MapUVOperation.cpp
+++ b/source/blender/compositor/operations/COM_MapUVOperation.cpp
@@ -29,6 +29,7 @@ MapUVOperation::MapUVOperation() : NodeOperation()
 	this->addOutputSocket(COM_DT_COLOR);
 	this->m_alpha = 0.0f;
 	this->setComplex(true);
+	setResolutionInputSocketIndex(1);
 
 	this->m_inputUVProgram = NULL;
 	this->m_inputColorProgram = NULL;
@@ -84,8 +85,8 @@ bool MapUVOperation::read_uv(float x, float y, float &r_u, float &r_v, float &r_
 	else {
 		float col[4];
 		m_inputUVProgram->readSampled(col, x, y, COM_PS_BILINEAR);
-		r_u = col[0] * width;
-		r_v = col[1] * height;
+		r_u = col[0] * m_inputColorProgram->getWidth();
+		r_v = col[1] * m_inputColorProgram->getHeight();
 		r_alpha = col[2];
 		return true;
 	}




More information about the Bf-blender-cvs mailing list