December 18th, 2007
AC3D ships with a Milkshape ASCII exporter, but it only exports the geometry and doesn’t export the animation rig. This plug-in supplements the existing exporter by adding an alternate export option “Milkshape ASCII (With Skeleton)”. This allows you to export to Milkshape ASCII format with the skeleton and materials intact.
Download the plugin. (Requires Windows XP, AC3D 6.2 or above.)

Tags: 3d file formats, ac3d, cg, cgi, exporter, graphics programming, milkshape ascii, plug-in
Posted in General, Tools and Plugins | Comments Off on AC3D Plugin: Milkshape ASCII Exporter
December 14th, 2007
From Reuters:
Instead of jetting over to Bali for climate talks, Edward Markey (a Democrat from Massachusetts) will use a 3-D animated version of himself to address the conference at 9.30 am on Wednesday Bali time. It is estimated Markey will save 5.36 tonnes of carbon dioxide emissions by doing this.
Watch the speech or the Q&A.
Tags: bali, carbon dioxide, carbon emissions, climate change, ecology, edward markey, election, second life, virtual worlds
Posted in General, Second Life | Comments Off on Practical Use of Virtual Worlds
December 13th, 2007
Believe-it-or-not, “w00t” is Merriam-Webster’s word of the year. For those of you not familiar with the term–I’m not sure who, as I’d think anyone reading this blog probably uses “woot” as part of their daily vernacular–it’s an expression of glee or triumph commonly used by gamers.
i.e.:
“W00t! We totally pwnd those n00bs.”
“Steak for dinner? W00t!”
A bit of gamer culture making it as word of the year? Well, I guess there’s only one thing I can say to that: w00t!
Tags: dictionary, grammer, Merriam-Webster, news, video games, w00t, woot, word, woy
Posted in General, Totally Off-Topic | Comments Off on Merriam-Webster Word of the Year: W00t!
December 12th, 2007
- Consistency breeds ease of use. Even if your buttons do some weird thing, as long as they all do the same weird thing users will eventually figure it out. Make the buttons each behave differently, however, and the user is lost forever.
- Sort data the way it is most likely to be used. The logical sort order for a date is chronological, not alphabetical.
- When in doubt, the default option should be the least destructive \ most undoable choice.
- If you have to write an explanation of your code, never assume that the reader has read the same papers you have, unless you told them what else to read–and where to find it–first.
- Wrong code comments are worse than no code comments.
- “Copy and paste” errors happen to everyone. Be on the look out for them.
- If a bug disappears in debug mode, 90% of the time it will be one of two things: 1) you are overflowing memory or 2) you have a thread race condition. At least two thirds of the time, it will be a memory overflow. It is extremely unlikely it is problem with the compiler.
- Releasing your program compiled in “debug mode” is not an acceptable “fix”. The bug only looks like its gone… it’s still there, and can come back to bite you at any time. Don’t do it, no matter how tempting it might seem.
- If the program crashes on exit, you probably freed something you didn’t properly allocate, or that isn’t allocated anymore.
- Leaking memory is bad. Freeing pointers or objects that don’t belong to you is worse. If an object you expect to be free is still hanging around, don’t force it, find out why… “fixing” bugs by patching the symptoms and not the cause makes the code much harder to repair in the long run.
- If you have an intermittent bug, and your “fix” made it go away and you don’t know why, the bug is almost certainly still there. If you can’t explain it, you didn’t fix it.
- Good documentation is more important than more features. Write it down, even if it’s just a simple “readme.txt” file… the next person who has to work with your stuff will appreciate it!
More tips? Ideas you would recommend? Post a comment!
Tags: bug tracking, bugs, c++, crash, debug, debugging, memory, programming, tip, ui, user interface
Posted in Code Snippets, General | Comments Off on One Dozen Easy C++ Programming Tips
December 9th, 2007
From a Zen Kōan:
Gyosan asked Isan, “If a million objects come to you, what should you do?” Isan answered, “A green object is not yellow. A long object is not short. Each object manages its own fate. Why should I interfere with them?” Gyosan bowed in homage.
It’s good advice for programming multi-core, too.
Tags: c++, computer programming, multicore, multithreading, programming, zen koan
Posted in Code Snippets, General | Comments Off on A Million Objects