71-Squared: iPhone Game Programming – Tutorial 1

October 16, 2009

I came across a wonderful series of iPhone Game Programming by 71² and it is outstanding. Source code is also available at the official post. For beginners, this is the series you should probably start with. Thanx 71² team.

iPhone Game Programming – Tutorial 1 from Michael Daley on Vimeo.

Happy iPhone Game Programming ;)


TellMyStory 1.0

August 11, 2009

Our application which has been in Apple’s review pool since 27th April 2009 has been approved and is now available at App Store on 9th August 2009. At last it’s accepted and is available for everyone out there.

TellMyStory - Default imageTellMyStory is not an ordinary application. It is a serious application for sharing thoughts and images with friends on the run. This application can be used in almost all domains, e.g. this can be used by a reporter; to take snapshots of an important event, record sounds of those event or add verbal/textual comments and send the slideshow instantly to newspaper/magazine editor. This application can also be used for entertainment purposes; people can share their visits, their feelings, their emotions instantly with their friends. They can go to football match for example, capture snapshots , add crowds noise, add comments and share the football craze with their football fanatic friends…………….these are just basic examples, TellMyStory can be used in almost all aspects of daily life.

I have enjoyed a lot developing it. I have used it many times in couple of wedding functions by taking snapshots, applying Ken Burns, adding background music and by recording different sounds. I was quite successful in surprising other people with this quick compiling of real time images and playing them in a slideshow. I enjoyed it and I hope that everyone will enjoy it in their own ways. The learning curve of this application is hardly 15-30 minutes. When my 14 year brother saw this application, he was very interested, he started taking snapshots and adding music and came to me to ask only one thing which was how do I move/scale the images………..he was asking about how to apply the Ken Burns effect and I showed him the steps and there he was. He starting making shows with different effects and funny sound effects and the rest is history. Our chairperson’s daughter came up with a show which is now added as a default story in the application. This is just to inform everyone that making a story is very easy and interesting.

It took about 3 months for development, about a month for quality assurance and about 2 months for desiging in parallel. The main image also changed with the passage of developement. The one above is the released one, a couple of other Default images are:

TellMyStory - Default1 TellMyStory - Default2

The application TellMyStory can be downloaded from this link: TellMyStory.

Thank you Vahzay iPhone Team for making the dream come true. ;)


New iPhone Application

August 7, 2009

Nowadays I am thinking about a new iPhone application, which might use some iPhone SDK 3.0 features and cocos2d architecture. Thinking, thinking, thinking……………………………………… I would appreciate if anyone might give some input or share their idea, and I might make an application around it. thanx in advance ;)


iTouchBall 1.0

July 1, 2009

Here we go!

We developed a simplest game for iPhone and iPod Touch devices. The game is very easy to learn and master. The game is available at App Store. Please download and give a good rating. This might help my company to get some service oriented work :P :P

It can be downloaded from here.

screenshot1

The life cycle of the development of iTouchBall is as follow:
Our iPhone Application Development team worked on an application for about 4 months and at last it was sent to Apple for review and unfortunately it is still in review process. Our management lost hope for further development in iPhone, but then I came up with a simple game which had a ball bouncing off the walls or your finger. Then we were given another chance by our management to modify the game and get it ready in 2 weeks.

The first idea was to modify the game into a game in which there is a moving ball with higher radius which bounces off the walls and if player touches the ball it divides into 2 and so on, until all balls are eliminated from the screen. In first week, this game was completed. Levels were introduced and in each level the number of divisions increased. Simple graphics were used.

Now when we played the game, it was very monotonous. We  scheduled a meeting with our management and informed them that we need to rethink the game design, level designs and come up with some addictive game but we were not given any extra day. We were pushed to reach the already set deadline. So we modified the game. We restricted the number of divisions, increased the speed in every level. We named the developed game Eliminator and added a functionality of merging together. We developers, ourselves, introduced another game Protector where player will have to protect the ball from hitting the screen walls. After completing the games, we added the score comparison thing, so that every player around the world can see what is the highest score ever made in particular game. In 2 weeks, we were done with the game. Due to lack of interest from our management, we did not even push our graphic designer to come up with any fascinating graphics. He tried his best to come up with the current ones and we appreciated his effort because he is not game graphics designer, he has his expertise in designing graphics for websites which is totally a different domain. Our QA department spent about 3-4 days on the game and then we submitted it to Apple. We got a couple of genuine issues from Apple and we fixed them and resubmitted it. With in a weeks time after last submission, we received an email from Apple that it has been launched.

