Matt Hackmann

Display Time Code in After Effects with Expressions

Posted On
after effects

Whilst working on my current video project, I came across a need to display the current time code. Expressions are the answer, of course, so I came up with this.

Code: javascript
  1. txt = "";
  2. frames = timeToFrames(t = time + thisComp.displayStartTime, fps = 1.0 / thisComp.frameDuration, isDuration = false);
  3. f = frames % 30;
  4. s = Math.floor(frames / 30);
  5. m = Math.floor(s / 60) % 60; s %= 60;
  6. h = Math.floor(m / 60);
  7. if (f < 10) f = "0" + f;
  8. if (s < 10) s = "0" + s;
  9. if (m < 10) m = "0" + m;
  10. if (h < 10) h = "0" + h;
  11. txt = h + ":" + m + ":" + s + ";" + f;
  12. txt

Simply attach this expression to the Source Text property of a text layer and viola!

The De-evolution of Nintendo Box Asses

Posted On
design nintendo

It can be argued that Nintendo has somewhat ripped off Apple when it comes to design and asthetics. Everything is very simple and clean almost to the point of being sterile (as in the hospital, not the inability to bear children). However, one disturbing trend seems to be their boxes. Not the fronts, mind you, but rather the backs. Join me as I go through a box design from every generation of Nintendo console (save N64) and grade them on design.Read More

I've been killed!

Posted On
square headed


This is how I want to die. To be murdered by my favorite villain from my favorite game would totally make my day... as long as I'm already old or something. Be sure to check out Square Headed. It updates on Thursdays, but is currently updated three days a week while in story arc mode.

On an interesting note, my last name is actually supposed to be pronouced "Hawk-mann".

Building a Web-based Media Player - Part 1

Posted On
media player

For the past month I've been tinkering with Flex and my little Linux server. One of the projects that grew out of this was a web media player with which I could listen to all my tunes wherever there happened to be some scraps of internet. This has been one of the coolest projects I've worked on in some time. It successfully blends nearly all of my programming skills: PHP/MySQL, Javascript, XML, Flex/Actionscript 3.0, and some C++. I'm going to write a series of tutorials walking through what I've done in hopes of bringing this coolness to the masses. I'm going to be fairly verbose covering subjects that any seasoned programmer can pretty much skip over. In the first installment I'm going to cover creating the database and getting song information from the MP3s.Read More

We bring you... dxprog media!

Posted On
web design

After a month of crazy coding and hard work, I unveil to the world dxprog media! dxprog media is, for all intents and purposes, just a front for myself and my work.

Speaking of my work, be sure to check out the brand new portfolio section. It\'s a little sparse now, but I will be filling it out with all my best work over the next few days. I encourage you to re-check out my motion graphics projects there as they are encoded in much higher quality than the YouTube versions (and it\'s the only place you\'ll be able to see the corrected Crayola Commercial) . Also, you get to use my snazzy new video player (written entirely in Flex).

Of course, the blog got a couple needed updates as well. Down at the bottom of the page you\'ll notice page navigation. This is across the board for general viewing, viewing tags, and the archives. Another thing to get the page treatment was the entry comments. There\'s only really one entry that can benefit from this update right now, but I hope to gain some more viewers by shifting my posts more towards industry related topics and some tutorials. Originally I was going to intersperse tweets between the posts but decided ultimately against it.

So, there it is. The site looks more awesome than ever and I\'m hoping to bring some new sweet, juicy content to everybody. So, bookmark the site or add the feed to your favorite RSS reader and prepare for a new era of dxprog!