Xbox Live

Now a momentary pause for a short story:

There once was an an xbox.
It played all the games and never locked.
Then before Halo 2 was over, the system keeled over.
And now I am left with my shoes.

So my 360 is finally coming back in about a week. I am very excited. When I first got my 360 in the summer (for Dead Rising) and I did not have it plugged in (I was not getting the wireless unit). In my new pad in Florida though, the tv stand is right next to the router so a connection is not a problem anymore. However, my experience with Live was cut short when shortly after getting connected (about two weeks or so) my 360 crapped out. I sent it away eventually and when it came back happened to be the same day a new patch was released for the 360. After getting the patch installed about 5 minutes after the ups guy left...the system crapped out again. Without getting into the crappy details, I had to send my box back and now the new wait begins. This time it is different though. Over Thanksgiving, Raj showed me what you could do with your friends over xbox live and we discussed about how easy it would be to get some multiplayer on when I got mine back. I started talking to guys in class and they were very excited about having regular matches in Halo 2 / Gears of War over Live. Just the sheer ability to stay connected with people through Live is simply amazing. On top of all that, Viva Pinata reviews/videos are tickling my funny bone so much that I ordered the damn thing off Amazon last night. Hopefully it will be here when my 360 gets back. I don' t think I have ever been this excited since Christmas about 3 years ago (and when I proposed to Laura).

On another note: The 1up Network has entered my life in full force. Being away from family and friends has made me look for something to get attached too. I have found comfort with 1up yours, EGM live, GFW podcast, 1up show and all the editorials by that wacky crew. Pretty much at any given moment in my apt, I'm listening to some form of 1up Network audio.

Progress has been coming along in my work. I've been redoing a lot of my collision algorhithms using my brand spankin new Mesh class. Ah Matrix I love thee.


So its been awhile...and as always...I apologize.

So enough of that...lets get into it.

We are about two weeks into semester three here at Full Sail. Classes are getting much more interesting and the material is starting to become increasingly complicated. I'm still doing well with my pre-school studying and I find myself a tiny itsy-bitsy bit ahead of the curve here. I'll have to keep that up.

Before going into any more technical notes I wanted to take a minute to reflect (if anything just to remind myself) about the importance of family. As thanksgiving break approached, I was slowly being overtaken by a huge warm feeling. This feeling was keeping me positive but I wasn't sure exactly what was causing it. The more I talked to my brothers and parents about coming back home, it hit me that I was homesick. More homesick then I have ever been in my entire life (which I will admit doesn't span that long of a career). When I finally did come home, I honestly did not want to leave. I probably don't tell my family enough how much I love them and that I owe them everything in my life. I will always be nothing without them and I can only hope that my kids will feel that way about the family I help create for them. Just so everyone knows, Laura is included as family :).

So I am back here, far from the people who make my life what it is but I push on cause I know I will be going back to them.

Ah now time for nerdy stuff. MATRIX MATH IS AWESOME. After spending a large amount of time just working with vectors, I dove into Matrix operations and began to start coding. I've set up a pretty decent app to play with all the kinds of transformations that can be done. So far its way better then what I was trying before.

Allright people, I should get to bed before Laura finds out what time it is....

Smashing Blocks

So time for another update.

