Bonjour,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#version 130
in vec2 a;
out vec4 color;
void main(void)
{
    float u = a.x;
    float v = a.y;
 
    float s = u + v;
    float e = s - u; // ~v
    e = v - e; // le "reste" de l'addition
 
    if (e == 0.0)
        color = vec4(0.0, 0.0, 1.0, 1.0);
    else
        color = vec4(1.0, 0.0, 0.0, 1.0);
}
Ce code GLSL (frag) ne s'execute pas de la même façon entre mes deux PC.

Sur ma Intel HD Graphics 3000 : écran bariolé de rouge et de bleu (normal)
Sur ma GeForce GTX 560 : écran tout bleu (pas normal)

Le code que je donne la est une mise en évidence du problème.
Mon but est de faire de l'émulation de double précision.
Voir http://www.thasler.org/blog/?p=93.