Hi! It looks like you are using Internet Explorer. Unfortunately, this website utilizes fringe technology that are not yet supported by Internet Explorer. Try Chrome, Firefox, Opera, or Safari!

On the Topic of: bemyapp

Untitled-2

Tizen Deving: BrickYourPhone3D

1

This past weekend I was invited to participate in a Hackathon sponsored by BeMyApp and Tizen, an open source mobile platform supported by the Linux Foundation, Samsung and Intel. Working with Alex Lu, our hack won the grand prize.

BrickYourPhone3D is essentially a reverse Breakout where instead of destroying blocks, the player creates blocks by adding primary colors. We really wanted to focus on what the platform and the medium is about; in this case: available input sensors, Tizen WebApps, mobility.

3

Each player views one side of a 3D cube playing field. One of the most prominent feature of today’s smartphones is the touchscreen. So to play BrickYourPhone3D, the player would touch anywhere on the screen and move their fingers up and down to move their paddle.

5

The next prominent feature we wanted to focus on is the availability of gyroscopes in most modern smartphones. By tilting the phone up and down, the player can see different angles of the cube and thus be more immersed in the game play. Moreover, by tilting the phone up and down, the player sees different perspective of the cube that changes game play.

4

If the player is viewing from top down, its easier to see where the ball is going to land, but hard to see the back of the cube and it compresses the y-axis. If the player is viewing from the front, z-axis is compressed and it is hard to tell where the ball lands. If the player is viewing from the bottom, all is visible, the controls become confusing.

Branding

2

We did not have a lot of time to spend on making the app look pretty, but we did come up with a short branding. Most of Tizen apps have rounded icon and we wanted to make the game stand out, and so we encompassed a circle (representing Tizen’s circle iconography and BrickYourPhone3d’s ball) inside a colored cube (representing BrickYourPhone3d’s focus on color additions).

Additionally, the name was also chosen to be nerdy and ironic (brick in terms of breakout’s brick, and brick in terms of breaking one’s phone) as tribute to its hackathon origin. And plus who would not want to brick their phone?

Technology

The game is written in Javascript and uses WebGL through Three.js. Using this technology showcases Tizen’s ability to run html5 apps well. The game runs at 50ish frames per second, despite no optimization.

Future

In the future we want to focus on mobility. Though we did not have time to implement the code fully into the app during the hackathon, we outlined our next steps.

Bluetooth and social experience. We want to implement a multiplayer version by assigning each player to the four sides of the cube via bluetooth to create a more social experience.

Mobile and personal. We want to implement a weather API such that the game can change when its played at different times of the day to keep it fresh. For example, colors changing based on current location’s sun location, changing the parameters of the game’s motion via weather status (slippery when it’s raining). Such additions would make playing different every time and even more immersive.

On Tizen

They still have a long way to go. The phone is often very laggy and unresponsive. Even waking the phone is a test of patience and luck. Developing for the platform is pretty great for small apps since it can be developed in html5, css, and javascript, while still having access to the phone’s capability.

We were first given a phone with the 2.1 software and it was unbearable, OpenGL threw out errors, and the phone felt like a phone from 2+ years ago (despite running on Samsung S3). We were then given 2.2 which worked a LOT better, but still had lags. In a few months, 3.0 is supposed to come out. If a jump of .1, did so much, I am excited for 3.0.

Time will tell which platforms that promises so much through web platform will deliver–cough, cough.