Monday, April 21, 2014

It is all about perspective

First Level - Simple Actions

    I thought I would post an update on what our game is looking like so far.  The game only has a first level and a pretty simple one at that.  The Gingerbread Man (GBM) is now walking to different way points on the map and the towers attack any walkers that enter its attack area.  GBM has been a good sport about this and now reflects the damage caused by each tower.  I have been able to use the few models that I have created, like GBM, to try and get the game basics to perform correctly.  I am pretty sure that I will be replacing all the current towers and models with betters ones in the next month.  For now, it is nice to get some of the basics out of the way.
    An interesting thing about building a game is all the little pieces that you have to build in order to have something that works correctly.  Although I sketch out a overall design and game concept early on, I really don't sweat the details at this stage.  If I really do try to capture all the various tasks to get completed, it can get pretty overwhelming.  It is easier to set some goals for the week and month and then plug away until these tasks are done.  It helps to keep my head down and focused on the task at hand as the project slowly comes together.  It is a matter of perspective.  As long as I can accomplish these goals, then the other things will fall in line in time.  
    Last week is a fine example of working on certain goals and ignoring the complexity of the overall project.  I put together the 'Heads Up Display' or HUD panels to allow information to be always available to the user during the game.  This involved some custom widgets and a few more images, like my bad 'ant skull' at the bottom of the screen.  I was happy to get a skull-like model created, but Rebecca pointed out that it really was lacking some skull features, like a nasal cavity.  It is all about perspective.
    I also worked out a solution for the various screens sizes that the game will run on by using a lot more screen percentage based system.  I created an atomic size or unit to use in creating the correct scale for the objects in the game.  This way the walkers, towers, and even bullets will have the proper size.   Rebecca also pointed out my trees were too small compared to the walkers and the towers, which I had not really noticed.  She was right and I modified the maps to reflect this.  The trees should be taller than the walkers and the towers should be at least close to tree height.  It is all about perspective.
    This week will be more of the same, but with more concentration on the game phases and refining how the towers and walkers will interact.  I have a lot of work to do to get some of the firing and dying effects in the game, but will have to tackle one thing at a time.  I can't get too elaborate in the graphics, but want the game to be visually appealing to the user.  A compromise or two will always have to be made, but the getting the project done in a reasonable time necessary.   I want perfection, the user wants excitement and great graphics, and we don't want this project to eat up the entire Summer.
    It is always about perspective.

Thursday, April 17, 2014

Overcoming Inertia

    It has been a while since I posted an entry.  Last week was Spring Break and I also took that time off to wrangle the family and enjoy the excellent weather.  After a long rainy Winter in the North West, the sunny days are pretty hard to resist.  It seems like everyone is out on the trails or working in the yard to soak up that sunshine.  I am as guilty as my kids in looking forward to having a week off from work and getting to enjoy the change.  I could have squeezed in a blog post during all this time off, but I didn't.   It was a pretty good week despite this avoidance of my duties.
    "Yeah, but what about the week before that?", asked the Crow.  I was busy working on the tower defense game, but could have freed up some time to post.  No excuse, but I had been hitting some pretty good internal goals and just wanted to keep plugging away.   Mainly, it was just putting off the posting until I had one more thing done.  After a few days, the inertia began to build up in my brain. Inertia is not really the correct term, but procrastination just does not quite describe the building resistance to posting.  I guess I get a bit of guilt and allow that to push my thoughts to things other than posting, mainly to avoid performing the "mea culpa" that I am doing right now in the post.  My reluctance to admit that I lowered the blogs priority in my schedule.
    The funny thing about taking time off from work is the feeling that you are missing something, especially as the days off increase.  Since I work out of the house, it is easy to run in and tinker with the code or create a new 3D model for future use.  I managed to not do a lot of this, but the anxiety to get some more goals accomplished really started to build up.  Habits and your conscience can be pretty good motivators.  I don't think I could every really just stop working,  I need something to keep the old brain from getting bored.  Work scratches that itch and I can't think of a hobby that can fill this need other than working with computers.  Such is the life of a programmer.

Sunday, April 6, 2014

Rebecca: Not in the moment

Last week, I planned to visit a customer that requires a ferry ride. In Washington state, ferry crossings  are common transportation options.  It is a nice change from the grid-lock traffic that plagues Seattle, and it provides me some time to collect my thoughts.

On the way to the ferry terminal, I missed my turn and had to approach the terminal from a different direction (in WA, the Dept. of Transportation is very serious about tightly controlling ferry traffic).  The terminal seemed different from my previous trip, but I had only visited this customer, via ferry, once before.  And I had approached the terminal from a different direction (as noted above).  I was feeling lucky because they began loading the ferry right away (no wait for the next ferry).  

On the short crossing of about 30 minutes, I went through my voice mails, checked my email, and reviewed information for my upcoming customer visit.  When I drove off the ferry into town, I was surprised because there were several cute coffee shops and bistros that I did not remember from my last trip.  As a coffee addict, I pay attention to coffee shops.  

Slowly...very slowly, my brain began to question my whereabouts.  The departure ferry terminal was not familiar, and this town where I disembarked was very unfamiliar.  About this time, I noticed a "Welcome to Kingston" sign.  Brain was definitely kicking in, and it began screaming that Kingston was NOT my desired destination.  I TOOK THE WRONG FERRY.   I had gone to the wrong departing ferry terminal, and I was now many miles and a Puget Sound away from my customer's office.  Honestly, my first thoughts were I am losing my mind.  I am either suffering from early on-set dementia, or I am having a nervous break down.  Since I was stone-cold sober and had not taken anything stronger than caffeine for days, a mental break-down was the only explanation.  

I parked my car, confirmed I was in the wrong town because I took the wrong ferry, and I tried to pull myself together.  It was a blessing that there were no negative consequences with my customer (it actually worked better for the customer to change the date).  I got back on the ferry, and I moved on my to next appointment. 

I am not convinced that I have not lost my mind, but I realize that my brain and I have been on the hamster wheel.  Instead of focusing on one thing, I have been going through the litany of the "To Do" list - cheerleading sign-ups, blog for Zenerdgy, clean uniform for Tae Kwon Do, expense report for work, book trip to Dallas, ideas for fun, cheap, kid-friendly activities for Spring Break, call Granny, conference call at 7am tomorrow, and on and on and on.  

As Ben reminds me, don't beat yourself up about a mistake, but answer "What have you learned?"  I  am not sure.  But now I know...if you are not paying attention, you may end up many miles from where you want/need to be.