Advanced color picker: the old color picker was very simple, it only allowed the user to select a hue. The new one allows the user to customize the colors to the max!.

Higher quality image support: the older version limits the maximum image width (or height) to 512 pixels. You can now choose images up to 1024 pixels.

Added a file picker: I made a mistake when I assumed that all Android users have a file browser installed! To deal with that I implemented a simple file picker (and I enjoyed it) and packaged it with the app. Now my Hex File Picker will be listed with any other file browser available on the phone when the user wants to pick a style from a file.

Improved screen positioning: in this version the hex screen will always be centered in your screen, so hopefully no more empty areas are left.

Issues with some devices:

For some reason some devices couldn’t compile the shaders of the app. No shaders means no app!.
I did modify the shaders for this version and hopefully they will work on those devices too, one problem is that I can’t know if the app is working fine, I can only know that the app is not working well (using ACRA).

So if you have any of those devices please feel free to try the app and tell me of the results:

LG Google Nexus 4 (Android 4.3)

Huawei MediaPad 7 Lite (Android 4.0.3)

Asus Google Nexus 7 (Android 4.3)

Samsung GT-N7000 (Android 2.3.4)

Samsung GT-N7100 (Android 4.1.2)

Samsung GT-I9100 (Android 4.1.2)

HTC One X (Android 4.2.2)

Get it!:

you can download the app freely from your favorite market:

Hexscreen on Google Play

The app is also coming soon on Opera market.That’s it I guess :D, If you have any questions or comments I’ll be happy to answer 🙂 .

I’m thrilled to announce my first app on the Google Play!!. The name is Hexscreen 😀 .

I like computer graphics and I like hexagons so why not combine them together 😀 ?.

Hex screen is a 3D screen made up from hexagons, the cool thing about this screen is that hexagons can be animated to give nice effects, hexagons can be rotated, moved and scaled. The cells can display images or colors of your own choice, It supports transparency and multi screen layers

This slideshow requires JavaScript.

You can check this promo video to see some of the features of the live wallpaper:

My apologies for the low-res recording but I had to sacrifice resolution for frame rate.

Wanna try it? it’s completely free, doesn’t contain ads, and the apk is less than 3MB. I made sure to optimize the app in terms of performance and memory usage.

The live wallpaper works on phones running Android 2.3.3+, works on tablets too :).

The app is also coming soon on Opera market.

It would be nice of you to rate the app, just give it what you think it deserves :). If you need something explained tell me and I’ll be happy to answer.

I still have more ideas for the app but I’m not going to spend more time developing it unless people are interested in it.

If you have anything to discuss please use the comments bellow, I’ll be happy to hear your opinions and answer your questions :).

So you want to make your first Android game or want to make a live wallpaper or just a simple 3D scene?
On Android, games use OpenGL ES 2 for rendering, which means you’ll have to learn it, even if you want to use a game engine it’s always good to know how stuff works on a low level.

By learning OpenGL ES2, you’ll be also learning WebGL since they both use the same set of functions.

OpenGL ES2 is cross-platform which means once you learn the API on a specific platform you will only need to know some platform-specific details to get your game to the other platforms.

Sometime ago after I finished my tutorials for Android offline map app I spent some time adding more features to the simple app, I guess I should share the code since many of those features are expected from any map application.

The post here won’t contain detailed explanation about how each feature is implemented since each feature might require it’s own post. Anyway if you’ve been reading my previous tutorials everything here should be straightforward and easy to understand, consider the source code provided here as some sort of raw data that someone might benefit from 🙂 .

This code is built upon the offline version of the app, so it doesn’t have web tiles support and the mapView cannot be created in xml (these can be changed easily by following the previous two tutorials).

A few weeks ago (during exams period 😛 ) I was playing with spring physics, it turned out to be easy to implement and the results were cool enough for me to write a demo in Android, Microsoft XNA, and Javascript :D.

The thing is that I got a number of comments asking about how to create the mapView in XML instead of creating it in java code, what we’ll achieve here is:

Make the mapView creatable from XML.

Assign a zoom level to the mapView in XML.

Adding a position marker (drawable) to the mapView from XML.

Add ZoomControls to the layout containing the mapView in XML.

Here’s how the final result should look like:

MapApp with ZoomControls

And just a note before you continue reading: you can add the mapView in XML like any other view, one difference though is that you cannot rely on using wrap_content in the view, since there’s nothing to wrap (something like text in a button for example) but this is not end of the world, you can either using fill_parent or use 0dipwithandroid:layout_weight, only then the mapView will play nicely with other views :).

So either use a RelativeLayout and put your mapView and other views in it, or use LinearLayout and supply weight values for your views.

So if you’re still reading this please download the source code (along with the empty database) from MapApp 6 : Web Support since I’ll be building on the code from that tutorial. Just please remember to put the database World.sqlitedb in the folder /mapapp/ on the sdcard.