Photo Cube Link

Photo Cube Link
Photo Cube Version 3.2 now available!

Saturday, December 31, 2011

Well, happy to say I treated myself to a Galaxy Tab 7Plus, the 7" update to the original. With a wireless router thrown in, came to a very reasonable 4200HK$.

Not necessarily convinved about Honeycomb, it seems as I guessed before overly complicated, really I didnt see anything wrong with the usability of Android 2.x, it was only the UI which needed an update. Anyway, its all very smooth, and Photo Cube runs very well indeed, smooth as the proverbial silk.

However, it did throw up some issues, the thumbnails of the various settings for pictures, background and effects are not appearing, and it doesnt seem to be correctly notifying that the settings have changed, so you have to choose a picture and then change something else in order for the picture to get displayed. So more work to do there... to make sure even the existing functionality works...

Thursday, December 29, 2011

Spinning madly, out of control...

Well, it has been a while. So busy with my other project, but in testing that out on other phones discovered that Photo Cube still behaves strangely on with regard to the spinning when you swipe left and right.

On the Go Home Launcher and on the Galaxy S2 Touchwiz launcher, things are not quite right when you pan over the far left or far right of the available home screens, it results in the cube still going into a constant spin. On the Desire HD latest update, the cube doesn't do any extra spin at all when you pan left or right.

Turns out this is due to the way different phones interpret the wallpaper offsets and what they end up sending to the Android WallpaperEngine "onOffsetsChanged". In short, I can no longer rely on the scroll position of the current home screen to work out how much extra to spin the cube when panning left and right. HTC latest Sense 3.0 uses a carousel idea which completely ignores that, so you can't pan your wallpaper at all, you are left with a fixed background. That is frankly, stupid, but it is what it is.

So I have changed the extra horizontal spinning of the cube to be completely controlled by the user touch commands. This gives me great control, and has completely done away with occaisonal situations where the cube suddenly freaks out due to odd numbers being sent to "onOffsetsChanged", and has allowed me to control how much it spins and even give it a nice deceleration. I might even turn it into a Setting.

Other upsides, you can now definitely see the "Back" picture a lot more often, this used to be pretty hard to get to appear, because the extra rotation was linked to the home screen. Now it is controlled by the user, so the appearance of the pictures are a lot more random.

Will just do a bit more testing on my friend's S2 to make sure all is well there, then will be off to the Market!

Monday, November 21, 2011

New Version 1.20

New version 1.20 is live on the Android Market now. 

Just two things new in this version, a fix for a very rare bug when choosing a background colour, and a fix for a more common issue on some 3rd party Home Screen launchers, such as the Go Launcher, where changing device orientation would on occasion cause the cube to "freak out", as one user delightfully put it, spinning madly fast until you swiped the screen to stop it.

After some investigation I really cant see why Go Launcher is causing it to freak out to start with, but at least I can treat the symptom and simply stop the mad spin as soon as it is about to start, before the user will notice anything untoward.

In other news, working hard on my next project, it is coming on so well I really wanted to get that out by the end of the year then I can concentrate back on Photo Cube and finally get to all the new features I have been planning. The new Widget really is a thing of beauty... and the top secret killer feature works wonderfully...

Thursday, October 27, 2011

Photo Cube Version 1.19 Released

Due to the usual Market incompetency, I had to skip some version numbers. Anyway, version 1.19 is on the Market now. It fixes a couple of minor yet annoying issues, and paves the way for some forthcoming goodness.

Firstly, there was an annoying situation where when you double tap on the Wallpaper to launch the Quick Size and Position screen, it would instead bring up the main Photo Cube Settings screen. That is now fixed, it always brings up the Quick Size and Position.

I added a bit of animation to that screen also, the top and bottom control bars now slide in nicely.

More importantly, there had been a number of reports of users who couldnt get the Background Colour Picker to work because they didnt see how to select the final colour. In some cases that was because it was just a bad design, it uses two coloured rectangles showing the old and new colours, which you had to tap on, which was not obvious. In other cases, it was because in Landscape more, those rectangles didnt appear at all, they were hidden off screen.

So now I changed it to use proper OK and Cancel buttons, and made sure they are visible in both Portrait and Landscape mode:

So what is in Development?

I had a nice request for a screenshot capability and being able to upload the image to Facebook. This is now working, it can capture and share the image to Facebook, WhatsApp, Email, MMS, in fact anything on your phone which handles an image. But I need a better interface to be able to launch the capture, so I want to add more features to the Quick Settings, instead of just having Size and Position I want to add options for Screenshot, Frames, Effects and Rotation, all shown as an overlay above the wallpaper so you can see the changes in real time. Working on that at the moment.

