[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Public WebGL] ARB_robustness and array bounds checking
- To: Chris Marrin <firstname.lastname@example.org>
- Subject: Re: [Public WebGL] ARB_robustness and array bounds checking
- From: "Gregg Tavares (wrk)" <email@example.com>
- Date: Fri, 21 Oct 2011 10:02:48 -0700
- Cc: "firstname.lastname@example.org webgl" <email@example.com>
- Dkim-signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1319216570; bh=ibi+y1iZQy8qs74d2EWeG3iU5iY=; h=MIME-Version:In-Reply-To:References:Date:Message-ID:Subject:From: To:Cc:Content-Type; b=IsJoOSgrj1/AHqwnxEk3j8LwkoLJ9JYW2XX5FZP3Erw+NUt8AKMcUy12V4UzJ+heg AzG3VWM/9gWlbCZsIvB5A==
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=beta; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:x-system-of-record; bh=h4YaHD2iXTiw8vC2JO2Kubvc3SLgaOcK0dcjKzyv9v0=; b=UYS1eBt5/76pf4Lw51VJ1k1WYTIgeHbK/D9EfuFYVUqK7G43xjsm+843aQJ0XS0wHB DNDQw6XhslmW1xpX7hmg==
- Domainkey-signature: a=rsa-sha1; s=beta; d=google.com; c=nofws; q=dns; h=dkim-signature:mime-version:in-reply-to:references:date: message-id:subject:from:to:cc:content-type:x-system-of-record; b=ZyZf36PgivFIIUCCO2hs0CTU+cBZbZ17eGDpC8Gpqditzqp9e3XEgrKyF2iY8ibr2 Q/TuV2zBzdrDQyfRY4O3g==
- In-reply-to: <3AF7E570-2BE9-4D25-BAA5-2F4EA30CD801@apple.com>
- List-id: Public WebGL Mailing List <public_webgl.khronos.org>
- References: <3AF7E570-2BE9-4D25-BAA5-2F4EA30CD801@apple.com>
- Sender: firstname.lastname@example.org
On Fri, Oct 21, 2011 at 8:20 AM, Chris Marrin <email@example.com>
Currently the WebKit implementation of WebGL keeps around the current index array so it can be used to do bounds checking on draw calls. This is mandated in section 6.4 of the spec. The ARB_robustness extension requires that out-of-bounds array accesses be forbidden. But by my reading it doesn't require the behavior mandated in the WebGL spec. They simply guarantee that no fetches outside the array will happen. Compliant behavior would be to simply return 0 values for these accesses. So bounds checking on the WebGL side would still be required.
If this is the case, I think we should make changes so drivers implementing this extension can avoid the WebGL side bounds checking. I'm not sure it's practical to change the ARB_isolation extension at this point. So I would be in favor of changing section 6.4 of the spec to match the behavior required in the extension.
If I understand correctly the issue with ARB_isolation is there is no guarantee the driver is obeying anything. It doesn't report errors for out of bounds access so there is no way to test that it's actually working. For WebGL we wanted something testable as far as I remember.