No hard feelings but we need to be patient in doing everything. It is good to have an application at App Store but we know that we have the capabilities to make 150% times better game than this. There are hell lot of things you can do with a ball moving around the screen. But still, lets see what reviews does this simple game receives. I will be working my brains out to come up with a game which will be more presentable, logical, exciting and addictive than iTouchBall. For the time being, I feel proud that we have atleast something on App Store. Cheers! ;)


Apps Amuck – 31 Days Tutorial of iPhone App Development

June 11, 2009

I came across this great and helpful site AppsAmuck and it contains 31 sample codes for 31 days. A new bee can start iPhone Application Development from here. Nice work by Apps Amuck Team. Keep it up!

Happy iPhone Development ;)


[iPhone] Learning OpenGL ES for iPhone Application development

April 29, 2009

This week, after completing our first application, I was given permission to explore and learn openGL ES for iPhone Application Development. This has been a great week and I have come across various forums and tutorial sites. I am thinking to keep my blog updated with all the steps I am taking in exploring graphics programming in iPhone. So here is the first post. I came across this blog post via iPhoneDevelopmentBits. The post is very resourceful and the first link I visited is iPhone OpenGL ES Series.

This post is for those, who don’t know where to start graphics programming in iPhone. Happy iPhone Coding ;)


The Crisis of Credit

March 19, 2009

I received this video in my group and thought it is worth sharing. It shows how credits can effect the society. Nice work by Jonathan :)


Numberopedia – What’s special about the number ‘x’ ?

June 20, 2007

People are always fascinated by NUMBERS. Numbers are basic elements of mathematics used for counting, measuring, ranking, solving equations and comparing quantities. You can find objects/things all around you which have no identity without numbers e.g.

  • what is the time now?
  • what is the date today?
  • how much did you spent today?
  • how much water do you drink daily?
  • how far is your office from your home?

and many more….. :)

For some ones numbers represent meaningless symbols manipulated according to arbitrary rules, for others numbers carry occult powers and mystic virtues. To see what’s special about the number ‘x’ where x = 0,1,2,3,4,5,6… :) , click here

You will find interesting facts about different numbers. A couple of facts are:

  • The fraction 1/998999 contains Fibonacci numbers, i.e.:
    1/998999=0.000001001002003005008013021034055089
  • Curiosity… An everyday example when 1 + 1 ≠ 2:
    1 litre of water + 1 litre of alcohol = 1.926 liters of liquid
    (Need valid resource for this fact !)
  • Deep thought: “There are 3 kinds of people: those who can count and those who can’t”.
  • On Pi Day (March 14 or 3-14) in 1879, a baby was born in Ulm, Germany to a German couple whose name meant “one stone”. That baby was Albert Einstein!
  • The word ‘four’ has 4 letters and is the smallest honest number. Honest numbers are numbers n that can be described using exactly n letters in standard mathematical English.
  • 1000 + 5 = 1005 (one thousand five) is the smallest natural number whose name contains the five vowels a, e, i, o, u (in any order).
  • The fear of the number 13 is called Triskaidekaphobia. A specific fear of Friday the 13th is called Paraskavedekatriaphobia or Friggatriskaidekaphobia.
  • Select any prime number equal or greater than 5, square it, subtract 1 from that, then the result is always divisible by 24.
  • Any number of the form p2q2 can be divisible by 24 for p and q primes > 3.

Dynamic Ellipse Fitting on blobs in an image

September 13, 2006

Dynamic Ellipse Fitting on blobs in an image means placing an elliptical human model on detected foreground to classify either the foreground contains a human or not. First of all, if the blob size(foreground size) is less than some threshold then it is not a human. If it is a human, then we perform this technique to decide either there are more than one person or not. In short, we use dynamic ellipse fitting for Occlussion Removal.

The technique to place a dynamic ellipse is as follow:

Center of Image —> (Xi,Yi)
Center of blob —–> (Xb,Yb)

Angle for the orientation of the ellipse depends upon the distance from the center and also the location of the blob in an image, therefore

Angle————–> 180 – ((arctan((Yb-Yi)/(Xb-Xi)))*180/Pi)