After that: 
  • Maybe a new rotation mode, perhaps something more random.
  • Then the long awaited Presets enhancement.
  • Finally the Album mode, where you choose an album and it will automatically show pictures from that directory with no further action required from the user. A bit of clever cropping and maybe face detection will be required for that.
  • The ability to browse a picture in your Gallery or anywhere and then automatically add it to a Photocube side, via a Send To long press command. Very slick..
And of course I am still doing work on the Weather Widget, which is coming on well.. maybe early next year for an initial release.

Friday, September 23, 2011

Photo Cube 1.16 Released

New version finally released. Just a few bug fixes, there was a very annoying issue for some users when the pictures selected didnt cover the entire face of the cubes, just sat in the corner.

I changed the method of selecting and cropping the pictures to that used by the Background Image selector, which is less pretty but a lot more reliable. That seems to have fixed the issue for the users reporting the issue.

I also changed the boring default abstract background to a nice natural scene, a bit more restful on the eyes. 

Then need to do some promo images for launching Photo Cube on the Vodafone App Shop in Europe.

I'm still working hard on the Weather Widget which will be totally unique, literally like nothing else on the market. Watch this space..

Tuesday, August 16, 2011

Sneak peak.. they say, of my forthcoming new app. Still in the early stages yet.  But very happy with the progress...

Yes, its weather. Yes, its a widget. But does it have a killer feature?

Oh yes. Yes, indeed it does.

Tuesday, August 2, 2011

Market Issues Sorted..

So I am very happy to say that the Android Market team responded very quickly to my complaint, and a day or two later the search is working correctly again, and a search for "photo cube" now finds my apps.

Sales have unsurprisingly risen once again, almost to pre-July levels, so things are looking up. I know can stop worrying and concentrate on new features for Photo Cube and my top secret next project, which should be, how you say, a doozy. :o)

Saturday, July 30, 2011

Name Change..

Well, it seems that I was not alone in seeing a drop in sales. Around 4th July weekend, my sales suddenly tanked. From 12-15 a day and a high of 19 on one day, it just dropped to 3 or 4 a day.

I just assumed it was a summer slump, or because of the holiday. Didn't seem like I could do much about it, so I concentrated on adding new features, trying to make it better and working on other apps.

Then I finally found this:

So everyone else is having the same problem, all from around the same time.

And it seems to be tied into Search Terms. In my case, if people are looking for a cube that shows photos or pictures, they are most likely to search for "photo cube". Despite me having that exact text in my description, searching for "photo cube" doesn't bring up my app.

Searching for "photocube", "photo kube" and "photokube" are all fine, and return my app in the listing, but they are all less likely than the simple "photo cube" which doesn't work. So I think what happened is that Google changed the Search algorithm at the start of July, and my app suffered. Everyone else is reporting the same problems. In many cases even searching for the exact name of their app is failing to return results. There is also a significant difference between searching on the Market App and on the Market web portal.

Frankly, the Google Market is laughably poor, and breaks at the slightest opportunity, with little redress for developers. Almost every bug report or comment is ignored or answered with standardised replies that don't respond to the issue concerned.

Just this morning, my app ratings have been halved in the Market, I went from 22 to 10 for no apparent reason. That is just completely shit.

So in an attempt to resolve my search issue I have renamed to Photo Cube Live Wallpaper. This now at least returns my app when I search for "photo cube" on the Market Web, but still returns nothing on the Market App on my phone.

So will see what happens over the next few days.

Google Market, not impressed! 2/10, must try harder!

Monday, July 18, 2011

New Version 1.14

Thanks to a kind customer who emailed me I was able to fix a very annoying yet rare bug, and uploaded version 1.14 last night.

When running Photokube the code draws the background with the OpenGL command glDrawTexiOES, then draws the cube and panels. However on the Android emulator on my pc, the background has always been displayed in front, obscuring the cube and the floating panels, despite me asking it to be drawn behind the kube.

Since it has always appeared correctly on all the phones I have tested, I assumed that it was some sort of bug with the emulator and Open GL. As no one mentioned the problem in the market, and after searching for similar issues on Google I found a few similar complaints about the emulator I came to the conclusion that it was the emulator at fault.

