- Package:
- libgl1-mesa-dri
- Source:
- mesa
- Description:
- free implementation of the OpenGL API -- DRI modules
- Submitter:
- Guillem Jover
- Date:
- 2019-09-26 19:57:08 UTC
- Severity:
- normal
Hi! This game is missrendering on my system. Attached is a screenshot, but that does not show the "animation" with triangles coming and going. I've tried disabling anything on the settings that might affect the rendering but to no avail. I've also noticed that the program outputs errors related to the object tessellation which I think might be relevant here. My suspicion is that my hw (Intel GM45 / i915) does not provide one of the OpenGL extensions and the software fallback code is buggy. Here's the game output: ,--- program output --- Check for Dialog-Program Dialog Program kdialog found Data dir entry Browser initialized for history-functions Player variables initialized Use config-file: /home/guillem/.foobillardrc Base-Configuration initialized processing option 0=human processing option 1=ai processing option 2=guillem processing option 3=Computer_1 processing option 5=Computer_1 processing option 10=Computer_1 processing option 13=off processing option 14=7.000000 processing option 17=7.000000 processing option 19=on processing option 20=0.000000 processing option 21=0.300000 processing option 22=v processing option 23=on processing option 25=m processing option 26=192.168.1.1 processing option 27=56341 processing option 28=1024x768 processing option 30=firefox processing option 31=off processing option 32=off processing option 33=128 processing option 34=off processing option 35=off processing option 36=off processing option 37=off processing option 38=match processing option 39=off processing option 40=30.000000 processing option 41=on processing option 42=on processing option 43=off processing option 44=4 processing option 45=on processing option 46=on processing option 47=on processing option 48=10 processing option 49=90 processing option 50=10 processing option 51=off processing option 52=off processing option 53=0.000000 processing option 54=on processing option 55=off processing option 56=on processing option 57=0 processing option 58=on processing option 59=1 processing option 60=en Configuration processed Language initialized History system initialized OpenGL context initialized extension_cubemap_ARB=1 extension_multitexture_ARB=1 extension_combine_ARB: 1 extension_dot3_ARB: 1 extension_vp_ARB: 1 extension_ts_NV=0 extension_rc_NV=0 extension_vp_NV=0 options_multisample: 1 Anisotropic Filter 1. Load 2D Graphics start Graphics loaded and initialized Create balls scene Create table object Initialize billiard table-frame Initialize table-texture Initialize clothing table texture Initialize new table GL object Generate furrow object Generate lower upper furrow object Generate some middle pocket triangles object Generate lower left, lower right, upper right, upper left pocket triangles object Generate left, right pocket triangles object Generate left, right pocket fans triangles object Generate pocket objects: Not carom: Call to build a table border lower Call to build a table border upper left Call to build a table border upper right Call to build a table border lower left Call to build a table border lower right Call to build a table border Generate diamonds border objects Generate gold/silver edges and cover objects Generate bumpers for gold/silver edges and covers Generate side holes Generate wood frame Return the new table object Create room object Graphics loaded and initialized Status-line initialized Player initialized Players text initialized Game restart for the selected start-game Mix_Init: Failed to init both ogg and mp3 support! Check only for ogg. Mix_Init: Mixer not built with MP3 support Sound-system initialized Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Play sound-intro Initialize default mesh-graphics Initialize default Sofa object Initialize default Chair object Initialize default Table object Initialize default Fireplace object Initialize default ceiling-lamp object Initialize fire object load fireplace fire graphics Create fire no: 0 of 14 Create fire no: 1 of 14 Create fire no: 2 of 14 Create fire no: 3 of 14 Create fire no: 4 of 14 Create fire no: 5 of 14 Create fire no: 6 of 14 Create fire no: 7 of 14 Create fire no: 8 of 14 Create fire no: 9 of 14 Create fire no: 10 of 14 Create fire no: 11 of 14 Create fire no: 12 of 14 Create fire no: 13 of 14 Initialize fire lists completed Graphic meshes initialized Run into game loop `--- Thanks, Guillem
Control: tags -1 confirmed thanks for your report. I can confirm your issue because I can reproduce it on my Lenovo X200 laptop with an Mobile Intel GM45 Express Chipset too. However the game works fine on my computer with a Geforce 9600 GT (nouveau drivers) and another one with an AMD HD 6450 video card (radeon drivers). The author of foobillardplus is aware of the problem. He has already mentioned it in his README file. Unfortunately I installed the file into the wrong package (foobillard), so it was easy to miss. I'm aware of this mishap and I will install the README to foobillardplus with the next revision. The Tessellation errors don't seem to be related because they also appear here on my computer where foobillardplus works flawlessly. This might be a different problem but at the moment I consider this output simply as noise. I have the same suspicion as you that the Intel GM45 chipset is not capable of rendering all graphics because of missing OpenGL extensions. I'm not sure yet whether this is a sole hardware problem or a driver issue. Though Foobillardplus requires 100% OpenGL compatible graphic card drivers. I'm inclined to clone this bug report and to reassign the clone to xserver-xorg-video-intel. If the maintainers of the intel driver confirm that this is rather a hardware issue than a driver issue, then this bug should be marked as "wontfix". If it is a driver issue, then I intend to keep this bug report open until a open source driver is developed that fixes the issue. I'm not so sure about the "software fallback code". In most circumstances this means that users experience a very sluggish game and in my opinion this isn't a real fix. So in short: I believe this is an issue related to your video card and it won't/can't be really fixed by the author of foobillardplus. Regards, Markus
Hi all, Ran into the same issues . This was the output on the CLI . $ foobillardplus Check for Dialog-Program Dialog Program zenity found Data dir entry Browser initialized for history-functions Player variables initialized Use config-file: /home/shirish/.foobillardrc Base-Configuration initialized Configuration processed Language initialized History system initialized OpenGL context initialized extension_cubemap_ARB=1 extension_multitexture_ARB=1 extension_combine_ARB: 1 extension_dot3_ARB: 1 extension_vp_ARB: 1 extension_ts_NV=0 extension_rc_NV=0 extension_vp_NV=0 options_multisample: 1 Anisotropic Filter 1. Load 2D Graphics start Graphics loaded and initialized Create balls scene Create table object Initialize billiard table-frame Initialize table-texture Initialize clothing table texture Initialize new table GL object Generate furrow object Generate lower upper furrow object Generate some middle pocket triangles object Generate lower left, lower right, upper right, upper left pocket triangles object Generate left, right pocket triangles object Generate left, right pocket fans triangles object Generate pocket objects: Not carom: Call to build a table border lower Call to build a table border upper left Call to build a table border upper right Call to build a table border lower left Call to build a table border lower right Call to build a table border Generate diamonds border objects Generate gold/silver edges and cover objects Generate bumpers for gold/silver edges and covers Generate side holes Generate wood frame Return the new table object Create room object Graphics loaded and initialized Status-line initialized Player initialized Players text initialized Game restart for the selected start-game Mix_Init: Failed to init both ogg and mp3 support! Check only for ogg. Mix_Init: Mixer not built with MP3 support Sound-system initialized Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Tessellation Error: gluTessBeginContour() must precede a gluTessEndContour() Tessellation Error: gluTessEndContour() must follow a gluTessBeginContour() Tessellation Error: need combine callback Play sound-intro Initialize default mesh-graphics Initialize default Sofa object Initialize default Chair object Initialize default Table object Initialize default Fireplace object Initialize default ceiling-lamp object Initialize fire object load fireplace fire graphics Create fire no: 0 of 14 Create fire no: 1 of 14 Create fire no: 2 of 14 Create fire no: 3 of 14 Create fire no: 4 of 14 Create fire no: 5 of 14 Create fire no: 6 of 14 Create fire no: 7 of 14 Create fire no: 8 of 14 Create fire no: 9 of 14 Create fire no: 10 of 14 Create fire no: 11 of 14 Create fire no: 12 of 14 Create fire no: 13 of 14 Initialize fire lists completed Graphic meshes initialized Run into game loop The only diff. between Guillem screenshot and mine that it shows 70% as the game has progressed. @markus please share if you have cloned this bug report and assigned it to xserver-xorg-intel. One way or the other we would know if it's our hardware or the driver as an issue. Mine is G33/G31 Express chipset. $ lspci | grep VGA 00:02.0 VGA compatible controller: Intel Corporation 82G33/G31 Express Integrated Graphics Controller (rev 10)
[...] Hi shirish, thanks for your additional information. However it appears to me that your card supports only the OpenGL 1.4 spec. https://de.wikipedia.org/wiki/Intel_GMA I presume that means that it is even more unlikely for you to play the game because the GM45 chipset of Guillem's card and mine supports OpenGL 2.1 at least. I'm not sure yet to what package I should assign the clone. xserver-xorg-video-intel provides the 2D support for your intel card whereas mesa is responsible for 3D and OpenGL functionality. Just keep a look on this bug report and you won't miss anything. Regards, Markus
notforwarded 721835 forwarded 721835 https://bugs.freedesktop.org/show_bug.cgi?id=72172 reassign 721835 libgl1-mesa-dri retitle 721835 [i965] [GM45] bogus rendering with gen4-5 intel chipsets found 721835 9.2.2-1 affects 721835 foobillardplus tags 721835 upstream thanks I forwarded the bug report to the developer of Foobillard++. So far he couldn't find a solution on his side. I think this is a bug in Mesa, respectively the dri component of the i965 driver, since AMD and Nvidia based cards with the radeon and nouveau open source drivers work fine. The game also works with Gallium0.4 on llvmpipe aka software rendering. If you start Foobillard++ with LIBGL_ALWAYS_SOFTWARE=1 foobillardplus you should be able to play the game but this will cause a high CPU load and will result in a sluggish game play. I don't recommend that. I have reported this bug to Mesa upstream at https://bugs.freedesktop.org/show_bug.cgi?id=72172 It seems this bug occurs with generation 4 and 5 intel chipsets but not with the latest ivybridge generation. I will keep an eye on the discussion upstream and on this bug report. Regards, Markus
found 721835 10.0.1-1 thanks Mesa 10 from experimental doesn't help. Elimar
foobillard 3.0a-5 from stable runs fine here in both mesa9 and mesa10. Elimar
Dear Customer, We could not deliver your item. Delivery Label is attached to this email. Yours trully, Nicholas Leonard, Station Manager.
Dear Customer, We could not deliver your parcel. Shipment Label is attached to email. Kind regards, Clifford Turner, FedEx Operation Manager.
Dear Customer, We could not deliver your parcel. Please, open email attachment to print shipment label. Sincerely, Warren Rogers, FedEx Support Manager.
Dear Customer, This is to confirm that one or more of your parcels has been shipped. Shipment Label is attached to email. Sincerely, Gerald Mcfarland, Delivery Manager.
Dear Customer, We could not deliver your parcel. Delivery Label is attached to this email. Sincerely, Miguel Mcallister, FedEx Station Manager.
Dear Customer, Courier was unable to deliver the parcel to you. Shipment Label is attached to email. Thanks and best regards, Roger Wade, FedEx Delivery Manager.