[Bug 97305] Wrong values returned by GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT & GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT randomly breaks stuff

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Aug 11 23:08:40 UTC 2016


https://bugs.freedesktop.org/show_bug.cgi?id=97305

--- Comment #13 from Matias N. Goldberg <dark_sylinc at yahoo.com.ar> ---
I've added a "Proof of the bug".

There IS a bug. I don't know if it's software or in the hardware. The attached
sample does the following:

1. Create a 1MB buffer.
2. Fill the first 4kb with the pattern:
data[i+0] = 1.0f;
data[i+1] = 0.5f;
data[i+2] = 0.15f;
data[i+3] = 0.0f;
3. Attach it via:
glActiveTexture( GL_TEXTURE0 );
glBindTexture( GL_TEXTURE_BUFFER, texName );
glTexBufferRange( GL_TEXTURE_BUFFER, GL_RGBA32F, vboName,
                  elementStart*sizeof(float),
                  1024*4*sizeof(float) );
++elementStart;
4. Render a triangle showing the colours.

If the alignment is not a problem, I should see Orange-Cream, then Carmine,
then blue-violetish, then green; repeat.

Instead I **ALWAYS** see Orange-Cream; which is clearly incorrect.
After running the sample long enough, elementStart will be > 1024 (thus 1024*4
exceeding 4kb) and begins to display black. (and if you leave it long enough
running it could crash or throw an error, that's not the point)

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20160811/938eb30d/attachment.html>


More information about the dri-devel mailing list