Equation of the ellipse is:
————————-
x^2/a^2 + y^2/b^2 = 1
————————-
this can be expanded to:
(Xb-Xi)^2/Rx^2 + (Yb-Yi)^2/Ry^2 = 1

=> (Xb-Xi)^2*Ry^2 + (Yb-Yi)^2*Rx^2 = Rx^2*Ry^2

where Rx = Wi/hx, Ry = Hi/hy

Wi = width of the image
Hi = height of the image
hx = ??????? (still not finalized)
hy = ??????? (still not finalized)

distance of the blob from the center of an image -> sqRoot((Yb-Yi)^2 + (Xb-Xi)^2)
this thing will be used to adjust the values of hx and hy. In this way a variable length ellipse will be
placed on the blobs in an image.


Where did the word “Algorithm” come from?

August 14, 2006
The answer is:
MOHAMMAD BIN MUSA AL-KHAWARIZMI (Died 840 A.D.)
Abu Abdullah Mohammad Ibn Musa al-Khawarizmi was born at Khawarizm (Kheva), south of Aral sea. Very little is known about his early life, except for the fact that his parents had migrated to a place south of Baghdad. The exact dates of his birth and death are also not known, but it is established that he flourished under Al- Mamun at Baghdad through 813-833 and probably died around 840 A.D.
Khawarizmi was a mathematician, astronomer and geographer. He was perhaps one of the greatest mathematicians who ever lived, as, in fact, he was the founder of several branches and basic concepts of mathematics. In the words of Phillip Hitti, he influenced mathematical thought to a greater extent than any other mediaeval writer. His work on algebra was outstanding, as he not only initiated the subject in a systematic form but he also developed it to the extent of giving analytical solutions of linear and quadratic equations, which established him as the founder of Algebra. The very name Algebra has been derived from his famous book Al-Jabr wa-al-Muqabilah. His arithmetic synthesised Greek and Hindu knowledge and also contained his own contribution of fundamental importance to mathematics and science. Thus, he explained the use of zero, a numeral of fundamental importance developed by the Arabs. Similarly, he developed the decimal system so that the overall system of numerals, ‘algorithm’ or ‘algorizm’ is named after him. In addition to introducting the Indian system of numerals (now generally known as Arabic numerals), he developed at length several arithmetical procedures, including operations on fractions. It was through his work that the system of numerals was first introduced to Arabs and later to Europe, through its translations in European languages. He developed in detail trigonometric tables containing the sine functions, which were probably extrapolated to tangent functions by Maslama. He also perfected the geometric representation of conic sections and developed the calculus of two errors, which practically led him to the concept of differentiation. He is also reported to have collaborated in the degree measurements ordered by Mamun al-Rashid were aimed at measuring of volume and circumference of the earth.
The development of astronomical tables by him was a significant contribution to the science of astronomy, on which he also wrote a book. The contribution of Khawarizmi to geography is also outstanding, in that not only did he revise Ptolemy’s views on geography, but also corrected them in detail as well as his map of the world. His other contributions include original work related to clocks, sun-dials and astrolabes.
Several of his books were translated into Latin in the early 12th century. In fact, his book on arithmetic, Kitab al-Jam’a wal- Tafreeq bil Hisab al-Hindi, was lost in Arabic but survived in a Latin translation. His book on algebra, Al-Maqala fi Hisab-al Jabr wa-al- Muqabilah, was also translated into Latin in the 12th century, and it was this translation which introduced this new science to the West “completely unknown till then”. He astronomical tables were also translated into European languages and, later, into Chinese. His geography captioned Kitab Surat-al-Ard, together with its maps, was also translated. In addition, he wrote a book on the Jewish calendar Istikhraj Tarikh al-Yahud, and two books on the astrolabe. He also wrote Kitab al-Tarikh and his book on sun-dials was captioned Kitab al-Rukhmat, but both of them have been lost.
The influence of Khawarizmi on the growth of science, in general, and mathematics, astronomy and geography in particular, is well established in history. Several of his books were readily translated into a number of other languages, and, in fact, constituted the university text-books till the 16th century. His approach was systematic and logical, and not only did he bring together the then prevailing knowledge on various branches of science, particularly mathematics, but also enriched it through his original contribution. No doubt he has been held in high repute throughout the centuries since then.