[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [44511] branches/tile/source/blender/ compositor: TileBranch

Jeroen Bakker j.bakker at atmind.nl
Tue Feb 28 11:43:42 CET 2012


Revision: 44511
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44511
Author:   jbakker
Date:     2012-02-28 10:43:37 +0000 (Tue, 28 Feb 2012)
Log Message:
-----------
TileBranch
 * Added basic flow for samplers in the compositor
samplers can be used to identify how to sample an ImBuf/LenderLayer/Image/MovieClip/TempBuffer.
example of samplers are Nearest, Bilinear, Bicubic

 - At Mind - 

Modified Paths:
--------------
    branches/tile/source/blender/compositor/intern/COM_SocketReader.h
    branches/tile/source/blender/compositor/operations/COM_AlphaOverKeyOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_AlphaOverKeyOperation.h
    branches/tile/source/blender/compositor/operations/COM_AlphaOverMixedOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_AlphaOverMixedOperation.h
    branches/tile/source/blender/compositor/operations/COM_AlphaOverPremultiplyOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_AlphaOverPremultiplyOperation.h
    branches/tile/source/blender/compositor/operations/COM_BokehBlurOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_BokehImageOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_BokehImageOperation.h
    branches/tile/source/blender/compositor/operations/COM_BoxMaskOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_BoxMaskOperation.h
    branches/tile/source/blender/compositor/operations/COM_BrightnessOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_BrightnessOperation.h
    branches/tile/source/blender/compositor/operations/COM_ChangeHSVOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ChangeHSVOperation.h
    branches/tile/source/blender/compositor/operations/COM_ChannelMatteOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ChannelMatteOperation.h
    branches/tile/source/blender/compositor/operations/COM_ChromaMatteOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ChromaMatteOperation.h
    branches/tile/source/blender/compositor/operations/COM_ColorBalanceASCCDLOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ColorBalanceASCCDLOperation.h
    branches/tile/source/blender/compositor/operations/COM_ColorBalanceLGGOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ColorBalanceLGGOperation.h
    branches/tile/source/blender/compositor/operations/COM_ColorCorrectionOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ColorCorrectionOperation.h
    branches/tile/source/blender/compositor/operations/COM_ColorCurveOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ColorCurveOperation.h
    branches/tile/source/blender/compositor/operations/COM_ColorMatteOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ColorMatteOperation.h
    branches/tile/source/blender/compositor/operations/COM_ColorRampOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ColorRampOperation.h
    branches/tile/source/blender/compositor/operations/COM_ColorSpillOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ColorSpillOperation.h
    branches/tile/source/blender/compositor/operations/COM_CombineChannelsOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_CombineChannelsOperation.h
    branches/tile/source/blender/compositor/operations/COM_CompositorOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertColorProfileOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertColorProfileOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertColorToBWOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertColorToBWOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertColorToVectorOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertColorToVectorOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertColourToValueProg.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertColourToValueProg.h
    branches/tile/source/blender/compositor/operations/COM_ConvertDepthToRadiusOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertDepthToRadiusOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertHSVToRGBOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertHSVToRGBOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertRGBToHSVOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertRGBToHSVOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertRGBToYCCOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertRGBToYCCOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertRGBToYUVOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertRGBToYUVOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertValueToColourProg.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertValueToColourProg.h
    branches/tile/source/blender/compositor/operations/COM_ConvertValueToVectorOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertValueToVectorOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertVectorToColorOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertVectorToColorOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertVectorToValueOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertVectorToValueOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertYCCToRGBOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertYCCToRGBOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvertYUVToRGBOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvertYUVToRGBOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvolutionEdgeFilterOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvolutionEdgeFilterOperation.h
    branches/tile/source/blender/compositor/operations/COM_ConvolutionFilterOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ConvolutionFilterOperation.h
    branches/tile/source/blender/compositor/operations/COM_DifferenceMatteOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_DifferenceMatteOperation.h
    branches/tile/source/blender/compositor/operations/COM_DilateErodeOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_DirectionalBlurOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_DisplaceOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_DisplaceSimpleOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_DisplaceSimpleOperation.h
    branches/tile/source/blender/compositor/operations/COM_DistanceMatteOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_DistanceMatteOperation.h
    branches/tile/source/blender/compositor/operations/COM_DotproductOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_DotproductOperation.h
    branches/tile/source/blender/compositor/operations/COM_EllipseMaskOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_EllipseMaskOperation.h
    branches/tile/source/blender/compositor/operations/COM_FlipOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_FlipOperation.h
    branches/tile/source/blender/compositor/operations/COM_FogGlowImageOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_FogGlowImageOperation.h
    branches/tile/source/blender/compositor/operations/COM_GammaOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_GammaOperation.h
    branches/tile/source/blender/compositor/operations/COM_GlareThresholdOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_GlareThresholdOperation.h
    branches/tile/source/blender/compositor/operations/COM_HueSaturationValueCorrectOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_HueSaturationValueCorrectOperation.h
    branches/tile/source/blender/compositor/operations/COM_IDMaskOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_IDMaskOperation.h
    branches/tile/source/blender/compositor/operations/COM_ImageOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ImageOperation.h
    branches/tile/source/blender/compositor/operations/COM_InvertOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_InvertOperation.h
    branches/tile/source/blender/compositor/operations/COM_LensGhostOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_LensGhostOperation.h
    branches/tile/source/blender/compositor/operations/COM_LensGlowImageOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_LensGlowImageOperation.h
    branches/tile/source/blender/compositor/operations/COM_LensGlowOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_LensGlowOperation.h
    branches/tile/source/blender/compositor/operations/COM_LuminanceMatteOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_LuminanceMatteOperation.h
    branches/tile/source/blender/compositor/operations/COM_MapUVOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MapUVOperation.h
    branches/tile/source/blender/compositor/operations/COM_MapValueOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MapValueOperation.h
    branches/tile/source/blender/compositor/operations/COM_MathBaseOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MathBaseOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixAddOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixAddOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixBaseOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixBaseOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixBlendOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixBlendOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixBurnOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixBurnOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixColorOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixColorOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixDarkenOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixDarkenOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixDifferenceOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixDifferenceOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixDivideOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixDivideOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixDodgeOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixDodgeOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixHueOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixHueOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixLightenOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixLightenOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixLinearLightOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixLinearLightOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixMultiplyOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixMultiplyOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixOverlayOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixOverlayOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixSaturationOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixSaturationOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixScreenOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixScreenOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixSoftLightOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixSoftLightOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixSubtractOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixSubtractOperation.h
    branches/tile/source/blender/compositor/operations/COM_MixValueOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MixValueOperation.h
    branches/tile/source/blender/compositor/operations/COM_MovieClipAttributeOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MovieClipAttributeOperation.h
    branches/tile/source/blender/compositor/operations/COM_MovieClipOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_MovieClipOperation.h
    branches/tile/source/blender/compositor/operations/COM_OpenCLTestOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_OpenCLTestOperation.h
    branches/tile/source/blender/compositor/operations/COM_OutputFileOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_PreviewOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ReadBufferOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ReadBufferOperation.h
    branches/tile/source/blender/compositor/operations/COM_RenderLayersAlphaProg.cpp
    branches/tile/source/blender/compositor/operations/COM_RenderLayersAlphaProg.h
    branches/tile/source/blender/compositor/operations/COM_RenderLayersBaseProg.cpp
    branches/tile/source/blender/compositor/operations/COM_RenderLayersBaseProg.h
    branches/tile/source/blender/compositor/operations/COM_RenderLayersDepthProg.cpp
    branches/tile/source/blender/compositor/operations/COM_RenderLayersDepthProg.h
    branches/tile/source/blender/compositor/operations/COM_RenderLayersNormalOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_RenderLayersNormalOperation.h
    branches/tile/source/blender/compositor/operations/COM_RotateOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_RotateOperation.h
    branches/tile/source/blender/compositor/operations/COM_ScaleOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ScaleOperation.h
    branches/tile/source/blender/compositor/operations/COM_SeparateChannelOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_SeparateChannelOperation.h
    branches/tile/source/blender/compositor/operations/COM_SetAlphaOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_SetAlphaOperation.h
    branches/tile/source/blender/compositor/operations/COM_SetColorOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_SetColorOperation.h
    branches/tile/source/blender/compositor/operations/COM_SetValueOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_SetValueOperation.h
    branches/tile/source/blender/compositor/operations/COM_SetVectorOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_SetVectorOperation.h
    branches/tile/source/blender/compositor/operations/COM_SocketProxyOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_SocketProxyOperation.h
    branches/tile/source/blender/compositor/operations/COM_SplitViewerOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_TextureOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_TextureOperation.h
    branches/tile/source/blender/compositor/operations/COM_TranslateOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_TranslateOperation.h
    branches/tile/source/blender/compositor/operations/COM_VariableSizeBokehBlurOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_VectorCurveOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_VectorCurveOperation.h
    branches/tile/source/blender/compositor/operations/COM_ViewerOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_WriteBufferOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_WriteBufferOperation.h
    branches/tile/source/blender/compositor/operations/COM_ZCombineOperation.cpp
    branches/tile/source/blender/compositor/operations/COM_ZCombineOperation.h

Modified: branches/tile/source/blender/compositor/intern/COM_SocketReader.h
===================================================================
--- branches/tile/source/blender/compositor/intern/COM_SocketReader.h	2012-02-28 10:22:21 UTC (rev 44510)
+++ branches/tile/source/blender/compositor/intern/COM_SocketReader.h	2012-02-28 10:43:37 UTC (rev 44511)
@@ -25,6 +25,12 @@
 #include "BLI_rect.h"
 #include "COM_defines.h"
 
+typedef enum PixelSampler {
+	COM_PS_NEAREST,
+	COM_PS_BILINEAR,
+	COM_PS_BICUBIC
+} PixelSampler;
+
 class MemoryBuffer;
 /**
   * @brief Helper class for reading socket data.
@@ -53,7 +59,7 @@
 	   * @param y the y-coordinate of the pixel to calculate in image space
 	   * @param inputBuffers chunks that can be read by their ReadBufferOperation.
 	  */
-	virtual void executePixel(float* result, float x, float y, MemoryBuffer *inputBuffers[]) {}
+	virtual void executePixel(float* result, float x, float y, PixelSampler sampler, MemoryBuffer *inputBuffers[]) {}
 
 	/**
 	  * @brief calculate a single pixel
@@ -65,7 +71,7 @@
 	* @param chunkData chunk specific data a during execution time.
 	  */
 	virtual void executePixel(float* result, int x, int y, MemoryBuffer *inputBuffers[], void* chunkData) {
-		executePixel(result, x, y, inputBuffers);
+		executePixel(result, x, y, COM_PS_NEAREST, inputBuffers);
 	}
     
 	/**
@@ -81,10 +87,10 @@
 	virtual void executePixel(float* result, float x, float y, float dx, float dy, MemoryBuffer *inputBuffers[]) {}
 
 public:
-	inline void read(float* result, float x, float y, MemoryBuffer *inputBuffers[]) {
-		executePixel(result, x, y, inputBuffers);
+	inline void read(float* result, float x, float y, PixelSampler sampler, MemoryBuffer *inputBuffers[]) {
+		executePixel(result, x, y, sampler, inputBuffers);
 	}
-	inline void read(float* result, float x, float y, MemoryBuffer *inputBuffers[], void* chunkData) {
+	inline void read(float* result, int x, int y, MemoryBuffer *inputBuffers[], void* chunkData) {
 		executePixel(result, x, y, inputBuffers, chunkData);
 	}
 	inline void read(float* result, float x, float y, float dx, float dy, MemoryBuffer *inputBuffers[]) {

Modified: branches/tile/source/blender/compositor/operations/COM_AlphaOverKeyOperation.cpp
===================================================================
--- branches/tile/source/blender/compositor/operations/COM_AlphaOverKeyOperation.cpp	2012-02-28 10:22:21 UTC (rev 44510)
+++ branches/tile/source/blender/compositor/operations/COM_AlphaOverKeyOperation.cpp	2012-02-28 10:43:37 UTC (rev 44511)
@@ -25,14 +25,14 @@
 AlphaOverKeyOperation::AlphaOverKeyOperation(): MixBaseOperation() {
 }
 
-void AlphaOverKeyOperation::executePixel(float* outputValue, float x, float y, MemoryBuffer *inputBuffers[]) {
+void AlphaOverKeyOperation::executePixel(float* outputValue, float x, float y, PixelSampler sampler, MemoryBuffer *inputBuffers[]) {
     float inputColor1[4];
     float inputOverColor[4];
     float value[4];
 
-	inputValueOperation->read(value, x, y, inputBuffers);
-	inputColor1Operation->read(inputColor1, x, y, inputBuffers);
-	inputColor2Operation->read(inputOverColor, x, y, inputBuffers);
+	inputValueOperation->read(value, x, y, sampler, inputBuffers);
+	inputColor1Operation->read(inputColor1, x, y, sampler, inputBuffers);
+	inputColor2Operation->read(inputOverColor, x, y, sampler, inputBuffers);
 
     if(inputOverColor[3]<=0.0f) {
         outputValue[0] = inputColor1[0];

Modified: branches/tile/source/blender/compositor/operations/COM_AlphaOverKeyOperation.h
===================================================================
--- branches/tile/source/blender/compositor/operations/COM_AlphaOverKeyOperation.h	2012-02-28 10:22:21 UTC (rev 44510)
+++ branches/tile/source/blender/compositor/operations/COM_AlphaOverKeyOperation.h	2012-02-28 10:43:37 UTC (rev 44511)
@@ -39,6 +39,6 @@
     /**
       * the inner loop of this program
       */
-	void executePixel(float* color, float x, float y, MemoryBuffer *inputBuffers[]);
+	void executePixel(float* color, float x, float y, PixelSampler sampler, MemoryBuffer *inputBuffers[]);
 };
 #endif

