[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Public WebGL] WEBGL_depth_texture unspecified case: sampling from an uninitialized depth texture



On Thu, Sep 26, 2013 at 12:26 PM, Daniel Koch <dkoch@nvidia.com> wrote:
> I think Chrome either initializes or clears all textures before use.
> While you can't provide initial data for an ANGLE_depth_texture texture
> you still should be able to attach it to an FBO and clear it.
>
> (Ken: feel free to correct me based on actual implementation details. I'm
> basing this from memory of some discussions I had with Greg.)

Correct. Chrome lazily clears all uninitialized textures and
renderbuffers, including depth_texture textures.
http://www.khronos.org/registry/webgl/specs/latest/1.0/#4.1 mandates
that all resources be cleared before they can be used. The
WEBGL_depth_texture extension does not violate this rule.

-Ken


> -Daniel
>
>
>
> On 2013-09-26 3:05 PM, "Benoit Jacob" <bjacob@mozilla.com> wrote:
>
>>
>>Hi,
>>
>>WEBGL_depth_texture introduces a basic possibility that does not exist
>>in the core WebGL spec: the possibility of an uninitialized texture.
>>
>>While uninitialized renderbuffers are only an implementation detail that
>>doesn't have any existence at the level of the WebGL spec, uninitialized
>>textures are different because they can be sampled from.
>>
>>The question is what should the spec mandate implementations to do when
>>executing code like this:
>>
>>   CreateAndTexImage2DSomeUninitializedDepthTexture();
>>   SetUpRenderingStateSamplingFromThatTexture();
>>   Draw();
>>
>>
>>It's not technically an INVALID_FRAMEBUFFER_OPERATION since the
>>uninitialized texture here is one we are sampling from, not one we are
>>rendering to. So should that be an INVALID_OPERATION?
>>
>>Note: I'm running into this while implementing support for
>>WEBGL_depth_texture on clients supporting only ANGLE_depth_texture. I
>>understand that Chrome already supports that. I would like to know what
>>is Chrome's current behavior there.
>>
>>Thanks,
>>Benoit
>>
>>-----------------------------------------------------------
>>You are currently subscribed to public_webgl@khronos.org.
>>To unsubscribe, send an email to majordomo@khronos.org with
>>the following command in the body of your email:
>>unsubscribe public_webgl
>>-----------------------------------------------------------
>>
>

-----------------------------------------------------------
You are currently subscribed to public_webgl@khronos.org.
To unsubscribe, send an email to majordomo@khronos.org with
the following command in the body of your email:
unsubscribe public_webgl
-----------------------------------------------------------