The second semster of classes are coming to a close on Wednesday. Today in about 2 hours is my Calculus final and tommorow will be my Programming 1 final. I found out yesterday I need a 33 on my programming final to pass the class (so I'm not too worried).

The new semester is exciting. PGR 2 (go guess what that means) supposedly takes ramps up really fast in difficulty and is considered the ultimate weed-out course. I am more then sure that I will be learning new stuff in that class along with truly being challenged. Linear Algebra is also coming up and I am extremly excited about it. I've already been studying vector operations for almost a year and the unlimited use I've found in them is getting me so excited to take a whole course on the subject.

As far as personal work goes, I haven't been sticking to my basics drilling as much as I would've liked. I got pulled back into the Seperating Axis Theorem and a deep yearning to truly understand it. This made me go back and revisit the "spider-man" demo I had created. I started a new project that would approach all my code in a new that allowed for more advanced collision detection and be easier to plug new features into. With my previous code, I implemented "managers" a little to quickly. Keeping away from the mangers for now allows me to keep testing and improving the individual elements before sorting them into a big manager that I would have to refactor every 2 minutes. Small steps. If I have learned anything, it is all about small steps.

On that note: I intend on putting a new demo up but I want to add some more functionality to it before releasing it to ze public.

The class I have been with is about to hit a splitting point. A few of us are getting left to repeat PRG1 again but this is not a "bad" thing. As a friend in my class put it, we are here to meet people but ultimately you are here for yourself. This is so true. If you need to repeat a class to get the material, you should. Who cares in the end that you are not with that starting group. In two years, you need to be qualified to get a job and that has got to be number one on your list. While I will be sad to see some of my friends go a month behind and ultimately lose connection with them, I remind myself of the greater goal of being here. On the other hand there are few guys that will be going on with me that I look forward to getting better at this craft with.

What else have I been up to? Well I've taken some time to play a few different games:

Company of Heroes - so far, freakin awesome
Bully - awesome start and mid but weak end game
Okami - awesome. just awesome.

I also recently got the Fallout series collection ( think I mentioned that already) and completely forgot how freaking hard Fallout 2 is. I really can't reccomend it to beginners since Fallout 1 holds your hand so much more on the way out the door.

On the home front, Laura and I are doing well though being apart is still difficult. We've had several talks on how to handle it and it really boils down to just having faith that we can get through this. In the end, this way will work out better for us and the family we intend to have.

Till next time people....oh ps: SEE STRANGER THEN FICTION.

I Lied

I lied about going back to the basics. I'm gonna work on a nice simple version of Pong instead.

It'll be a good excercise in the basics but I gots to get my oop on.

One thing I have to do this time around is keep in simple. My 2d side scroller is so big and bloated so I am going to take a step back and make a much simpler game. Pong has well established rules and will be a nice challenge to make a complete working version. I'll still be using allegro to handle all my graphics but I am going to be focusing mostly on tightening my design. I've decided to remove my "physics" manager and just merge it into the game objects. This will make one less manager and be a little simpler. The only problem I have now is finding a way to pass the update time interval...but I think I know a way around this (may not be the best way but it will work).

On top of that...I need to take the advice of my fiance a lot more then I do. She was encouraging me to play some games and chill out a bit. Recently I have been finding myself sort of 'overwhelmed' with programming. Its times like this that I have to remind myself why I want to get into this industry. That was answered today when my Fallout Collection came in the mail. OMG...I can't be happier. These are 3 of the best games ever made. I just booted up Fallout 1 this morning and after finally closing down and heading back to the brain was fully energized and ready to start working. Thank god for Laura, she always knows what I need.

Back to the basics

While I've been essentially learning how to program games for about 2 years, most of that time was spent in high-level scripting oriented languages that handled so many of the nitty-gritty details for you.

When I first moved into c++ about 6 months ago, I moved very quickly to do that same type of programming I had done before. I knew how classes worked in other languages and started making and messign with them in c++. While much more followed, I quickly realized there were so many ways that I was simply abusing the living shit out of the language. My code is horribly sloppy and while it does produce some neat output, I am not very proud of what is going on behind it.

With this in mind and my new programming classes starting up at school, I've decided to go "back to the basics." I'm running through my massive c++ book and doing as many excercises as I can. All my free time is going to be devoted to doing as much practice of traditional programming techniques as possible. So this means that production on my 2d game is going to stop as I run drill after drill after drill. Hopefully I can get back to the game in about a month or so.

While the basics bore me, I know that all good programmers have to go through this "hitting the grind stone" phase. Tons of material and problems that are incredibly boring but will honestly pay off in the end.

So all free time for the next 2 months or so is basics, basics, basics. I'm not gonna freakin stop for anything.

Update from the Front

Okay first off, sorry to any family/friends that have been nice enough to check out this blog and are dissapointed that I have not updated. I'm still getting used to the concept of a blog and I'm finding it requires some level of discipline. I'll work on it. I promise :)

So things at school are going fairly well. The firs t semester (reminder: semesters at Full Sail are 1 month long) is wrapping up tommorow. Classes went well though I was very bored with them. The only perk that came from em was getting to know my classmates. Most of these guys are pretty cool and some are very young (first time away from home). The group I was randomly assigned too at the beggining of the semester for my Game Design class kind of look at me as the "experienced guy" after I started showing them some of my projects from college. Its a new feeling for me being the "expereinced guy" and I'm still trying damn hard to remain humble about the whole thing.

Going a little bit further on that topic, I am finding there are many kids here that want to be hotshots. I can tell they are aspiring to be the ass kickers in this program. While this is a great goal, there is a general lack of being humble. Some egos are slowly inflating and I hope that these kids remember modesty counts for a whole hell of a lot when it comes to gaining respect of your peers. My group essentially won a best in class on our preliminary game design and I simply smiled, said thank you, and sat back down. It was a nice feeling to win but I simply didn't let it get to me and inflate my head. Many classmates thanked me and I didn't launch into a whole "Well we really worked hard and were awesome and great". All I did was nod and smile and say "you too."

Allright time to get back to work! Time to work on some basic AI!

Coffee and Blogging

If you take the Blur song coffe and tv...nevermind.

So, I am beggining my second week at Full Sail. So far things are going okay. As I've mentioned before, I'm hankering to get past the academic mumbo-jumbo and get straight to the hapa-nasha of making games. To more mumbo-jumbo more hapa-nasha. Yeah..thats the ticket.

Moving along. I've been expanding my work on my 2d game. I finally got basic forms of raycasting working and I couldn't be happier. From my limited game dev knowledge, Raycasting is the ultimate tool for navigating a 3d enviroment. You can use it to see if a weapon hits a target, find walls, and as a method of vision for AI units. So damn cool.

I will post some more in a bit about what I'm working on specifically for my School Classes. I think some people expressed some interest in that. I'll be honest with you now..its not that interesting.

Day 1 Post Show

So I finished my first day yesterday at Full Sail. I'm going through my morning routine before my second (and I'm actually a little short on time).