However, Tim emailed me to let me know he had been having the same issue on his phone, so I was forced to revisit it. Thinking about it again, it was really pretty unlikely that if it was an emulator issue, I would only have found a few references to it, it would have been a known issue.

Anyway, more Googling of glDrawTexiOES and z-order depth brought up quite a few people having issues in general, so I was able to narrow it down to Depth Testing in OpenGL, specifically the GL_DEPTH_TEST.

Previously I had depth testing enabled all the time, which seemed sensible, but what seems to fix the issue on the emulator and also work on phones is disabling Depth Testing when drawing the background, then immediately enabling it again before I draw the cube and panels. This doesn't seem logical to me to be honest, I can see why it is needed for drawing the cube, so the panels appear behind the cube, but I don't see why leaving it enabled also doesn't work for the background. Still, now it works for Tim and hopefully any others who had similar issues.

I don't really have the time at the moment but if I get the chance I will research it in more detail so I can really understand why it behaves this way.

Anyway, hope that solves the issue for anyone else. New version on the Market now.

Monday, July 11, 2011

Back from Blighty...

So finished my holiday.. had a nice time in England.

While I was away I released 1.10 and 1.11, to fix some issues with the quick Size and Position screen. Also optimised the memory of the textures used to take advantage of the fact that the Background image is now stored in its own texture, usefully saving 512k memory at runtime.

Just discovered another bug, if you triple tap on the wallpaper then you get the Size and Position screen correctly but the Loading message doesnt get removed, need to fix that. Triple tapping is not that common in general, but if you are playing around with the floating panels, tapping them to make them disappear, it can come up pretty regularly. So will fix that soon, then concentrate a little on another project before starting work on the Album mode and Presets.

Monday, July 4, 2011

Bug fix release 1.10

Discovered several annoying bugs regarding the quick Size and Position screen.

Firstly if you haven't loaded that quick settings screen for a while, it sometimes can take a few seconds to come up after you have double tapped the screen. Hence added a "Loading..." splash screen, to indicate that it has registered your double tap and is on the way. This disappears once the screen is loaded. This should help confusion whether your double tap was effective or not, if you see the loading screen, it was effective. 

Secondly, quite a few bugs surrounding the double tap event itself. If you tap and slide the screen multiple times to change home screen, that could be interpreted as a double tap, which of course we don't want. Also, if your second tap happens to be upon an icon, this will launch that app, so I have to ensure that the second tap doesn't also launch the translucent settings app on top of that newly launched app. I think I got most of them, but there may be another lurking there. 

I wanted to get a new version out though to fix the most annoying sliding screen bug, so 1.10 is on the market as I write this.

Tuesday, June 28, 2011

Photokube 1.9 released!

1.9 is live on the Market!

New features:

Horizontal Positioning
Finer control of Positioning, Size, Rotation Speed and Tilt/Wobble. New range is 0-100.
2.5 times the size of background images, much higher quality.
New quick Size and Position screen, launched from double tapping the Wallpaper.
Quick links to this site and to email Dusk Jockeys.

What's next? Well, a holiday back to England for a week, so not much. After that, here are the next set of planned improvements. The aim is to make this Wallpaper as easy to use as possible.
  • Presets: Save your entire current settings as a preset, so you can have quick access to multiple looks. Maybe even make some default layouts, if the image licensing can be sorted out.
  • More Quick Settings: Want to add Rotation, Special Effect, Frame Style, Floating Panel count to the double tap settings overlay screen. Wouldn't it be nice to click on the Vintage button and see the cube immediately change colour?
  • Shake/Bounce effect. Thanks to David for this idea, if you shake the phone it would be nice if the cube bounced around the screen before coming back to rest in your selected position.
  • Movement: As an alternative to the above, actually have it auomatically bounce around the edges of the screen.
  • Gallery mode: Choose an album folder on your sd card, and the cube will display random photos from that album each time it is visible. Potential issues with cropping, but would be ideal for first time users.
  • Mini-game: Click on the panels to hide them, if you click them all within a certain length of time, the cube rewards you with a little dance or super spin, bounce or something.
Anyway, hope you like the new version. As always, email for comments, questions or help.

Version 1.9 ready

Few more tweaks for the quick positioning screen, ready for release tonight.

First off, the Settings app now promotes the new Size and Position feature, I will use this green text area to show all the new features from now on:

Then the Size and Position screen can only be launched from double tapping the wallpaper, not from the recent task list. It now has a more streamlined look:

 As soon as you start dragging the cube, the info panels disappear so you can see the whole screen and the draggable boundaries appear in red. Stop dragging, and the info panels come back.

