Author Topic: Unit/structure/resource selection with Ubuntu 12.10/Mesa 9.0/r300  (Read 1078 times)

tomreyn

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 2,764
    • View Profile
    • MegaGlest - the free and open source cross platform 3D real-time strategy game
While unit/structure/resource selection owrked fine for me on Ubuntu 11.04, 11.10 and 12.04, it's been a mixed experience for me since I upgraded to Ubuntu 12.10 and thus Mesa 9.0 on my atibox (see basic tech specifications below).

Code: [Select]
$ glxinfo | egrep '^(OpenGL|GLX|client|server)'
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
GLX version: 1.4
GLX extensions:
OpenGL vendor string: X.Org R300 Project
OpenGL renderer string: Gallium 0.4 on ATI RV560
OpenGL version string: 2.1 Mesa 9.0
OpenGL shading language version string: 1.20
OpenGL extensions:

MegaGlest supports three variants for unit selection: glSelectBuffer (the default mode), color picking (EnableColorPicking=true in glestuser.ini) and frustrum picking (EnableFrustumPicking=true in glestuser.ini). Additionally there is a so-called ATIHacks setting, but this just distorts some textures for me, including the logos on the bottom of the main menu, so I disabled it quickly.

While glSelectBuffer worked fine for me on and before Ubuntu 12.04, it fails on 12.10. I've summed up my experience with 12.10 on IRC and would like to present it here so we can check whether anyone else has made similar or related experiences - I would appreciate your feedback on this very much...

Quote from: IRC
<tomreyn> With glSelectBuffer when drawing drawboxes some units outside the drawbox get selected, too, and some other units inside it don't get selected.
<tomreyn> Also with glSelectBuffer, if you double click a unit to select all the nearby units of the same type, it will actually select a couple nearby units of different types
<tomreyn> With color picking, it all works fine but rendering comes to a standstill for  a second or two when you select several units with a drawbox.
<tomreyn> Additionally when you start drawing the drawbox or when you double-click units the entire screen dims for a single frame. It doesn't turn black (or maybe it does and it's just too short to notice) but colors just seem to become darker for a single frame
<tomreyn> Finally, with Color Pciking you cannot select your own units or attack enemy units if they are partially covered by trees or other objects.
<tomreyn> i.e. you need to move the camera so the trees are no longer in front of them to be able to select them
<tomreyn> With frustrum picking, everything works regarding selection but pointing a single units or a group of units to a target often fails in that they will actually go elsewhere.
<tomreyn> For example, when you have a tech worker and you point it to the gold to harvest, it may instead walk to the nearby castle because this was selected as atarget when you right clicked even though you clearly clicked on the gold.
<tomreyn> the selection mask of buildings seems ot be too large or misplaced there.
<tomreyn> but it think the same way could also happen the other way around when you actually want to go to the castle but instead end up going to the gold or cut some wood or similar.
<tomreyn> This behaviour where the game counts your clicks towards a different object also affect left clicking (when selecting a single unit, a structure or resource). Ypoou may end up activating something other than what you actually clicked on.
atibox: Ryzen 1800X (8 cores @3.6GHz), 32 GB RAM, MSI Radeon RX 580 Gaming X 8G, PCI subsystem ID [1462:3417], (Radeon RX 580 chipset, POLARIS10) @3440x1440; latest stable Ubuntu release, (open source) radeon (amdgpu) / mesa video driver
atibox (old): Core2Quad Q9400 (4 cores @2.66GHz), 8 GB RAM, XFX HD-467X-DDF2, PCI subsystem ID [1682:2931], (Radeon HD 4670, RV730 XT) @1680x1050; latest stable Ubuntu release, (open source) radeon / mesa video driver
notebook: HP envy13d020ng
internet access: VDSL2+

· · · How YOU can contribute to MG · Latest development snapshot · How to build yourself · Megapack techtree · Currently hosted MG games · · ·

Cygal

  • Guest
Re: Unit/structure/resource selection with Ubuntu 12.10/Mesa 9.0/r300
« Reply #1 on: 15 November 2012, 09:44:27 »
I don't really know why Ubuntu decided to use Mesa 9.0. The Mesa developers say it's not a stable version: "people who are concerned with stability and reliability should stick with a previous release or wait for Mesa 9.0.1". There are quite a number of mesa bugs in launchpad, some of them affect a lot of people. I don't know if yours has been reported. The best way to report it would be for an affected developer to try to reduce it to a simple OpenGL program, but that's quite a lot of work. The other option is to wait and see if the bug disappears in a few days.

(By the way, I'm running Debian unstable, which upgraded to Mesa 8.0.5 in November. I got hit by the invalid enumerant bug when rendering text: a lot of warnings were displayed during the trailer, and the game crashed when trying to display the menu. Since you said it's due to "bad graphic drivers", I decided to switch to fglrx-legacy-driver instead of trying to fix the issue.)

tomreyn

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 2,764
    • View Profile
    • MegaGlest - the free and open source cross platform 3D real-time strategy game
Re: Unit/structure/resource selection with Ubuntu 12.10/Mesa 9.0/r300
« Reply #2 on: 15 November 2012, 10:39:05 »
My impression is that Canonical isn't concerned as much about Ubuntu release stability, at least not for standard (non-LTS) releases. Obviously Mesa 9.0 was a bad choice for many, I guess they just push forward too much. Mesa 9.0 doesn't seem to offer support for new must-have features really, unless OpenGL 3.1 and improved OpenGL ES support are considered such. I guess it can offer better performance on integrated (mostly Intel) GPUs where you may get hardware accelerated MPEG decrompression now. I'd personally prefer Theora acceleration but I bet the MPEG consortium has a stronger lobby (and contracts, and money).

I haven't reported said bug, exactly because I am unable to provide a simple test case, and because I know way too little about this area, and would probably not be very helpful to the Mesa developers. And reporting bugs against Ubuntu components which are not in their direct control is usually not very helpful either (other than it will provide other users with a focal point to report their bugs against, too).
atibox: Ryzen 1800X (8 cores @3.6GHz), 32 GB RAM, MSI Radeon RX 580 Gaming X 8G, PCI subsystem ID [1462:3417], (Radeon RX 580 chipset, POLARIS10) @3440x1440; latest stable Ubuntu release, (open source) radeon (amdgpu) / mesa video driver
atibox (old): Core2Quad Q9400 (4 cores @2.66GHz), 8 GB RAM, XFX HD-467X-DDF2, PCI subsystem ID [1682:2931], (Radeon HD 4670, RV730 XT) @1680x1050; latest stable Ubuntu release, (open source) radeon / mesa video driver
notebook: HP envy13d020ng
internet access: VDSL2+

· · · How YOU can contribute to MG · Latest development snapshot · How to build yourself · Megapack techtree · Currently hosted MG games · · ·