The First Day went okay overall. I met a lot of people and I have to say that I am really pleased with the mentality of all the students at the school. Everyone is very friendly and over-the-top willing to get to know each other. I am sure this all comes from everyone wanting to find what class mates would make good team mates in the up coming projects.

So the first class is a English Composition gen ed class "Full Sail Style." This means we are writing a "preliminary game design document" for a game idea we think up with our randomly assigned team. I am not very crazy about this class because I want to get my hands on doing some actual game development work. A lot of kids I met were liking this class because they like the idea of being a designer. I think designers are awesome but I would rather get going on how a game works before trying to "design" my perfect game.

I had a great discussion with two new guys I ment, Shawn and Ian, about prototype development as a method of game design. My argument was that students should focus more on developing a few key feature ideas and work to develop small prototypes that reflected that idea. Focus on those before proceeding to develop a document that is too large or crazy with details. This philosophy comes from my past experience on a student project. Shawn and Ian, being super cool and very nice about the whole thing, disagreed with me. Ian's point was that prototyping would tend to "diminish" designer's ideas and keep them from dreaming. He did agree with me that a promised concept in a game that usually fails is a result of a dream list that was never truly thought out.

My big brother/mentor Raj threw a good point into this whole discussion. According to him, people who believe that through testing of ideas destroys dream of designers is really more afraid of being proven wrong then anything else.

I feel that the development of all creative products (games, websites, ads, etc) are in the end an excercise of creative engineering. There is a science to it all.

Well I am continuing programming my 2d game. I got my tile maps up, basic collision grid and spacial paritioning up and working. Now its time to actually do some freaking input and test!

I'll post some more later hopefully.

Allegro is the things dreams are made of

In my journey to attempt to create a 2d game for the first time, I've used many a tool. I have found my favorite: the Allegro gaming library.

First Pass at Tile-Based rendering - 1 1/2 days

I am going to cry. Seriously.

Month 1 pre-show

So here is the preshow for Month One at Full Sail.

Currently I am in my two "Gen ed" courses. These are Behavorial Science and English Comp. While I'm gonna try to test out of these, they will serve as my "intro" courses to Full Sail.

So I am not too excited about these 2 but it will be a good way to get used to going to school and walking around as well as getting to know some of my fellow students.

Outside of School , I've been trying to keep busy with some pet projects. During the summer, I started to transition from more "scripting" style languaeges (C# primarily) to get into C++ code. So far it has gone very well. The large scripting experience and basic programming knowledge I gathered have helped out immensely.

Since this first month is without getting into code, I've started working on my second big c++ project. The first was a rigid-body simulation using OpenGL for graphics (with GLUT for input and generally making it easy). My second project is going to be something I've always wanted to do: create a 2d side-scrolling game. I am not going to for the BEST solution here, in fact, I find that I learn better if I attempt something new with only the knowledge I currently have. When I get to roadblocks, then I'll start expanding rather then cramming insane amounts of theory into my head and then trying to execute. It is just too hard for me to learn programming that way.

So I do have an idea for the side scroller but I want to stick to my philosophy: design by programming. So my grand idea is shortned to simply: a 2d side scroller where the player can move up, down, left, right. Thats it. My philosophy came from 1 1/2 years of time I spent on a student project at Purdue to develop an educational video game. I pulled these key things out of my experience with the project:

1. Story is the Devil of Student Game projects.
2. Story is not Design.
3. Design never comes before Game Mechanics.
4. Game Mechanics start with Input.
5. Design start with Game Mechanics.

So these rules have forged what I feel "design by programming" stands for. I'll go more into my thoughts later on the subject as a student, but for now I have a player to move in four directions.

Actually I just gave up.....

So this blog actually came about because...well the title says it all.

I had always tried to start and maintain a blog. During college I started working on websites and was enjoying the backend aspect. When mentions of a blog came about I kept trying to build my own but failed over and over again due to horrible design of the actual site and lack of interest. Well that is all behind me now! I gave up and decided to just start a blog and on Blogger since it was linked to my gmail account (and anything linked to google must be on the path to enlightment).

So let me introduce myself for those who don't know me..thought most of you in that regard...I'll just jump to the point.

  • My name is Naveen Nattam. I like games.

  • I went to Purdue University, IN.

  • Got interested in programming for games.

  • I wasn't in CS. Made a decision to go to Full Sail in FL.

  • I got engaged to the lovely Laura Corrine Skowronski.

  • Now I am in FL about to start school.

Okay now that the grammer nightmare is over, I'll go on to what this blog's intention is.

For the most part, I am keeping this as a log of my Full Sail experience for a few people who have asked about it. The side points are to keep a log of my own development experience as a student aspiring to be a game programmer for a development group. The final benefit is to keep my friends and others who are not so much intersted in what I do but my well-being (I hope it is my well-being).

So I'll start posting some more in another and leave this historic memorial post my itself!