Using ADB through WIFI for Android Development

Most of the time, I use emulator for android development. But, using emulator can eat my memory and slowing down my development. Doesn’t help that the fact that Android Studio also take most of my desktop resource.

Real device deployment is way to go. But, sometimes dealing with USB cable is not pleasant experience. So, the solution is using WiFi to connect with my device.

Continue reading Using ADB through WIFI for Android Development

Where Are My Pets?

Description

Where Are My Pets? is a logic puzzle game about finding the location of your pets and other objects. Each room has several possible objects and you have to decide which objects are actually in that room. You will be given some clues that show the relation between two objects.

Platform : HTML5

Released : 2018

Role

I came up with the idea from an old game, Inspector Parker. I made this game with a friend. I did all code and he did the art & assets.

Technology

  • Openfl (Haxe)

She and the Light Bearer

Description

She and the Light Bearer is a point and click adventure game, a poem, a fairy tale. Take a journey inside a vibrantly colored forest, meet silly creatures, listen to serene folk music, and discover somber secrets.

Platform : Steam

Released : 2019

Role

I worked as a contractor programmer on Mojiken Studio. Game is made on Unity3D. Even though the game is using Fungus, the game is not 100% visual novel. I made some mini games & its integration to Fungus system. Worked for 2 years on this project.

Technology

  • Unity3D (Game engine with C#)
  • Fungus (Unity Framework for Visual Novel aspect of the game)

Bolderline – Brick Matching Game

Description

Bolderline is a brand new minimalist puzzle game with colorful blocks that will challenge your brain.

Your goal is to destroy the blocks in the top left area using bricks on the bottom side. You must arrange the bricks with the same color to match the shape of the block and then connect them to destroy it!

Platform : Android, HTML5

Released : 2018

Role

I programmed a whole game from gameplay, UI, testing, level design, and integration to google play & kongregate.

I used Urho3D as game engine with angelscript as gameplay programming language & C/C++ as engine programming language.

I also integrated android version to Google Play Service with Android Studio using mixed code from C & Java(JNI).

Technology

  • Urho3D (Game Engine with Angelscript & C/C++)
  • Android Studio (Android Integration with Java & C)
  • HTML5 with Emscripten (C++ & Javascript)

Snap vector direction to nearest axis

I have this case when I need to get my character direction is snapped to the nearest axis. Kinda look like this.

My solution is to find the largest axis absolute value of axis. Then, change the largest one to 1 and the others 2 with 0. Change largest axis sign with its original sign.

Example, we have Vector3(-0.5f, 0.1f, 0). The snapped direction is Vector3(-1,0,0).

Vector3 SnappedToNearestAxis(Vector3 direction){
    float x = Abs(direction.x);
    float y = Abs(direction.y);
    float z = Abs(direction.z);
    if (x > y && x > z){
        return Vector3(Sign(direction.x),0,0);
    } else if (y > x && y > z){
        return Vector3(0,Sign(direction.y),0);
    } else {
        return Vector3(0,0,Sign(direction.z));
    }
}