Archive for July, 2004 Page 2 of 4



Scripting Fun

So, it’s been a while since my last post. I’ve spent most of the last few days either typing a whole bunch (MEL scripting, as usual) or being a complete vegetable in front of the TV. I just didn’t have any motivation to post anything. But, now I do. :)

While I was doing some research for the Horse Content Pack, I decided to refine and actually finish a relatively simple animation timing utility I had started writing. I had a simple stopwatch timer that I used before to time out motions. I just needed something that could give me more specific timing results, i.e. getting the number of frames between the horse’s footsteps.

dnAnimationTimer.mel was the final result. It’s a very simple MEL script that allows me to time animations and tap out interval keys to get rhythm, timing between keys, lap-times, etc. It’s actualy pretty neat, and it will definitely come in handy for my animation work on the content pack and any future animations I do.

You can download the MEL script from my site. You can also see a video of it in action here.

There was one little snafu with the script though. After I posted a public release on SimplyMaya’s downloads section, Kevin (the site admin) informed me that someone had complained about my script being incredibly similar to his. I checked out the guy’s script, and, sure enough, our scripts did almost exactly the same thing, even with identical output results in the Script Editor. There were some key technical differences, but there were still some amazing similarities.

I contacted Chris Fram (who is the guy who complained and also happens to a be a good artist, btw) and explained to him that I did not know of his script nor did I intentionally copy it. I also pointed out the differences – mine has custom frame rate settings in the window and cross-platform support – and that, because this was MEL, it was just a matter of time before people wrote the same scripts. Chris was very cool about it, and we decided that neither of us was going to change anything. As he put it, “We’ll be like Coke and Pepsi.”

So, all is well on the scripting front again. There was a momentary panic moment where I thought someone was going to accuse me of plagiarism (a very very bad thing for any professional). I’m happy that things turned out ok.

A Mid-Week Adventure

After a long day of working, Mei and I decided to drive out to a park to go for a walk. Our destination was a park next to a dance studio that Mei went to earlier this week. We drove through some pretty shoddy parts of southeast Seattle, through the ritzy side streets of the lake side areas, and some twisting, winding, confusing roads to finally arrive a very nice little park right on the west side of Lake Washington.

The area was really nice. It felt like a place frequented by upper-middle-class folks. Small beaches, swimming areas, boat docks, and plenty of places to walk around. It seemed like a great place for families to hang out. Our visit was short-lived, though, because it started to sprinkle. The moisture actually caught us off guard, because it was incredibly hot the whole day.

So, we started driving north on Lake Washington Blvd to see where it would lead. We drove past some incredibly huge and obviously expensive homes. Those areas made us sick, because we can’t afford to live there. But the drive was quite nice. We twisted around the wooded parts and around some secluded residential areas to end up smack dab on the I-520 bridge heading back towards the Bellevue area.

Since we were in the area, we decided to go explore the Bellevue side of Lake Washington. This area was even more disgusting because it was obviously up-scale and very expensive. Fancy-looking apartments, yacht clubs, high-end cars. Definitely not our cup of tea. Our drive through there lasted maybe 10 minutes, before we jumped back on the freeway.

By then, it was getting close to 9pm, and we were getting hungry. Both of us had a craving for seafood, so we headed back into downtown Seattle. And what better place to have lots of seafood than The Crab Pot on the pier. We wanted seafood and lots of it, so the Pacific Clambake was exactly what we needed. Crab, clams, mussells, shrimp, oysters, andouille sausage, potatoes, and corn covered our table. We were cracking crab legs, shelling shrimp, tossing clamshells, and making a big ol’ mess as we chowed down on the mini-feast.

An hour and $55 later, we were very full and the only things left on the table were 4 slices of potatos and empty shellfish carcasses. Everything was decimated. We had such a fun time tearing food apart and eating with nothing but our hands and a couple of mallets. I even gave up on the complementary bib – it didn’t survive the first 5 minutes of the meal.

So now, we’re back at home, hanging out, and recovering from our impromptu adventure. It felt like we just had a mini-vacation, exploring new areas and treating ourselves to a fun meal. Tomorrow, it’s back to work once again. I feel like I’m ready to get back into production mode and get a lot of work done.

However, I think I’ve had enough shellfish for the next month. No more crab….

A Bit of Scripting and Troubleshooting

After a couple of week off from anything 3D-related, I got back into production mode yesterday wtih some MEL scripting work and a bit of troubleshooting in Max.

Maya2DTS

Clark Fagot of BraveTree Productions sent me the latest build of the Maya2DTS exporter last week, and I finally got a chance to test it out yesterday. Lots of much-needed new features and bug fixes made it into this release. Double-sided materials, proper usage of the material transparency attributes, visibility animations, and no more multi-material crashes. All we need now is a Mac version of the exporter.

