Monday, January 4, 2016

Ray Tracing and more into Computer Graphics

Its been a long time since I wrote anything here. Been busy with many projects at work and hobby. Recently been working on a Ray Tracing Rendering Engine for our iOS / Android App "Iyan 3D". Ray Tracing has always been in my list for a very long time and finally got the time for it.

Tuesday, May 20, 2014

iOS Architect Consultant

Are you looking for a Consultant (Part-time)? Here is my resume so you can email me if you have something interesting.

My skills in brief:
1) OpenGL ES / OpenGL Cross platform Rendering/Game Engine
2) Kinect Sensor and 3D Object Detection
3) Linux/Mac OSX device drivers

Languages used:
c, cpp, Python, Obj-c, Java

Am not looking for a full time job. Am just interested in working on something interesting that feeds my hunger for building technology.


Validating Yourself as a Good Game Developer

Do you hate anything other than traditional CPP?
Even after using a lot of new and powerful languages (C#, Java, Python, and whatever), when it comes to game development, do you still have a soft corner for cpp? Don't hesitate to choose our good old cpp over other languages. We decided to use cpp (at Smackall Games) for few reasons. To make our game engine cross-platform, and to take the full power of the system under control.

None of the Game Engines, satisfied you?
With all passionate programmers around, we never felt satisfied with any of the game engines (both open source or commercial). Open Source Engines might have tough to understand licensing systems. And commercial engines do not let you work as a programmer, they are mostly designed for graphics designers. So if you hate using other game engines, you should try to write your own, at least once in your life time as a game developer. It is not a simple task as you might think, but don't hesitate to integrate other popular Rendering engines, Physics Engines or Scripting systems. Which will reduce the time to build your own Engine.

No File format works for you.
This is nothing new for a game developer. None of the file formats available are helpful in all cases. They either take too much space, too much time to load, or store too much information that you don't need. This happened every time we chose a format. We finally ended up writing our own file formats and Import/Export scripts for 3D editors (in our case, Blender). We quickly wrote a export script for Blender, to export Mesh as SGM, Rigged Mesh SGR, Animated Mesh SGA, Physics shapes as SGP and the level setup as SGX. Each format took us around 3 days to complete.

More to come...

Saturday, September 8, 2012

Complex Gesture Recognition using Kinect

Like I said earlier, I was working on some complex gesture recognition system that can recognize numbers. The whole system was built with Embedded systems in mind, so its just c++ and no dependencies. The system can recognize any pre-trained gestures with very good accuracy.

We developed this system at Muckati (

Team: Anjan, Harishankar, Sasikumar

Saturday, July 21, 2012

IrrNaCl - my port of Irrlicht 3d engine to Google NaCl

I've just completed porting my favorite 3d rendering engine to Google Chrome's Native Client. It was a tough learning curve for me from both sides. I was new on both sides, NaCl and Irrlicht. However, as both were on my favorite programming language c++, I felt happy in doing it.

The source code is available here

Tuesday, June 19, 2012

Gesture recognition using Kinect on Embedded system

For those who are still following my depth sensor and skeleton recognition research. I've successfully designed a system that can track users hands (and other parts) with my own program. My initial intention was to build a very minimal micro computer with linux kernal running on it, to do gesture recognition. So, I was not happy in adding MS SDK for kinect or OpenNI as my intention was to build a commercial device.

Now, my program is able to filter Remove Background from Depth data with very minimal CPU usage. The system is still able to run with 30 FPS on a very basic CPU available today. Now, after detecting pointing finger (or hand) I am trying to add a self-learning system to recognize custom gestures.

Hopefully, I'll soon add a video of gesture recognition using a simple a micro computer setup.

Saturday, January 7, 2012

3D Scanner 2.0 - Mac App update

For all those who had trouble in the old version, I guess I've fixed most of it by now. Now we have the next big update here, just uploaded it and waiting for Apple to approve the update. Though, you don't see any extra features in this version, the main intension of this version was to improve the quality of OpenGL rendering, background filtering, allowing user to control the thresholds that were previously hardcoded.

3D Scanner - Mac App Store Link

If you feel this update does not deserve a whole new version number, you need to wait until the next updates that will fill advanced features. Also, keep posting your feature requests, so we know what you expect. :)