Thursday, November 1, 2012

Simple and Easy Ray Tracer

This is possibly one of the simplest ray tracer, written not to technically achieve anything, but to understand the basic theory. This code is minimal, written in C, uses just the algorithms needed to trace, very less pointers usage, and no use of any external libraries other than ones which come packaged with Gcc by default. The code implements the following lighting models: ambient, diffuse, specular, hard shadows, reflections and one sided refractions. Please find the download link after a sample output, it is shared with the most relaxed license.




    Download [Zip, 16kb]    

This was done for a one day workshop at BITS Pilani Hyderabad Campus few days ago (for their technical fest ATMOS). The challenge was to teach introduction to computer graphics and the basic theory of ray tracer, in one day, to a wide range of undergraduate students who may not be coming from a computer science background. I hope the students gained something and found it interesting.


Our team: Adi Shayan, Sneha Venkatraman, Yash Agrawal, Shiben Bhattacharjee, Naveen Kumar, Nitish Tripathi

Thursday, July 12, 2012

Ouya, our savior from the cliched console gaming

All you gamers out there who have pretty much stopped playing games because of the plethora of cliched titles that you have been playing, a new hope has just jumped out of nowhere few days ago. I don't want to talk about it's details because the makers have said it in the right most form. Please read here, OUYA: A New Kind of Video Game Console. ... did you read it? Alright cool, let me tell you why this is important to be supported from us gamers.


Give me an honest answer. Aren't you bored of every single major game title that come out on the biggest consoles out there? One game after the other is about the same modern warfare shit. Same hack and slash games with just different characters and a yet another epic *cough bullshit cough* story. Take cover behind a waist height object and shoot. Even the joy of dodging and shooting has completely gone today.

Now the question I asked you above is gonna haunt you, because you will ask how will Ouya change this? You know what, Ouya may not at all. But what I want to say is Ouya will bring a change which us gamers are looking for since 2006, and it is that video games will once again be about gaming. Video games today are all about Sony, Microsoft or Nintendo, and not about awesome game developers and their franchises. The market also tries to do that to you. At E3, GDC etc., the console giants get the biggest stage to have their key note and in general have the biggest audience. In a way, they decide for you, who are the best game developers.

You may ask, how is that a bad thing? A good console maker will try to bring only the best games on their consoles. Which is absolutely right! But what is also right is that the console maker has the upper hand in deciding what is to be played on their system.


Look, as I made it clear, I am not talking about innovative gameplay here. I am not expecting to see Portal type innovative stuff every month on the Ouya. I will end up playing first person shooters only. But what will be awesome is that now the competition will be between game developers and not publishers.

Competition between developers make them try experimental, different or refreshing things if not innovative. Competition between publishers make them force developers to stick to the current formula. You know what I am talking about right? Bungie is fucking bored making Halo since ages, when they so wanna try something new. Wouldn't you be excited to see Bungie's take on a horror adventure game? They might make something kickass! I am not even a fan of Bungie by the way, but I am just trying to not get biased in any form myself. How about Team Ninja making a futurist space Ninja game? Serious Sam with 4 players co-op? How about someone making Mirror's Edge in the right way this time? Ooooh lets play Quake 5 with the joyful meaningless shooting of aliens by dodging bullets and not taking cover like a sissy? Forget about all this awesome happy stuff I just talked about if you wanna stick with how things are right now.

Ouya comes with it's share of problems is what PCWorld says, I have to give it to them, they have good points there. Please read here: Android-Powered Ouya Isn't Without Its Share of Problems. But I still want to defend Ouya because I think PCWorld is over thinking (or under thinking, I don't know man).

That's right, its Android. I got a bit "errr" myself when I read it first. For its maximum reach to all type of app developers, Android comes with its performance issues. I hope Ouya has a good mechanism of having ways for Native code support on their system for heavy video games. I don't know if its possible at first glance, but can I say its not impossible? After all Ouya's hardware in a typical case won't change, so why not some native code support for say, just Ouya-centric games?

Which brings me to their next point. It is correct that at launch, there will be a pile of games and garbage at the same time, made by random good or bad developers all around the world. But then that is where user rating system comes into picture for Ouya. Find reviews at the Ouya game store, ratings, comments, sales at one place. Also there will be many developer who would want to make games for Ouya only, or may be a version exclusive for Ouya. You cannot say no to that. The overwhelming support for Ouya, kind of says developers are ready to develop for gaming and not for Android's holiness.

And finally the strongest point, Piracy! I have really little to say. However every hardware gets hacked, that has never stopped people from buying games and enjoying being a part of the community. This is where it comes down to how Ouya wants to put it. If they can do something like, you cannot be part of the online Ouya community if you are running non-store downloaded or non-registered stuff. I would really like to share my comments and thoughts on games, or share my scores with my friends. Those who don't like to, can happily pirate and live under a rock.

Hey and I am sure we will get to see, in time, how the left half of the controller looks like, I believe I can promise you that.

Woah look at that, how much I have written. Woooh! Lets see what happens, only time will tell. I am supporting Ouya because I am fucking bored of what's going on right now.

Saturday, April 28, 2012

Universal Religion, Nepal, 2012


And with the breath-taking views of Nepal, staying at luxurious Pokhara's Fulbari Resort, smooth organization of the event, with a very beautiful and peaceful crowd in this world, Universal Religion Nepal 2012 was, no doubt, a success. A party at one of the highest stages (~900 meters above sea level) in the world, it was a lucid dream that went by and I kept asking for more. (All pictures that you see forth are taken by my friend who accompanied me to the festival) 
 

Reaching Pokhara in whatever means of transportation you are using, you get to see the earthly tranquil small towns, friendly people, other tourists and of course the pretty local Nepali girls who will make you go nuts when they talk to you with the cutest smile on their face.


My trip to Nepal was for one sole reason, my faith, my religion: music. This is the language everyone understands, everyone goes with it and no one fights over it.


I was a hardcore drum and bass listener until a friend of mine introduced me to progressive house, and another friend pulled me to psy trance. Honestly I like all of the above based on my mood and at the festival I got a good hearing of everything.


The stage setup was in two places. With 140-160 bpm (beats per minute) psy at the primary location and a smaller stage next to the pool with lower bpm music as the secondary location. Stage 2 was playing some really mellow house stuff on day one, and on day two we were blessed with progressive followed by a little drum and bass as well, yay! However for the most, the primary stage was clearly the main attraction with the speakers exploding beats non-stop for 54 hours. Assuming the day's average bpm is 150, with a total of 54 x 60 minutes duration, we were charged with around 500,000 beats. If those speakers had souls, I would feel sorry for them.


The resort guys gave the option to camp around in the greenery similar to some of the out in the forest festivals. We instead took a room but many people, especially from Israel preferred to camp because those guys, now that I have understood, are the party masters.


Everyone leaves you alone, everyone minds their own business, although everyone feels approachable. The crowd was jumpy, happy, cheery, energetic and as beautiful as if hand picked. If such a crowd doesn't bring a smile on your face, and does not make your body move, then I don't know what will.


Nepal is a perfect mix of ethnic culture and western influences with commercialization at a tolerable level. Clearly, locals have welcomed and accepted the new culture, molded it in their own, unlike the idiotic conservative society of Bangalore (where I am from). Talking generally about Nepal, the weather during the summer is hot with mild cool breeze during the day, and cold (not very) during the nights and early mornings. Not to mention the food I ate at any place was as tasty as it would give me mouth goosebumps every time. The quality of food was pure. I can say that because I live in the capital of bad food known as Bangalore. The kind of shit restaurants feed us over here in the name of food has made mosts' stomach go bad. Anyway, great change for a few days for me. The only complaint I had was the locals just wanted to make as much money as possible seeing that we were tourists and assumed rich. We were being charged quite some good money for very small things. However, all's well if it feels worth in the end.


I just can't wait for another festival which fits in my schedule. Do not forget to check out more pictures, this blog post is pretty much useless if you miss out the fantastic pictures taken by my buddy. Find the link below to his album.


Link to the Album