aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/jogamp/opengl/util/av
diff options
context:
space:
mode:
authorSven Göthel <[email protected]>2024-01-22 22:01:59 +0100
committerSven Göthel <[email protected]>2024-01-22 22:01:59 +0100
commit1dcfdf71c09c6d774ac47012c05e09da4a085d7b (patch)
tree54952adc1bb001fdac105884c2b664814f67e163 /src/jogl/classes/jogamp/opengl/util/av
parent19fac36ae64ffb219fb40449b537219d74a1f000 (diff)
Bug 1488 - Graph RegionRenderer: Use a more deterministic 64-bit shaderKey: [0-31] bit values and state, [32-63] colorTexSeqHash
This leaves only room for a key collision on the 32-bit colorTexSeqHash value and hence should be save within our shader-code environment. + // # | s | + // 0 | 1 | isTwoPass + // 1 | 1 | pass1 + // 2 | 5 | ShaderModeSelector1 + // 7 | 1 | hasFrustumClipping + // 8 | 1 | hasColorChannel + // 9 | 1 | hasColorTexture + // 32 | 32 | colorTexSeqHash + long hash = ( isTwoPass ? 1 : 0 ); + hash = ( hash << 1 ) | ( pass1 ? 1 : 0 ) ; + hash = ( hash << 1 ) | sms.ordinal(); // incl. pass2Quality + sampleCount + hash = ( hash << 5 ) | ( hasFrustumClipping ? 1 : 0 ); + hash = ( hash << 1 ) | ( hasColorChannel ? 1 : 0 ); + hash = ( hash << 1 ) | ( hasColorTexture ? 1 : 0 ); + hash = ( hash << 1 ) | ( ( colorTexSeqHash & 0xFFFFFFL ) << 32 );
Diffstat (limited to 'src/jogl/classes/jogamp/opengl/util/av')
0 files changed, 0 insertions, 0 deletions