Tuesday, November 08, 2005

Global Warming - the silicon effect



India is one of the biggest producers of quality programmers in the world scenario. Most of the big names in the field of I.T., such as IBM, Microsoft, Sun Microsystems, and others look forward to the Indian educated and trained I.T. professionals for Software Solutions. You should notice when I say that they look towards India for the Solutions and not the Products. Most of the Indian software companies are involved in providing solutions to the global market but there are none (or may be negligible) who provide software products to the industry. Have you ever heard of an OS, or an Office utility tool (for example, MS – OFFICE) or maybe an Internet tool existing in the market, which is actually developed by a company of Indian origin? I don’t reckon there is any. For those of you who believe that Maya is developed by Indians, it would be quite informative that it is actually developed by Alias-Wavefront, which is not an Indian company.

The actual problem with Indians is that they don’t want to risk their money, time and career and in this way they restrict their absolutely outstanding creative brains. Software Product manufacturing involves considerable risk factor in it but can help you achieve more in many respects. Mr. Yashavant Kanetkar tells us that the international software industry looks at Indian contribution as mediocre since we never do more than providing solutions to them. They believe that Indians are good at grasping, learning and putting together things, but miserably fail at creating something original. So, what I feel is that now it’s the time to put a stop to this belief of the international industry people and prove it to them we can do everything and anything that they can. The next question arises is: Where to start? Now the market contains more than one product in each category, be it Operating System, Office utilities, Multimedia tools, Graphics utilities, Compilers, or any other imaginable software product. The key to success for developing a software product belonging to the above category is that your product should truly revolutionize the picture by overcoming the shortcomings of the previous products in the same category. To achieve this would require a lot of RND and infrastructure. The other alternative is to develop Games - the most sold software product by any company after OS, of course.

Games are more in demand than any other software products in the market. Computer and console games are not restricted to any particular age group of the people and this is what, which makes them so very popular with consumers. Gaming industry has grown to be one of the biggies in the entertainment business in a very short span of time. Continuous progression of the technology improving the speed of the processor chips, availability of faster and cheaper memory chips, and innovative and faster interfacing between hardware accelerator graphics cards (for example, NVIDIA, ATI RADEON) and motherboards / mainboards i.e. Accelerated Graphics Port (AGP) with much higher data transferability (8x) are some of the reasons for this enormous boon in gaming industry. Nowadays, the budget of a 3D game is more than that of a Hollywood movie. Billions and billions of dollars are invested for developing a complete story driven 3D game for consoles and PC’s. The industry will exceed the Hollywood and music industry in next few years and will be the biggest in entertainment world. The major contribution to this is by companies like NVIDIA and ATI Radeon who have transfigured the entire gaming scenario with there high end graphics cards consisting of GPU (Graphics Processing Unit) as NVIDIA calls it or VPU (Virtual Processing Unit) as ATI calls it which are there for heavy mathematical computations carried out to render graphics (detailed explanation in Part III – DirectX) and thus freed the CPU from this task and enhanced the speed and performance of both the machine and the game. As a result, this allowed the developers to concentrate on the look of the game rather than memory, execution time and speed. These cards have made it possible to render the most unique and interesting special effects, which add to the marketability of the gaming software products. Games are always associated with the latest and the best of the technology offered by the electronics industry. The best games in the market today are the best tools to put your PC to an ultimate benchmarking test to experience the unknown abilities of your hardware and installed software. Multiple job opportunities are generated. All the people right from story/script writers to artists/cartoonists/painters to musicians/vocalists to 3D animators/modelers to programmers find their place in the industry. Games find their use at defense and other training camps in the form of simulations. There is no cease to this hysteria and it would grow to fascinate more and more people. What we feel about this entire vogue generated by computer games is due to their unique feature of letting you play the hero, king, captain depending on the genre of the game being action, strategy, sports, etc. You get to do things that you would never do in real life and may be that’s why, all of us are so very excited and thrilled about playing Max Payne, Unreal Tournament, Half Life, Fifa, Cricket, Age of Empire than watching Lord of the Rings trilogy. But this is not the same everywhere. Almost entire world has been engulfed by the gaming fever except India. Gaming still needs a long way to go before reaching the top of the entertainment industry here in India. It has gained little stature in the recent years with the westernization of the market and growing awareness of the computers but there is no marked accomplishment towards gaming frenzy in Indian scenario. One of the major reasons for this can be attributed to the common belief of the Indian mentality that an expensive machine such as the computer is not meant for such trivial applications of playing games. They are not going to digest any bit of it if you are telling them that computer games would strengthen the mental ability of player apart from improving the ability to take decisions quickly before being gunned down by the terrorist and would further help in improving concentration, determination and reasoning power apart from providing the best form of entertainment. Also, the original versions of the games are priced very high thus reducing the affordability of the games and promoting the pirated versions in India, but that is something altogether different.

That was all about PLAYING computer games but DEVELOPING computer games is equally fascinating. The worlds leading name of the Software industry – Bill Gates wrote the tic tac toe game as first ever program of his life at a very minor age. Writing computer games is not everybody’s cup of tea. It requires quite a lot of logic and vision to write a game that can react perfectly to every kind of user it encounters. Not all programmers are accustomed to think about every single kind of user input in advance. Computer games come under the category of Dynamic Simulation in the common architectural frameworks of the System Design, i.e., they model or track the real world objects (for further details, refer to Object Oriented Methodologies by John Rumbaugh and others). Game Programmers are paid high in western countries. However here at India, game programmers are still considered to be a bunch of worthless crap. The most widespread belief of Indian I.T. gurus is that game programming is not actually serious programming. One of the major reasons for this is the approach of desi I.T. companies to provide solutions rather than products. Except for a very rare instance of Mitashi Entertainment (produced – Bhagat Singh Action game) and Padmini Telemedia (produced – Al Quaeda), none other has ever tried their hands at programming / producing games. There have been other decent trials as YODDHA and CHAKRAVYUH that bombed badly. I strongly consider game programming as the ultimate experience for any real adventurous software developer. Game programmers are far more superior (atleast logically) and sane than a gang of frustrated and fatigued database / network programmers. Writing games involves mind-boggling thought process along with industrious creativity and imagination beyond anything. You have to plan everything that’s going to take place in your game, calculate every user move, take care of the silliest of user inputs in the most sarcastic way and give him the feeling that your game is not just a perplexing sequence of ones and zeroes in the memory but something living and breathing like all other beings on earth. Your game should be highly interactive and dynamic to create a lasting impact on the gamer.

This article was written with a purpose to remove wrong perceptions and misnomers about playing and developing computer games and create a general awareness to the growing latest trends in the market. Information Technology is not just restricted to software companies and databases and networks but provides far more opportunities than any other field in engineering right from multimedia, animation and films to games, A.I. and Robotics. Being a student of I.T., you would always have an edge over any other person who belongs to some other field and knows a tool or technology of I.T. but doesn’t understand the true base of computer software.

...time has come to unleash the truth to the world

No comments: