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

Re: [Public WebGL] WebGL2 and no mapBuffer/mapBufferRange



> On Mar 12, 2015, at 2:48 PM, Florian Bösch <pyalot@gmail.com> wrote:
> 
> I'm assuming you refer to the condition in mapBufferRange where two overlapping ranges are created with the unsynchronized bit, which the spec states as undefined. This is also easy to solve, just don't let people create overlapping mapped buffer ranges (another gl error).
> 


I don’t think that’s the undefined situation in the spec, if I am understanding it correctly.

The UNSYNCHRONIZED_BIT tells the GL not to wait for pending operations (i.e. don’t do a fence sync or worse a finish()) before returning from MapBufferRange. The undefined case is when the application modifies data in the mapped range before the pending operations have completed. If the pending operation is a read the GL may see either the previous buffer content or the new data written by the application. If the pending operation is a write, the GL may clobber the data already modified by the application, or it may not.

There is no possible data leakage here; The only issue is that an incorrect application might work on some implementations.

Regards

    -Mark




Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail