Monday, September 19, 2011

Mucho Mouse

New mouse
Since back in the day I have played Starcraft with my Uni friends, work colleagues and even J Random Interweb-Dweller. The best thing about it is I can have a game if I have 1/2 an hour to spare, and when life is busy I don't have to play - nothing lost.

Some folks I know who play some other online games seem to make a job-of-work out of it. But that's another story / blog post.

Why I'm telling y'all about this is my Starcraft playing has finally caused me to upgrade from my crappy Microsoft LED mouse that I have used for ages to this monster thing. Its a Razer Mamba 4G (also I think called a Razer Mamba 2012) and is one of very few wireless mice designed specifically for playing games. The old LED mouse had developed a nasty habit of dropping out during very fast mousing - suddenly the mouse pointer was reset to some random location on the screen. Time I thought that I boost my lack-luster RTS twitch reflexes with some new tech, and there was no point in going half-way with this - I wanted some bad-ass thing that the macho gamer boys would feel proud to have on their desk. Also I wanted wireless and many of the options, including products from Logitech, do not support Mac here. Your loss Logitech, and plus one for Razer.

You can read lots of reviews on the net covering the Mamba in depth wither respect to gaming and learn far more than I know about how it would benefit a serious gamer - rather than a dabbler like me. What I can tell you about is its compatibility with Mac, since the Razer is originally a MS Windows beast. Also I can look at how easy it was for me to use, again given that I not a serious tech-head when it comes to hardware.
Image from Wikipedia of Terminator hand in clear case
The first thing that weirded me out was that the Razer comes in this crazy perspex display box, made up of a monolith-like black plastic base and clear case lid. Then the mouse itself is raised up above the base on a perspex stand inside the clear case. The net effect is that looks like some piece of sci-fi set dressing. I just hope this mouse isn't going to attain sentience and alter the future.

The perspex stand thing was a real pain to detach - eventually I figured out that you had to pull back the tab in front of the mouse wheel (between Mamba's left and right buttons) and the swivel the perspex base clear of Mamba's battery housing. The battery (just like a cell-phone's) and its cover come in a seperate package.

Then reading the user-doc, it says you have to download the Mamba driver software from their website. No problem - soon found and installed. I did notice when doing this that the mouse already seemed to be operating, but I thought - "Oh, well - they would not say you needed it if you didn't".

With hindsight I would give it a try without their driver first - if you can live without the configurability. Because now its installed I cannot see a way to uninstall it. Sigh.

The battery is initially flat, and takes hours to charge, so I started out by connecting up the braided USB cable and using Mamba in its "wired" configuration.

Once running the mouse seemed fine around the Mac desktop, if a little frisky. The buttons on the side which change (on the fly) the mouse sensitivity (in user-adjustable "stages") helped a bit with that.

But...

When it came to playing games tho' on the Mac, that's when the frustration kicked in. Why could I not click on anything!

Finally some research indicated that an additional program was required to be installed to work around the issues with Mac's mouse acceleration. For the uninitiated mouse acceleration is used to make the mouse responsiveness increase when you start to move it quickly across the desk, but makes the reponsiveness decrease when moving it slowly. This enables you to position a mouse precisely when doing slow detailed mouse-moves, and still get the pointer quickly across your desktop.

Apparently - just ask Google - there is a problem with Mac OSX mouse acceleration. Some folks don't experience the issue at all, but many who are from the Windows world apparently do. I'd never realised there was an issue until I tried to use my new piece of black awesomeness to actually play a game. The mouse pointer would constantly overshoot the target. I'd start to move the pointer toward one of my little Starcraft workers and suddenly the mouse pointer would gather speed and race past where I was trying to click.

Fiddling with the settings did not help. And the Razer Mamba's configuration screen comes with a million settings so I fiddled with as many as I could find, believe me.

Since the Razer really comes from the Windows world, and apparently the driver is ported to the Mac, maybe the acceleration algorithms in the drivers are fighting with each other?

Installing SteerMouse fixed the problem, however. I did not try to do anything special with SteerMouse - it has a feature set including being able to quickly shoot the mouse to some pre-specified destination - but none of that interested me. Whatever SteerMouse was intended to do, it has the effect of neutralising the interaction between Razer and the Mac acceleration issue.

Other things about the wireless gaming mouse - it comes with stand that features a charging connector to hitch up against the Mamba's underside charge contacts. The charging stand is in the same black (of course) but with a shiny finish, and has a pulsating led lighting effect that matches the one given out by Mamba's mousewheel. As well as being a charge station the base is the wireless receiver for the mouse. The braided USB cable slots into the back of the stand, and is easily reachable in case you need to quickly go over to using your mouse in wired mode.

I love Razer's customisable lighting! As you can see in the picture I have mine tuned to give out a lilac glow, instead of the standard blue. Both the base and the mouse itself do this, and the effect is pretty cool. I don't know about the practical value - Razer say this personalisation allows you to identify your mouse if you're gaming with friends. I dunno - I just like it. I can't really imagine this feature would solve any arguments about who's mice was who's - but I like it anyway.

One last thing - I wanted a wireless mouse because cables drive me crazy on my desktop. But its all too easy to forget to put Mamba back on its stand when you're done with it. And if you've forgotten to do that you probably also forgot to slide the wireless switch to the off position, resulting in a red low battery warning light on the black mouse when you next settle down for some game playing. Razer warn you about this in the user doc, but if you're used to bluetooth mice and keyboards, or even wireless kit like Logitech's trackball (which I use and love) you might find this surprising. Those bluetooth gadgets seem to auto-power off, or something equivalent, and however the Logitech works it seems to have no such issues either.

Maybe its the high sample rates on the Razer? Or all that lighting? Anyway, its easy enough to do, so I will just have to get used to putting Mamba on its stand when done.

Final analysis? I'd allow yourself plenty of time for setup and bedding in before planning some gaming with the Mamba, so buy it at least a week before that big frag-fest. In the end a good result, but some issues to be aware of especially on Mac.

Wednesday, September 14, 2011

Bad GL

Developing on linux is annoying sometimes.

All the OpenGL functionality tests failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in
/home/sarasmit/depot/qt5/qtbase/mkspecs/linux-g++.

If you get this error on Ubuntu, it may be due to bad OpenGL packages. To check if the bad GL packages issue is the cause, do:

cd /usr/lib && ls -la libGL*

If you have color turned on in your terminal you might see this:


If so you have bad GL packages, and a broken symlink. The build process cannot find the library because even though its there, the broken symlink is hiding it - hence why its colored red.

Just do (from the same directory /usr/lib) ensuring that the libGL.so.270.41.06 in the command below is the same as whatever your actual library installed:
sudo ln -s -f libGL.so.270.41.06 libGL.so

Then check (with the ls command again) to see if you now have a green link instead of a red one.

Now your builds should work again...