Start dragging the edges to resize, and once again the info panels are temporarily hidden, so you can more clearly see what you are doing as you resize the cube. Stop dragging, back they come.

Off to the Market with you!

Monday, June 27, 2011

Cube positioning complete(Redux)

Well, I spoke too soon... not quite complete because I realise just a bit more work and I could put resizing in there as well.

So now you double click on the wallpaper to see the overlay, which just shows an appropriately sized green square. Tap inside the square to move the cube around, and the horizontal and vertical indicators appear to help guide you:

And you can resize the cube directly by dragging on the edges of the square.

Works very nicely indeed. All that remains is to make this quick settings screen look nice when in Landscape mode, and also to account for the slight offset in the cube position when not on the centre home screen, I need to line up the square and guidelines correctly.

Sunday, June 26, 2011

Cube positioning complete!

So, the last idea was the best. Activate the transparent Positioning screen on double tapping the wallpaper itself. Then you are guaranteed to always have the wallpaper in the background, so you can see the widgets.

Also added some guideline crosshairs, so you can see exactly where you are putting it, which helps when the cube is rotating; it is not always easy to see where the centre is. (Also, when you double tap from the Live Wallpaper picker, the cube is shown in the background but no longer updating, I unfortunately have no control over that. So at least the guidelines can help you work in that unusual situation. Ideally I would disable the double tap enitrely in that situation.)

So here it is:

I will still leave the existing settings in there for fine tuning, but maybe put a note in the Settings screen of how to access the Positioning. Bit more testing, and then to the Market for version 1.9!

However (and as usual!) doing this has given me another idea. If I double tap to enable quick positioning, why not double tap to launch a generic Quick Settings screen, with not just Positioning, but access to Effects, Frames, Size etc from different tabs overlaid on the transparent window.

So you could see your cube spinning, hit the different Effect from thumbnails say down the side or along the bottom, and see the cube change immediately. That is probably for a later version though, a bit more work, but definitely do-able.

Update: Added new borders to show the valid draggable area for the cube as below. Just one more bug to fix, then ready.

Saturday, June 25, 2011

More work on cube positioning..

Well I got it working, but there are issues.

So here we have a screenshot of the Positioning screen, which is launched from a regular Setting button in the Photokube Settings app.

When this is clicked, I close the main Settings app, and bring up this special transparent window with overlays for Title and the Checkbox at the bottom. That shows through the actual homescreen, with the existing cube wallpaper. 

Then any clicks or drags on this screen are translated appropriately and passed through to the Settings as if the user had manually made changes to the horizontal and vertical settings themselves, and the wallpaper cube in the background immediately responds.

Works a treat, as if you are dragging the cube yourself, and you can accurately position the cube to fit around or next to other widgets on the screen.

However..  whatever you happen to be looking at when you launch the Settings app will be what you see behind the transparent Positioning window. If you launch it from the homescreen, then great, you see the wallpaper, and the cube. If you launch it from anywhere else, e.g. the app tray, then you see what that as the background instead, which is not that useful.

So I ideally I need to somehow replicate what the Live Wallpaper picker does, and get an image of the real homescreen onto which I can then overlay my own cube. That is better because it shows the actual other widgets on the screen.

Failing that, I guess re-create the Photocube background and show the spinning cube in its entirety within my positioning window. Still will work ok for control, but the user wont be able to see the rest of the homescreen widgets, so will be more trial and error if they are trying to position the cube in relation to a widget, e.g. in the top right corner.

Another idea would be to launch the positioning window directly from the homescreen, via a double click or something. Then I would know it would always be visible through the transparent window... Hmmmm. That sounds like the best approach maybe..

Friday, June 24, 2011

New features completed...

Thats right folks, done the increased sensitivity on the Vertical Position, Cube Size, Rotation Speed and Tilt, they now go from 0-100 as opposed to 0-10.

Also added the Horizontal Position, and a Slide with Background checkbox which disables it when checked.

Finally added the higher quality backgrounds, which looks very nice on the phone. The background images now are almost 2.25 times bigger. See below, click for larger image.

So just about ready to release a new version. But I had a crazy idea about how to improve the positioning, and even size.. wouldn't it be cool if you could see the home screen in the background as you were playing with the settings? Some sort of translucent screen? Or better yet a button which showed your actual home screen and allowed you to place the cube exactly where you wanted, and maybe even resize using pinch to zoom*. Anyway, we will see how that goes the next few days, and if it is not trivial will add it to the next major release.

