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.