Sunday, January 22, 2012

KF Simple Benchmark v0.5

(Android Market link)

So, I was reading reviews of some Android phones late last night and noticed that a lot of places are still testing OpenGL performance with NeoCore.  It's old enough that it basically runs at 60fps on every device out there, and is actually OpenGL 1.1 based besides.  It seems like it's kind of past its prime.

As we have a lot of OpenGL using wallpapers, I figured I'd take a stab at putting together a simple benchmark program using some of the same materials.  This flew together pretty fast once I started going with it, it's definitely not really finished yet but it works and delivers logical results.  I figured I'd get it out there and see if anybody's interested in using it.

So, you'll see there are three tests it runs, then averages the results.  The logic I went with was to try to stress something different with each test.  Here's what each one does:

The Bamboo test leans very heavily on geometry and vertex shader performance.  It renders 75 models, each of which is about 2000 vertices.  The vertex shader uses sin/cos to bend the stalks based on the vertex's Z height, then calculates a texture coordinate based on a light vector.  They're rendered front to back with depth buffering using an interleaved model, with a very simple pixel shader that does one texture sample.

The Wavescape test leans very heavily on fillrate and texture samples.  The geometry here amounts to maybe a thousand vertices, but the post-processing requires two levels of full-screen render to texture, with the light ray trails doing 12 texture samples to create the smooth blur effect.  Screen resolution vs GPU speed makes a huge difference here.

Finally, the Galactic Core test stresses CPU and the driver's handling of draw calls.  Primarily, it's a particle system consisting of 1024 particles orbiting a center point.  Each particle spins based on its distance from the center, and each particle is its own small model, resulting in a very large number of draw calls and uniform updates.

I had a good time putting this together, and will hopefully have some time to nurture it into a more proper product given some time.  Meanwhile, hopefully some folks will get use out of it.

I tested it on several devices, here are some of the averages:

Galaxy Nexus: 13.59 & 93 frames
Incredible 2: 26.138 & 183 frames
Motorola Xoom: 20.492 & 196 frames
Motorola Droid3: 23.97 & 163 frames

I feel a bit sorry for the Nexus, that screen resolution is more than its GPU can really handle filling.  It does rate the highest of any of these on the Bamboo test though.

Saturday, January 21, 2012

Flags of Oceania Live Wallpaper v1.68

  - Update: Updated several flags to properly follow display protocol
  - New Feature:  Added Aboriginal flag

The main thing here was to follow proper display rules.  Much like the US flag, the Australian flag (and its states, and New Zealand, and Fiji it looks like...) expect the corner field to be in the upper-left when displayed vertically against a wall.  That's the situation this wallpaper operates under, so this update brings us into proper alignment there.  That was a stupid mistake, sorry about that folks.

In addition, we added the Australian Aboriginal flag in this update.  According to Wikipedia it does have some official status.  A comment brought this to our attention, and we're happy to get it in the list.

Friday, January 20, 2012

Flags of Oceania Live Wallpaper

(Android Market link)

Australia Day is coming up any time now, so it seemed appropriate to finally get them represented in our Flags lineup!  Flags of Oceania contains a bunch of flags from all around the Australia/oceania region of the world, including all the Australian states!

Hopefully that helps some Aussies out there show their colors!  :)

Current flags include:

American Samoa
Australia
  - Australian Capital Territory
  - New South Wales
  - Northern Territory
  - Queensland
  - South Australia
  - Tasmania
  - Victoria
  - Western Australia
  - Australian Aboriginal
Cook Islands
Fiji
French Polynesia
Guam
Kiribati
Marshall Islands
Federated States of Micronesia
Nauru
New Caledonia Kanak
New Caledonia French
New Zealand
Northern Mariana Islands
Palau
Papua New Guinea
Samoa
Solomon Islands
Tonga
Tuvalu
Vanuatu
Wallis and Futuna

Thursday, January 19, 2012

PowerVR Chipsets and Non Power-of-Two Textures

If you're trying to use non power-of-two textures on a PowerVR based device, and you're confused about why it refuses to render them half the time, there is indeed logic behind it.  PowerVRs will only render an NPOT texture if you don't have tiling enabled.  Break out CLAMP_TO_EDGE and all will be well.

We'd primarily been testing on a Tegra at the time this came up, and it took a while before we realized what was going on.  Hopefully this note saves somebody some headache in the future!

Monday, January 16, 2012

Flags of South America v1.7

  - New Feature: Caribbean nations!

This is primarily a content update -- adding all the countries we could find in the Caribbean area to the list.  Beyond that, nothing earth shaking.  :)

Sunday, January 8, 2012

Galactic Core v2.2

  - New Feature: "Blue" theme!

This update adds a new set of art, bringing our total number of themes to five!  This new one is a strongly colored blue swirl with a big cluster of stars in the center.  :)

Saturday, January 7, 2012

Flags of South America Live Wallpaper

(Android Market link)

We've over time gotten a lot of requests to add flags from other regions to either EU Flags or NA flags, but kind of wanted to avoid making things too bloated.  Still, it's no good leaving people disappointed, so we've gone ahead and put together a full package covering all of Central and South America!  Like our other flags products, this contains a selection of attractive backgrounds, multiple flag rendering styles, and all the nations of the area.

There's likely more to come (we may add the Caribbean to this list), but for now here's all the included countries.  Enjoy!

Argentina
Belize
Bolivia
Brazil
Chile
Colombia
Costa Rica
Ecuador
El Salvador
Falkland Islands
French Guiana
Guatemala
Guyana
Honduras
Nicaragua
Panama
Paraguay
Peru
South Georgia
Suriname
Uruguay
Venezuela