So, of course, with the newest build of the exporter, I needed to update my dtsUtility MEL script. I added support for the new options and even threw in some new features to make working with DTS shapes a little easier. This newest version of dtsUtility is becoming quite the production tool (if I may say so myself :P ).

dtsUtility is actually getting big enough that I have to think about how to manage the layout of the UI. There are a lot of functions and buttons to work with. The script itself is pretty long – just over 2300 lines long, formatted to be human-readable. It has a very long list of global and local procedures. It’s simply getting too big to fit into a single floating window.

So, to keep things less cluttered, I started to implement menu items in the window. The main UI now only has buttons for the most frequently-used functions, while the menu contains all possible functions. I’m sure someone is going to complain that one of their favorite buttons is now in a menu, but you can’t please everyone. I think it’s working very nicely now. We’ll see what the mass majority thinks.

Horse Content Pack

I started doing some tests for the horse content pack today. There are some software version disparities between my setup and Robert’s, so I wanted to make sure things would mostly work ok. I initially ran into some problems with the Multires detail levels from Max, but a quite setting change in the modifier cleared up those issues. Now, all I have to work out is the odd orientation of the mount points.

I also want to figure out if I can migrate the rig from Character Studio to standard Max bones without too much hassle. Robert originally rigged the horse using Character Studio 3, but I have Character Studio 4 on my machine. The CStudio3 biped loads just fine, but there are some weird transform export glitches (i.e. the mount points are oriented oddly). The CStudio4 biped doesn’t even export correctly at all.

So, I’d like to migrate to standard bones. That will remove the reliance on Character Studio (very handy for those who don’t have it and/or don’t want to use it). It will also make it much easier to customize the rig for horse movements. And, I can move the character to Maya more easily. I think having Max and Maya source files will be quite neat for the content pack.

The Fun Is Just Beginning

The workload is starting to build up again, and I’m excited about working on these projects. Between MEL scripting, animating a horse, and developing a Torque workflow between Max and Maya, I should keep fairly busy.

A Weekend Full of Fun and Festivities

Yesterday was my good buddy Matt’s 29th birthday. To celebrate, a bunch of us had a little surprise party for him over at Marc and Stacie’s house in Bellevue. Beer and BBQ was the food of the night. Mei and I prepared slices of seasoned beef for appetizers and chicken shishkabobs for the main meal. There were also burgers and hotdogs from Costco. Mei’s beef was a hit — not a single slice was left — and my kabobs went over well, too. By the time the cake came out, everyone was pretty stuffed.

Naturally, when a bunch of gaming geeks get together, games will be played. And once again, it was Halo. Like last time, the players were Scott, Janet, Matt, and myself. Also like the last time, Janet and I joined up for teamplay. The difference this time was we played multiplayer mode on a 60″ HDTV. It was absolutely sick. Each person’s quarter of the screen was like a normal TV. The image was unbelievably crisp and clear. I definitely need to get myself an HDTV at some point. Those are way too cool.

Today was just as fun as yesterday. To take advantage of the beautiful weather, Mei and I headed out to Gene Coulon Beach Park for the afternoon. We had fun walking around, being goofy, taking pictures, and enjoying the sunshine. I got several pics of Mei “flying” around in her Superman t-shirt and posing with the statues in the park. I even got a short movie clip of Mei attempting to spin around on the boardwalk. It’s a good thing there were guardrails. She might have fallen in the water otherwise. ;)

After we came home, we took a littel break then went outside again and played some badminton in our parking lot. Well, we didn’t really play much. We just whacked the birdie back and forth for a while until we got tired. It was quite fun. My eye-hand coordination is way off, though. It’s been far too long since I’ve played any regular sport. I think the last time I touched a racket was well over a year ago. A bit more practice and should be able to actually hit the birdie most of the time instead swinging at air.

Tomorrow, it’s back to being productive again. I’m going to be starting on some rigging and animation work for a new content pack through BraveTree Productions. I’m teaming up with Robert Brower on his Horse Content Pack to provide a playable, ridable horse in the Torque Game Engine. The horse actually works right now; the animations just need a bit of work. At the recommendation of Joe Maruschak, Robert contacted me a couple of weeks ago and asked if I’d be interested in helping out on it. I played the demo for a bit and was convinced almost immediately.

So, I’m going to be working on a series of horse animations. I’ll be doing the full range from canter to trot to full gallop to rearing and idling. It should be a lot of fun and a nice change from the all of the dying animations I did over the last couple of months.