Linux

Gnome3/OpenGL - "Context bleed"?

Deus ex machina pet 5.10.2012 18:37

Pozdrav,

imam malo cudan problem.

 

Kao sto vecina koja cita ovu temu zna, Gnome3 u pozadini koristi Clutter, koji koristi OpenGL. Dogadja mi se da, dok debuggiram OpenGL projekt i nesto se skrsi, window manager podivlja.

Chromium je definitivno najosjetljiviji - mijenja boju slova u nevidiljvu, razmazuje font (i to doslovce, ne pricam o wing-dings), prikazuje artifakte kod gui elemenata koji su stackani jedan na drugi, a i tipican GTK+ L&F se izgubi i postane vise kockast...

Ostale otvorene aplikacije proizvljavaju slicne traume - Thunderbird totalno izgubi tekst dok ne predjem mishem preko njega (repaint?), netBeans ponekad odbija prikazati popup menije, xterm je nevidljiv dok ne promjenim color scheme.

 

Sumnjam u drivere (i915, mesa), ali interesira me da li netko ima slican problem? Koristim arch, kompletno updateiran.

Deus ex machina pet 5.10.2012 19:11
Bypass kaže...

Meni se to pod normalno događa na malo starijem laptopu. Vrlo vjerojatno je do driver-a, ali pogledaj sa gdb-om što se točno događa.

p.s. Isto ATI.

Nadao sam se preskociti cijeli taj proces, jer sve i da otkrijem sta je u pitanju - ne bi se snasao u sourceu od drivera :-( i915 je za intel, laptop nije bas najnoviji, oko 2 godine - asus b53f, ima neki integrirani gpu koji se, iskreno, sasvim ok snalazi s onim sto dobije na rad, ali driveri onemogucavaju maltene normalan razvoj. Ni jedan OGL debugger ne radi, za primjer...

 

Da li znas za neki nacin 'resetiranja' konteksta bez telinita? Alt+F2 / 'r' ne radi... 

 

Deus ex machina pet 5.10.2012 20:13

Bah, kompletno zaboravio na --replace. Sad sam probao, radi bez problema, ali kao za inat, ne mogu reproducirati artifakte. Sjetit cu se negdje u buducnosti.

Sto se tice njihove bugzille - skrsio sam GLSL compiler, probao na IRC-u potraziti pomoc ali nitko ne odgovara, pa odustah. 

 

Nevjerojatno, ali driver se skrsi ako unutar for loopa dobije kondicional - ali tek onda kad pokusas nesto rendati s tim shaderom. U medjuvremenu, kompilacija prolazi bez problema - inace engine sam zaustavi sve ako kompilacija ne prodje.

  

Edit:

Probao sa --replace, radi, zakon! Hvala.