From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 30007] Regression in r300g Date: Sun, 12 Sep 2010 19:46:10 -0700 (PDT) Message-ID: <20100913024610.AF35213007E@annarchy.freedesktop.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from annarchy.freedesktop.org (annarchy.freedesktop.org [131.252.210.176]) by gabe.freedesktop.org (Postfix) with ESMTP id ACDC99E75D for ; Sun, 12 Sep 2010 19:46:10 -0700 (PDT) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org https://bugs.freedesktop.org/show_bug.cgi?id=30007 --- Comment #24 from Tom Stellard 2010-09-12 19:46:10 PDT --- > uniform sampler2D texUnit; > uniform vec2 offsets[25]; > uniform vec4 kernel[25]; > uniform int kernelSize; > > void main(void) > { > vec4 sum = texture2D(texUnit, gl_TexCoord[0].st) * kernel[0]; > for (int i = 1; i < 25; i++) { > > sum += texture2D(texUnit, gl_TexCoord[0].st - offsets[i]) * kernel[i]; > sum += texture2D(texUnit, gl_TexCoord[0].st + offsets[i]) * kernel[i]; > } > gl_FragColor = sum; > } Oops, I submitted before I was done. This shader would be better, because the loop could be unrolled even if kernelSize is different in each execution: uniform sampler2D texUnit; uniform vec2 offsets[25]; uniform vec4 kernel[25]; uniform int kernelSize; void main(void) { vec4 sum = texture2D(texUnit, gl_TexCoord[0].st) * kernel[0]; for (int i = 1; i < 25; i++) { if ( i < kernelSize) { sum += texture2D(texUnit, gl_TexCoord[0].st - offsets[i]) * kernel[i]; sum += texture2D(texUnit, gl_TexCoord[0].st + offsets[i]) * kernel[i]; } } gl_FragColor = sum; } -- Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug.