India in its colors..

The visual world, the world as we see it, is a world populated by colored objects. Typically, we see the world as having a rich tapestry of colors - fields, mountains, oceans, hairstyles, clothing, fruit, plants, animals, buildings, and so on. Colors are important in both identifying objects, not only in locating them in space, but also in re-identifying them. So much of our perception of physical things involves our identifying objects by their appearance, and colors are typically essential to an object's appearance, that any account of visual perception must contain some account of colors.
Over the centuries, colors have been used for signifying meanings in heraldry, given to the months of the year and the seasons, religious symbolism, and for everything from weddings to babies. Color is the most important element of India, from bright colorful clothes to beautiful and creative paintings, pottery and handicrafts. From mouth watering Indian cuisines to the seasons and festivals, it all reflects the distinctive and rich culture and colorful spirit of the people of India. Here in my collection I have tried to have colors, themselves speak of India and its spirit.













Note: The above images have just been edited by me. Thanks and credits to the original photographers for the image.

I feel this collection is incomplete because several aspects of the indian culture and spirit have not been included. I hope to add other images to this collection.
Read more >>

Agent based navigation in a 3D maze

This research project is a combined work of Amulya Khare and Rajul Gupta under the supervision of Asst/P Low Yoke Hean, Malcolm (School of Computer Engineering, Nanyang Technological University). This project was a submission for the Nanyang Research Programme and won a merit award. in the year 2007

Introduction
Civil-military operations such as Search and Rescue (SAR) operations require the rescue team to navigate through unknown terrains and environment. Such operations are aimed at finding people who are lost or injured in urban or remote areas which might be difficult to access. In many cases it may not be feasible to use human rescuers due to the hazardous nature of the environment (e.g. presence of bio-chemical materials or bombs). So such operations require the use of human as well as software controlled robotic agents which may efficiently carry out the required task without much risk to human lives. In operations where large numbers of robots are deployed, these robots have to be controlled by software agents and use different strategies for path-planning to complete the SAR operation quickly and effectively. Such tactics include implementation of different kinds of searches by different robots and co-ordination between them to achieve a common goal. The testing of the efficiency of such robots in different terrains, if done in real world environment, may result in the damage of the robots and may also require resources for the creation of such the test environment. Thus a 3D simulation environment of the terrain can be created to provide a realistic testbed for these software controlled robots. Such an environment is inexpensive and easy to create and provide a fast way to obtain test results. Our project aims at creating a 3D maze as a testbed to demonstrate the efficiency of the different tactics used by these robots in a search and rescue operation of an unknown terrain.

Project Overview
We have used Unreal Tournament (UT), which is a commercial-off-the-shelf (COTS) game system, as a platform to create our 3D maze. UT game engine provides comprehensive tools for the creation of the maze along with advanced visualizations for realistic game play. The UT bots in the maze introduced by JBOT client will be controlled by a Java program that would define its path for the SAR operation in the maze. Three UT bots will be performing three different kinds of searches (Depth-first-search, Breadth-first-search and A*(Star) search) in the same maze simultaneously. The efficiency of these algorithms depends on the map of the terrain and the destination location. By using different maps, the efficiency of the algorithms in different SAR operations can be evaluated.

Project Poster



Click to Enlarge

Research paper
You can view our research paper:
CLICK HERE
Screen shots







Read more >>

TicTacToe Xtreme

This is the classical strategy game of Naughts and Crosses or more popularly known as Tic-Tac-Toe. The game comes with a twist that makes it more enjoyable. Before the game starts, a player has to be chosen among the available options to compete with a smart computer A.I. The game begins with a certain balance in each player's account. Each victory wins you a certain amount from the opponent. Strategic planning is required before each round as there may be tradeoffs. Player going first may have an advantage as he gets to make moves at 5 out of nice places. You may chooses to go first or let your opponent go first. However if you decide to take the advantage you will have to give up certain amount. The one with a better overall strategy who wins all the money from his opponent is the ultimate winner. The game is over when one of the player is bankrupt. The screens for the game are below:


The Home Screen


Choose a Player

The Game Screen


You can download this game for free. Just follow the link below:
Download
Read more >>

BalloonStrike


This game is a first person shooter which involves shooting balloons and scoring with limited resouces like time and ammo. The game involves three stages of difficulty: Easy, Medium and Hard. Each level offers you a different objective and requires different skill and strategy. Top score in each level is stored by the game along with your name. The screenshots for the game are below:

The Home Screen


The Game Screen

You can download this game for free. Just follow the link below:

Download





Read more >>

Is your hard disk running out of space?

“My hard drive is full of crap and my computer is running out of memory space.” This expression has become very common these days. With movies, MP3s, games, softwares, pictures, document and all sorts of password protected and hidden folders, people tend to overload their computers. “Overload their computers!” well why not.. when they have to pay less than 50 cents per GB of hard disk space.

