side effect of uintBitsToFloat on const vectors
Reported by
fabrice....@gmail.com,
Yesterday
(32 hours ago)
|
||
Issue descriptionUserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 Example URL: https://www.shadertoy.com/view/wdSGRh Steps to reproduce the problem: cf https://www.shadertoy.com/view/wdSGRh 1. uvec3 A = uvec3( 0xFFFF0000U , 0x80000000U, 0U ) 2. uvec3 B = vec3( apply uintBitsToFloat on each component of A) What is the expected behavior? B[2] == 0 What went wrong? B[2] == B [1] != 0 Does it occur on multiple sites: Yes Is it a problem with a plugin? No Did this work before? N/A Does this work in other browsers? No firefow Chrome version: 71.0.3578.98 Channel: stable OS Version: Flash Version: - Only on OpenGL, even with recent driver - not occuring if A is made non const ( e.g. by adding uint(min(0.,fragCoord.x)) ) May somebody please set the flags Blink>WebGL Internals>GPU>ANGLE ? thanks !
,
Yesterday
(32 hours ago)
NB: I know uintBitsToFloat is "undetermined" on some special values like NaN. Here, the main bug is the side effect on another component of the same vector. It might look like a corner case, but it can easily occurs when one maps ints in float buffers. ( masks, sprites, manual treatment of high precision... ).
,
Yesterday
(26 hours ago)
|
||
►
Sign in to add a comment |
||
Comment 1 by fabrice....@gmail.com
, Yesterday (32 hours ago)