Convolution Border Mode Conformance Test Proposal Jack Middleton, Sun (Jack.Middleton@Eng.Sun.COM) This test checks the operation of convolution border modes. It tests 2D and separable cases. Each border mode is tested against each operation that is effected by convolution borders. /********** 2D test **************/ for each 2D convolution filter { for each border mode { /* glDrawPixels test call glClear set convolution filter and border parameters set raster position, call glDrawPixels check the image */ /* glCopyPixels test call glClear disable convolution draw image enable convolution, set filter and border parameters call glCopyPixels on image check the new image */ /* glReadPixels test call glClear disable convolution draw image enable convolution, set filter and border parameters call glReadPixels on image check image in memory */ /* glTexImage2D test call glClear set convolution filter and border parameters call glTexImage2D texture map image onto rectangle check the resulting image */ /* glTexSubImage2D test call glClear set convolution filter and border parameters call glTexSubImage2D texture map image onto rectangle check the resulting image */ /* glCopyTexImage2D test call glClear disable convolution draw image enable convolution, set filter and border parameters call glCopyTexImage2D texture map image onto rectangle check the resulting image */ /* glCopyTexSubImage2D test call glClear disable convolution draw image enable convolution, set filter and border parameters call glCopyTexSubImage2D texture map image onto rectangle check the resulting image */ } } /********** separable filter tests **************/ for each separable filter { for each border mode { /* same case as 2D tests above */ } } Conformance Criteria: filters: 3X3 RGBA FLOAT for 2D 1X3 RGBA FLOAT's for separable REDUCE test: Use a white image and check the edges to ensure that no color is present in the border pixels (outer 2 pixels for a 5X5 filter). IGNORE_BORDER test: Use a white image and check the edges to ensure that the border pixels are white. CONSTANT_BORDER test: Use a image with no color and a border with color and check the edges to see if color is present in the border pixels. REPLICATE_BORDER test: Use a white image and check the edges to see if the border pixels are white.