I remember, my Computing tutor in Junior college once told us, that back in 1979 a 5MB drive (yes, five megabytes) cost over a $1000. Most of you can’t imagine how they even manged- maybe just like how the paleolithic man hunted with stone and wooden tools. Today, with rebates you can pick up 250GB internal IDE hard drives for $90 or so. Grab four, and you’ve got yourself a full terabyte for less than $500. Internal 500GB hard drives have recently appeared on the scene, and go for a premium so they’re still about $350-$375 for the internal versions. Presumably, those will be down in the $175-200 range by this time next year when, hopefully, we’ll be seeing companies releasing 750GB and 1 TB internal drives. What comes after the terabyte? There’s the petabyte (1024-TB). Then comes the Exabyte (1024- PB or exactly 1,152,921,504,606,846,976 bytes). Next is the zettabyte followed by the yottabyte. At this rate of growth, beginning with the 1979 5MB drive we have arrived at one terabyte desktop drive in 30 years.

Considering this increase in capacity of 200,000 to 1 and a fall in price of 10 to 1, I reckon, roughly, that by 30 years hence we will be looking at an Exabyte drive selling less than a $100 giving us the capability of storing data equivalent of about 50,000 years of DVD quality video or if you are rich enough to buy five of those you shall be able to store all words ever spoken by human beings till date. And you think you have accumulated enough crap in your hard disk today! Then what will you have to say in years to come? Although I suspect, there will always be those who will still be using their 1TB thumb drive to store their “important” stuff.
Read more >>

The First Click

The idea of game programming struck me when I was talking to a friend about doing something during the holidays. I began researching about programming games using C++. I chose C++ because I was very familiar with most (if not all) aspects of this language. During my research I came across this word “Allegro” a number of times. My next step, as any amateur researcher, was to check for “Allegro” on Wikipedia and what came up was:

http//en.wikipedia.org/wiki/Allegro_library

“Allegro is a free and open source software library for video game development.

The functionality of the library includes support for basic 2D graphics, image manipulation, text output, audio output, midi music, input and timers, as well as additional routines for fixed-point and floating-point matrix arithmetic, Unicode strings, file system access, file manipulation, data files, and (limited, software-only) 3D graphics.”

This description was good enough for me to look for some online site that describes how to download and install allegro to work with my Microsoft Visual C++ Express Edition 2005.

Deviating from the topic let me first talk a bit about Microsoft Visual C++ for those who are hearing it for the first time.

“Microsoft Visual C++ (often abbreviated as MSVC) is a commercial integrated development environment (IDE) product engineered by Microsoft for the C, C++, and C++/CLI programming languages. It has tools for developing and debugging C++ code. The idea of express editions, according to Microsoft, is to provide streamlined, easy-to-use and easy-to-learn IDEs for less serious users, such as hobbyists and students.”

In simple terms, it just provides a platform for you to write your codes, compile them and create executables. Other C++ IDE is DEV C++ which is preferred by other programmers. However I will stick to explaining MSVC since I like its interface, formatting and appearance.

Coming back to Allegro,

After a Google search I found these websites dedicated to Allegro Library.

· http//www.talula.demon.co.uk/allegro/readme.html . This might be helpful to understand more about Allegro and download latest versions and tutorials.

· http//wiki.allegro.cc/. This site contains most information you would need with extensive resources and hyperlinks.

· http//www.allegro.cc/ . This is a forum, which will be really helpful for troubleshooting and learning new stuff.

After going through the various sites I finally found this page which was dedicated to configuring allegro with MSVC 2005.

http//wiki.allegro.cc/index.php?title=Visual_C%2B%2B_Express_2005

I followed the links provided to download the compatible version of allegro and followed the instructions to install it. After some initial troubles with the configuration settings I managed to get allegro working however with a slightly different configuration setting than what was listed:

  1. Select Project / Properties....
  2. Under Configuration Properties / C/C++ / General, change Debug Information Format to Program Database for Edit & Continue (/ZI).
  3. Under Configuration Properties / C/C++ / Optimization, change Optimization to Disabled.
  4. Under Configuration Properties / C/C++ / Code Generation, change Runtime Library to Multi-threaded Debug DLL (/MDd).
  5. Under Configuration Properties / Linker / Input, add alleg.lib to Additional Dependencies.
  6. Under Configuration Properties / Linker / Debugging, change Generate Debug Info to Yes (/DEBUG).
  7. Press OK.

I added alleg.lib to the additional dependencies instead of alld.lib

Then it was time to start learning allegro programming.

The first and most useful tutorial that I used was C++ Game programming at http//www.cppgameprogramming.com/

It covered almost everything that I needed. Then to take a look at the advanced allegro features I directly jumped to the Allegro Manual and documentation which is so well-written that I didn’t require any further tutorials. With this I was on my way with game programming.

Read more >>

This is Amulya Khare's blog cum website. You can know more about him by viewing his profile.

Read about his views and ideas on topics that grab his attention.

Also you can view his work and projects.

Included here are some resources and articles that you might find interesting or helpful.