Modified: branches/tile/source/blender/compositor/operations/COM_AlphaOverMixedOperation.cpp
===================================================================
--- branches/tile/source/blender/compositor/operations/COM_AlphaOverMixedOperation.cpp	2012-02-28 10:22:21 UTC (rev 44510)
+++ branches/tile/source/blender/compositor/operations/COM_AlphaOverMixedOperation.cpp	2012-02-28 10:43:37 UTC (rev 44511)
@@ -26,14 +26,14 @@
     this->x = 0.0f;
 }
 
-void AlphaOverMixedOperation::executePixel(float* outputValue, float x, float y, MemoryBuffer *inputBuffers[]) {
+void AlphaOverMixedOperation::executePixel(float* outputValue, float x, float y, PixelSampler sampler, MemoryBuffer *inputBuffers[]) {
     float inputColor1[4];
     float inputOverColor[4];
     float value[4];
 
-	inputValueOperation->read(value, x, y, inputBuffers);
-	inputColor1Operation->read(inputColor1, x, y, inputBuffers);
-	inputColor2Operation->read(inputOverColor, x, y, inputBuffers);
+	inputValueOperation->read(value, x, y, sampler, inputBuffers);
+	inputColor1Operation->read(inputColor1, x, y, sampler, inputBuffers);
+	inputColor2Operation->read(inputOverColor, x, y, sampler, inputBuffers);
 
     if(inputOverColor[3]<=0.0f) {
         outputValue[0] = inputColor1[0];

Modified: branches/tile/source/blender/compositor/operations/COM_AlphaOverMixedOperation.h
===================================================================
--- branches/tile/source/blender/compositor/operations/COM_AlphaOverMixedOperation.h	2012-02-28 10:22:21 UTC (rev 44510)
+++ branches/tile/source/blender/compositor/operations/COM_AlphaOverMixedOperation.h	2012-02-28 10:43:37 UTC (rev 44511)
@@ -41,7 +41,7 @@
     /**
       * the inner loop of this program
       */
-	void executePixel(float* color, float x, float y, MemoryBuffer *inputBuffers[]);
+	void executePixel(float* color, float x, float y, PixelSampler sampler, MemoryBuffer *inputBuffers[]);
 
     void setX(float x) {this->x = x;}
 };

Modified: branches/tile/source/blender/compositor/operations/COM_AlphaOverPremultiplyOperation.cpp
===================================================================
--- branches/tile/source/blender/compositor/operations/COM_AlphaOverPremultiplyOperation.cpp	2012-02-28 10:22:21 UTC (rev 44510)
+++ branches/tile/source/blender/compositor/operations/COM_AlphaOverPremultiplyOperation.cpp	2012-02-28 10:43:37 UTC (rev 44511)
@@ -25,14 +25,14 @@
 AlphaOverPremultiplyOperation::AlphaOverPremultiplyOperation(): MixBaseOperation() {
 }
 
-void AlphaOverPremultiplyOperation::executePixel(float* outputValue, float x, float y, MemoryBuffer *inputBuffers[]) {
+void AlphaOverPremultiplyOperation::executePixel(float* outputValue, float x, float y, PixelSampler sampler, MemoryBuffer *inputBuffers[]) {
     float inputColor1[4];
     float inputOverColor[4];
     float value[4];
 
-	inputValueOperation->read(value, x, y, inputBuffers);
-	inputColor1Operation->read(inputColor1, x, y, inputBuffers);
-	inputColor2Operation->read(inputOverColor, x, y, inputBuffers);
+	inputValueOperation->read(value, x, y, sampler, inputBuffers);
+	inputColor1Operation->read(inputColor1, x, y, sampler, inputBuffers);
+	inputColor2Operation->read(inputOverColor, x, y, sampler, inputBuffers);
 
 	/* Zero alpha values should still permit an add of RGB data */
     if(inputOverColor[3]<0.0f) {

Modified: branches/tile/source/blender/compositor/operations/COM_AlphaOverPremultiplyOperation.h
===================================================================
--- branches/tile/source/blender/compositor/operations/COM_AlphaOverPremultiplyOperation.h	2012-02-28 10:22:21 UTC (rev 44510)
+++ branches/tile/source/blender/compositor/operations/COM_AlphaOverPremultiplyOperation.h	2012-02-28 10:43:37 UTC (rev 44511)
@@ -39,7 +39,7 @@
     /**
       * the inner loop of this program
       */
-	void executePixel(float* color, float x, float y, MemoryBuffer *inputBuffers[]);
+	void executePixel(float* color, float x, float y, PixelSampler sampler, MemoryBuffer *inputBuffers[]);
 
 };
 #endif

Modified: branches/tile/source/blender/compositor/operations/COM_BokehBlurOperation.cpp
===================================================================
--- branches/tile/source/blender/compositor/operations/COM_BokehBlurOperation.cpp	2012-02-28 10:22:21 UTC (rev 44510)
+++ branches/tile/source/blender/compositor/operations/COM_BokehBlurOperation.cpp	2012-02-28 10:43:37 UTC (rev 44511)
@@ -71,7 +71,7 @@
 	float tempBoundingBox[4];
 	float bokeh[4];
 
-	inputBoundingBoxReader->read(tempBoundingBox, x, y, inputBuffers);
+	inputBoundingBoxReader->read(tempBoundingBox, x, y, COM_PS_NEAREST, inputBuffers);
 	if (tempBoundingBox[0] >0.0f) {
 		tempColor[0] = 0;
 		tempColor[1] = 0;
@@ -105,7 +105,7 @@
 			for (int nx = minx ; nx < maxx ; nx +=step) {
 				float u = this->bokehMidX - (nx-x) *m;
 				float v = this->bokehMidY - (ny-y) *m;
-				inputBokehProgram->read(bokeh, u, v, inputBuffers);
+				inputBokehProgram->read(bokeh, u, v, COM_PS_NEAREST, inputBuffers);
 				tempColor[0] += bokeh[0] * buffer[bufferindex];
 				tempColor[1] += bokeh[1] * buffer[bufferindex+1];
 				tempColor[2] += bokeh[2]* buffer[bufferindex+2];
@@ -120,7 +120,7 @@
 		color[2] = tempColor[2]*(1.0/overallmultiplyerb);
 		color[3] = 1.0f;
 	} else {
-		inputProgram->read(color, x, y, inputBuffers);
+		inputProgram->read(color, x, y, COM_PS_NEAREST, inputBuffers);
 	}
 }
 

Modified: branches/tile/source/blender/compositor/operations/COM_BokehImageOperation.cpp
===================================================================
--- branches/tile/source/blender/compositor/operations/COM_BokehImageOperation.cpp	2012-02-28 10:22:21 UTC (rev 44510)
+++ branches/tile/source/blender/compositor/operations/COM_BokehImageOperation.cpp	2012-02-28 10:43:37 UTC (rev 44511)
@@ -77,7 +77,7 @@
 	}
 	return insideBokeh;
 }
-void BokehImageOperation::executePixel(float* color, float x, float y, MemoryBuffer *inputBuffers[]) {
+void BokehImageOperation::executePixel(float* color, float x, float y, PixelSampler sampler, MemoryBuffer *inputBuffers[]) {
 	float shift = this->data->lensshift;
 	float shift2 = shift/2.0f;
 	float distance = this->circularDistance;

Modified: branches/tile/source/blender/compositor/operations/COM_BokehImageOperation.h

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list