* Why is pinch to zoom so called? Because you actually pinch to zoom out, not zoom in. Guess there is no obvious name for the opposite action to pinch..

Sunday, June 19, 2011

New features coming..

Will be starting work shortly on some requested features.

First off want to change the granularity of the settings, everything that currently has a range of 0-10 will be changed to 0-100. Naturally any existing settings will be converted proportionally; if you setting was originall 4, it will become 40. That will give users more fine control of sizing, positioning, rotation speed etc.

Next will add feature to position the cube horizontally as well as vertically. Of course, this will interfere with the current horizontal position based on swiping the home screen right and left, so this will have to be an optional setting. Either the position is set manually, or is determined by the current home screen position. This has been requested by some people with tablets, so giving them the extra precision in sizing and positioning should really make the look cube good on a larger screen. For example, it could be shown constantly spinning in the top left corner.

Finally, larger hence better quality background images. Warning, technical info follows... This currently done by OpenGL texture mapping. Under OpenGL ES, all textures have to be powers of 2 in size, so must be 256, 512, 1024, 2048 etc on a side. So currently there is a single 1024*1024 square bitmap that holds all the images, the top 1024*512 holds each 256*256 image for the 6 cube sides (yes with a bit left over!), and the bottom 1024*512 holds the background image. As the aspect ratio for the background is 4:3, this means the maximum background image size that can fit into the bitmap is 683*512. That is just about ok on high res phone screens, but will start to look a bit average on larger screens like tablets when scaled up to the full screen size, particularly in landscape. So the plan is to have an entirely seperate texture for the background, a 1024*1024 block, which will be able to hold a 1024*768 background image, should look a lot better. Just need to check I can allocate the extra memory, and also neatly handle any existing lower res backgrounds. 

Thursday, June 16, 2011

Photokube 1.8 released!

Whats new in this one? The new icon for a start, and new promotional graphics:

And to justify a new version, two cool new special effects, Invert Hue and Invert Colour:

Invert Colour gives the classic photographic negative look, whilst Invert Hue swaps the colours round without swapping the brightness or contrast. Gives a cooler temperature look to the photos..

Tuesday, June 14, 2011

New Photokube Icon

Noticed that I get a lot more sales when Photokube is listed on the front page of, so am pretty sure that people like it if they actually see it. So going to do a bit of a marketing push.

First thing, need to update the icon. The existing cube with Android logos in different colours is cute, and very Androidy, but doesn't actually indicate what the purpose of the Wallpaper, namely to show your own photos. So the new logo shows some typical usage, a picture of a person, a flower and a balloon to indicate people, nature and landscapes. Hopefully if people see this when scrolling through the market they will be more likely to stop and have a look.

Click for a larger image, the 1st is 512x512 in size for promotional purposes, the others are internal sizes used on the phone itself, corresponding to the various screen sizes out there.

Let me know what you think..

Friday, June 10, 2011

Thursday, June 9, 2011

Better Screenshots

Solved the issue of the dodgy OpenGL screen shots. Wrote some code for a special Screenshot mode, when enabled that freezes all movement of cube and panels, so that I can manually rotate the cube to where I want it to be. Tapping the screen randomly positions the floating panels.

That gives a static image that can be captured nicely, voila!

This one is at the native resolution, click for bigger:

Now all I have to do is learn about HTML, so I can do some really simple stuff on this blog like showing the above images side by side...

Wednesday, June 8, 2011

Floating Panels

Floating panels now in Photokube!

From 0-10 panels that show one of the pictures from the sides of the cube, appearing in a random position with random rotation, size and direction.

If you tap on a panel, it spirals into the screen and disappears, only to be regenerated off screen and appear again. Playing around with it gives me another idea for some sort of mini game within the wallpaper, see if you can make them all disappear within a certain time limit. 

But what would be the reward? Hmmm.

The panels look a bit jagged in the screenshot, there is no easy way to smoothly capture a moving OpenGL image from the phone, particularly when it is rotating. It appears as smooth as silk on the actual device, of course.

Bit of testing, then should update on to the market in the next day or so.
If it proves popular I might add mini cubes instead of panels.

First Post!

Here is a promo image of Photokube Live Wallpaper, in all its spinny rotatey glory. Sample images courtesy of photostock.

And here it is in action:

Currently working on my next wallpaper, but will be adding a new feature to Photokube later tonight. Hopefully the update will hit the Market tonight or tomorrow.