Nov 23 2008

Week one at my new studio

Published by mdanks under Games

Week one is done for my new studio.  Spent the week working a game pitch, running phone and ethernet wires, and generally getting everything set up at the office.  It is extremely exciting and scary to not have “the man” telling you what to do every day.  The success of the studio will be a direct result of the work of my co-studio head and I.

And I love taking BART every day.  My commute time is about the same as when I was at EA and Sony, but now I get to read and relax with my iPod.

No responses yet

Nov 14 2008

Last Day at Sony

Published by mdanks under Code, Games

I made the leap.  Today was my last day at Sony.  It has been an amazing time there and I am truly honored to have worked with such talented people.

…but something came up…

I am starting a new game studio in San Francisco.

No responses yet

Oct 26 2008

Pumpkin Carving

Published by mdanks under Food

We spent this afternoon carving pumpkins.  My daughters, of course, picked some insane designs which required intricate carving skills.  I happen to have a fruit and vegetable carving set, which made the task much easier.

The first step was taping the outline onto the pumpkin.  Then, we used a mini-saw to cut out the shape…basically, it just created an outline.  We then removed the paper and started cleaning each of the cuts.

Continue Reading »

No responses yet

Oct 21 2008

SPU Seminar

Published by mdanks under Code, Travel

I am heading off for the next few days to an SPU seminar that I am running.  At work, I spend a lot of my time dealing with the SPUs on the PS3.  In fact, if you are using the libswcache libraries in your game, then you are using code that I wrote.  The SPUs are interesting beasts for multiprocessor work.  They are not as easy as the homogeneous multicore solution for the XBox360, but for raw processor power, not much can beat the SPUs right now.

My work tends to be around making the SPUs easier for developers to use.  Software caching (like libswcache) are ways to deal with non-uniform memory systems and making the architectural complexities more transparent to the end programmer.  I have a lot of experience with C++, so I have been looking at how templates and auto_ptr’s can help.  Libraries like these do not give you the peak performance, but it makes it much easier for the general gameplay programmers to work on the SPUs.  I have found that game development is a constant trade off between easy to use architectures which any generalist programmer can code for and extremely high performance architectures which require a specialist.

No responses yet

Oct 12 2008

Adding Lua

Published by mdanks under Code

I spent the afternoon adding Lua to my code.  It only took about an hour to get the Lua library compiling and running.  The rest of the time was setting up the various hooks to make the scripting language actually functional.  I did not have time to add an interactive parser, that is on my list of things to do.

I have used Lua on previous games and never been that happy with it.  It tends to run slowly and require more memory than you would expect.  Also, most people tend to use it during development by reading in text files and doing on demand parsing.  This scares me since I prefer doing type checking and variable checking at a compile time…one typo and suddenly your run-time can blow up.  In some games, I have made the memory allocator throw an assertion if someone tried to allocate a var, string, etc. that was not seen before.  This seems to stop the typo problem, assuming that the game (and testers) have coverage over every script.

Continue Reading »

No responses yet

Oct 05 2008

Grilled Pizza with Ground Lamb and Goat Cheese

Published by mdanks under Food

I went for a long run and then bike ride this morning, so I was in the mood to be lazy for a while.  I spent the afternoon making fresh pizza dough to cook on the grill tonight.  The finished pizza is a ground lamb with goat cheese, grilled onions, and red bell peppers, covered with a rosemary and garlic infused oil.  The lamb came from Wind Dancer Ranch.  We have been working with Lisa, the farmer, for a few years now and get all of our meat from her.  Our freezer is filled with lamb, pork, turkey, and everything else she sells.  At this point, we rarely buy our meat from the grocery store.  Wind Dancer’s is cheaper, tastier, and better for the environment!  Plus, since my family spent all day on Saturday at the Hoes Down Festival, I was feeling like cooking sustainably.

Continue Reading »

No responses yet

Sep 14 2008

How I play games

Published by mdanks under Games, Travel

backwards

I have noticed an interesting way that I play games these days.  Keep in mind, I have children and interests outside of the games industry.

On my home consoles (which include a PS3, XBox 360, and Wii), I tend to play games which are pick up and play, usually with no story.  This includes Boom Blox, The Last Guy, Eden, and Braid.  Basically, all games which I can play for 15-30 minutes and then turn off the console.  Also, I don’t have to worry about remembering some involved story to get back into the game.

On my portables, I am playing the long, involved story games.  I just finished Crisis Core: Final Fantasy VII and it looks like I’m going to get back to The Legend of Zelda: Phantom Hourglass soon.

The interesting thing to me is this is completely backwards to how people are “supposed” to play games.  My pickup games are on my home system with the big plasma TV, while the long session games are on my portable systems.  It reflects my life these days…I have very little time at home to play games, but when I travel, I’m trapped on an airplane for ten hours at a time.

No responses yet

Aug 13 2008

Multithreaded Task System Arguments

Published by mdanks under Code, Games

I have implemented a task system for my brushing program. In many ways, it emulates a PS3 by creating 6 threads which sleep until told to do something. That “something” is a function which does a task and then exits. There are two issues with this that I am resolving at the moment.

  1. It is hard to debug the tasks when there are hundreds or thousands a frame
  2. I want to emulate the PS3 SPU local store, which means segmenting my memory space

To make each of these easier to deal with, all of the task entry functions take an argument. This argument is a pointer to a ClTaskArg class. Tasks are expected to derive from this class to get their arguments into, and potentially out of, the task function.

Continue Reading »

No responses yet

Aug 12 2008

Scuba in Roatan

Published by mdanks under Outside, Travel


Last week I was in Roatan scuba diving.

Short form:

While the diving was not as good as Curacao, it was a great vacation and a break from the game industry. I had no cell nor email access all week.

Continue Reading »

No responses yet

Aug 01 2008

Roatan

Published by mdanks under Outside, Travel

RoatanHeading off for vacation in Roatan. Scuba diving for 7 days without cell phone nor email.

Bliss.

No responses yet

Next »