Category: Mobile

Eddystone Bluetooth Beacon with Arduino 101

Here’s an open source Arduino program that allows a Arduino/Genuino 101 to act as an Eddystone Beacon, sending URL or URI information to nearby devices.
GitHub: GitHub. Details below.

Read the full article »

Space Junk – Experimental Mobile Physics Game

Space Junk is the latest in my small anthology of experimental 2d spaceship games all using a similar 2-button input mechanic.

Sample gameplay video:

Space Junk is a prototype and works on both Android and iOS platforms. It is available as and Android APK file here: Space Junk, though it is not polished-enough to be released in the Google Play store. Apple restricts non-store distribution so although it works on my Apple test device, I have not made a playable version for distribution for Apple devices.

The player sees a top-down perspective of a spaceship and 2 buttons on screen. Each button fires one of the thrusters at the rear of the ship. Like each paddle of a canoe the momentum from each thruster adds forward momentum and also turns the spaceship. Accurate steering is difficult. This dual-thrust control scheme is the feature of the game that makes it unique. Read the full article »

Candy Spinner — Mobile App

Candy Spinner is a spiral pinwheel toy — Candy for your brain & fun for all ages!

Candy Spinner is available for free on Android and iOS at the links below — Give it a whirl!

Preview Candy Spinner in this sample video:
Candy Spinner Video

Get it on Google Play

Spin 17 trippy, colorful spiral wheels!

— Vibrant color wheels create colorful mesmerizing patterns as you spin them at different speeds. They even appear to stop and spin the opposite direction as they change speed.
— 1 Vertigo Vortex Spiral. Stare at the center of this wheel for 30 seconds then look away and you’ll experience several seconds of loopy vision distortion.
— 1 Seashell
— 3 Animations of animals and humans running, jumping, dancing…

Something for everyone! Enjoy art reminiscent of Marcel Duchamp’s RotoReliefs,
Zoopraxiscope animations from Eadweard Muybridge, Logarithmic images from the natural world, a Mandelbrot fractal, etc.
Read the full article »

Grey Shaders — mobile app

GreyShaders is a mobile application/tool available on the Google and Apple App Stores. It is a demo of several Greyscale Conversion Shaders applied to a test image.

Get it on Google Play

Comments are welcome! Share references and knowledge about color space conversion in the comments section below and I’ll continue to expand this post with relevant updates at the bottom of this post. Enjoy the app!

Humans sense pure Green as brighter than pure Red, and Red is sensed as brighter than Blue. Therefore when we create a greyscale image based on a source color image we derive most of the brightness from the Green channel of the source image, followed by the Red channel, and finally the Blue channel contributes the least to the brightness of the converted image.

This weighted-conversion from color to greyscale can be done using several algorithms that approximate the perceived brightnesses of colors. Some algorithms do a better job of selecting the appropriate greyscale tone to represent the colors in the original image.

The Grey Shader app demonstrates several popular conversion algorithms. Users can toggle between the original full-color image and each shader-modified greyscale version. This allows optimal A/B comparison. More info about the Grey Shader app and each of the GLSL shaders it uses is below. Read the full article »

Bare-Bones Shader Example in Cocos2d-x v.3.2

This is a bare-bones example of a shader in Cocos2d-x v.3.2. It swaps the color channels of the texture image: The Blue channel is drawn in the Red channel, Green in Blue, and Red in Green. See the results here: BasicShaderScreenshot.jpg
Read the full article »

Accessing Application Descriptor XML on a Mobile Device

When publishing a mobile application with Adobe AIR, it’s possible to access the information in your application’s application descriptor xml file at runtime on a mobile device. Below is an example of accessing the versionNumber and renderMode from the application descriptor.
Read the full article »

Mixing Stage3D with Display List — Performance Test

A demo was recently released by Adobe (Thibault Imbert, Blog Post). It features an optimized use of Stage3D. By grouping assets that use the same texture, the number of drawTriangles calls is minimized. Adobe wrapped up this principle in a little framework (called GPUSprite) based on a metaphor of a stage with layers of content containing sprites.

The framework is clever and is a great starting point for understanding Stage3D optimization. I was surprised to see that a framerate measurement layer was placed over the top of the Stage3D content in a traditional Display List layer. It was my understanding that any Display List content over Stage3D would have a significant performance impact. To test this, I modified the sample to display the framerate in a new Stage3D layer and ditched the Display List (actually, you can toggle between the 2 views). Read the full article »

Screen Captures with 3 Mobile Device Types

Over-The-Shoulder Quick Tip

Here’s how to capture a screenshot of various mobile devices while they are running:

Press-and-hold the home button then while still holding the home button down press-and-release the sleep button. The screen will flash white and you’ll hear a snapshot sound. Tested on iPhone 3GS and iPad v1.

Only solution is with a connected computer. Use the Android SDK softwware while the device is attached to your computer. Tested on Google Nexus One.

BlackBerry PlayBook:
Press the Volume Up and Volume Down buttons at the same time.

To Kill or Pause an iOS App (when it’s Deactivated)

When an app is deactivated on iOS you can kill it instead of allowing it to continue running in the background (background running is the default behavior). Use the UIApplicationExitsOnSuspend property in the application configuration XML file:
Adobe doc*

* please note the revised syntax and description from Holly Schinksy:
<true/> Read the full article »

AIR 2.7 SDK Phantom Update (now with iOS fullscreen/gpu)

iOS developers trying to use the AIR 2.7 SDK have noticed that they’re unable to publish with the following combination of features: GPU/Fullscreen/Landscape mode. Adobe has updated the AIR 2.7 SDK release to fix the problem (users confirm it was fixed for iOS only), but there has not been an announcement about it nor is there any date on the AIR download page to suggest that the SDK has been updated. Get it here: Read the full article »