Nested Problems

By Shamus Posted Monday Sep 25, 2006

Filed under: Personal 11 comments

Thinking back to the frustration of Blender, one of the things I noticed was that I was suffering from nested difficulties. This is where, instead of solving a problem and moving forward, the solution to a problem involves a sub-problem, which in turn has its own sub-problem, and so on. A day with many problems seems rough, but it happens. A day where each attempt to solve a problem only reveals new problems is maddening, and threatens to drive me over the edge. Consider this scenario:

  • Drive to store (Get flat tire)
    • Change flat tire
  • Continue driving to store (Get another flat tire)
    • Change flat tire
  • Continue driving to store (Get another flat tire)
    • Change flat tire
  • Continue driving to store (Get another flat tire)
    • Change flat tire
  • Arrive at store

This is a bad day, to say the least. Having all four tires go flat would be frustrating, but for me it wouldn’t be as rage-inducing as getting just ONE flat tire under these circumstances:

  • Drive to store (Get a flat tire.)
    • Change flat tire
      • Bolts are stuck (Use WD-40 on bolts)
        • Get WD-40 out of glovebox. (Glovebox won’t open.)
          • Pry open glovebox with screwdriver (It’s too dark to see what I’m doing.)
            • Use flashlight – Flashlight won’t turn on.
              • Change Batteries (Get batteries from trunk)
                • Open trunk. (Can’t open it: Trunk key is bent.)
                  • Enter rampage mode.

This is far, far more frustrating to me, even though on balance I might arrive at the store sooner than if I just had the four flat tires scenario. With each new layer of nesting my anger doubles. It’s like an anger multiplier. One level deep is annoyed. Two levels deep is angry. Seven levels deep and I conclude the entire world is against me and must be destroyed. I’m sure this is how super-villians are created: They are normal guys until a day comes when they have a seven-level problem and they decide to hire an army of henchmen and build an orbital death ray.

With Blender, every problem was a five-level problem, which is why the program made me so crazy. I’d hit level five, get enraged, and storm off. Then I’d regain my composure, come back, and try something else, only to have it all happen again. So, it really was for the safety of the world that I had to give up on it.

LATER: Looking back, I think my experience with the HP Pavillion was another set of deep-nested problems.

 


 

DM of the Rings IX:
Too Warm a Welcome

By Shamus Posted Monday Sep 25, 2006

Filed under: DM of the Rings 56 comments

Lord of the Rings, Elrond Hubbard, Legolas, Rivendell
Lord of the Rings, Elrond Hubbard, Legolas, Rivendell
Lord of the Rings, Elrond Hubbard, Legolas, Rivendell

When you want an image to use for your character portrait, you have two choices:

  1. Spend years mastering the art of sci-fi / fantasy illustration. Perhaps attend art school. Hone your craft until you can fully realize your character on paper just as you imagine them.
  2. Use Google Image Search and swipe something that looks roughly like how you want your character to look.

For whatever reason, most players take the lazy way and opt for #2, despite the fact that there is a 90% chance they are going to look like a brooding androgynous goth / punk elf holding the wrong weapon.

Go figure.

 


 

Divergence Eve

By Shamus Posted Monday Sep 25, 2006

Filed under: Anime 7 comments

Steven on the gigantic animated breasts in the otherwise serious Divergence Eve:

I would curse the production staff for this, except that I have to confess that it was the character designs that convinced me to watch the show — which was exactly what the production staff expected and the reason they did it.

Fact is, I’m proof that they made the right decision. I think the show would have been better if the breasts had been more realistically sized, but if they had been I probably would not have watched it. Aargh…

The fan service got me to watch the show. But how many people who would have enjoyed it will skip it because of the fan service? Aargh again!

Divergence Eve
Yeah, I fall into this latter category. I can’t possibly ask my wife to watch this show with me without feeling like an idiot. The fanservice kept me away from this one, despite the praise I’ve read elsewhere.

I love mechas. I like good stories. But even if my wife was willing to sit through this, I think the breasts would undermine the plot at every turn. It’s like watching Hamlet enacted entirely by Playboy bunnies*: The story is grim and intense, but nobody is going to take the thing seriously in this context.

* Assuming this has not already been done.

 


 

Something Made You Special, Part 2

By Shamus Posted Sunday Sep 24, 2006

Filed under: Links 1 comments

Veggie Tales
Jaquandor points to Phil Vischer’s blog, which sheds a great deal of light on the questions I asked yesterday. In the comments of that post, BeckoningChasm took a guess on what was going on and it looks like he nailed it: Big Idea agreed to editing, thinking this would mean making commercial breaks and adjusting the length of the show, and only later did everyone find out exactly what “editing for TV” entailed. Vischer has agreed to do the edits, removing non-historical references to God, but still doesn’t know how that can be done for the older episodes, which are more about God and less about values. Since he wrote many of those shows himself, my guess would be that it probably can’t be done.

On the other side of things, I still can’t comprehend why NBC would want this show. It would be like a Christian radio station wanting to run Howard Stern, but with all the dirty parts edited out. Ok, assuming that could be done: Who is going to want the edited version of the show?

But the real discovery for me was Vischer’s epic 7-part series, “What happened to Big Idea?” Big Idea went bankrupt! I had no idea. It’s hard to imagine, but the mistakes are easy to spot with the aid of hindsight. What troubles me about what happened was how familiar all of his mistakes were. Phil has the same view of management that I do: Hire smart people, then get out of the way and trust them to do their job. I could see myself making all of the mistakes Phil Vischer did. And some of them were pretty bad. The story is painful to read. I went through the dot-com thing myself, and so I know what it’s like to see a company grow and burst. Even though I kept my job, it was painful. What happened to Big Idea is the same thing, only on a grander and more destructive scale. What a shame.

 


 

Something Made You Special

By Shamus Posted Saturday Sep 23, 2006

Filed under: Rants 18 comments

Steven left a link to this story in the comments here: Veggie Tales is to be broadcast on TV, but all religious references are to be stripped out. I’d love to know how they plan to do that. Veggie Tales is a kids show with musical numbers. Some of the songs mention God in the lyrics. Those songs would have to be re-written, re-recorded, and then the show re-cut. Every show ends with Bob and Larry going over to the computer to read “today’s verse”. Bob’s ending catchphrase is, “God made you special, and He loves you very much!” If they take God out of the show, it will be quite a bit shorter and make a lot less sense.

Veggie Tales
I’m not really angry at NBC. I was shocked when I heard they were putting the show on TV, because I knew the show is explicit about talking about God. It’s a show by Christians and aimed at Christians, so it doesn’t water things down. I was sure if they put the show on the air there would be complaints. A lot of them. My kids don’t watch TV, but if they did I can imagine how I would react to a show that was advocating another religion. This is deeply personal business, and not something that should try to bypass me by proselytizing to my kids via a cartoon show. If I came in and saw Spongebob had been replaced by “Tarot Time with Little Miss Wicca” I’d be pretty irritated. So, I don’t blame NBC for wanting to avoid the backlash that would come from non-Christians and anti-Christians out there. The conservative Christian groups would react at least as strongly if another religion was getting airtime during kid’s shows. NBC is a business, and from a pure business standpoint they have a duty to avoid religious advocasy when the kids are watching, because anything else results in bad press and angry letters sent to sponsors.

What I don’t understand is why the sides agreed to this in the first place. What in the world made NBC want this show? NBC makes this sound perfectly routine, to sign up a show that is totally at odds with their broadcast standards. Big Idea claims they had no idea their show would have to be edited like this, and say they never would have signed the papers if they had known. I find it hard to believe that these contracts were signed and somehow nobody mentioned how this was going to go. Editing – particularly tricky editing like this – costs money and often requires voice actors to come in and lay down some new dialog. Who is going to do this editing? NBC? How did they get permission to edit the show like this? At best, it sounds like the Big Idea legal team didn’t do their job, and NBC was probably at least a little deceptive or misleading. At worst, Big Idea is outright lying.

All of this just confirms my fears that this was a terrible idea to begin with. Phil Vischer (one of the show’s creators, and the voice of Bob the Tomato) is still excited: “Isn’t it great that Veggie Tales is on TV?” Well, no. Who cares? Imagine how the secular / non-Christian types will react when they decide they like the show, buy one of the videos, and get the raw, uncut, explicit version that talks about You-Know-Who. I think they are going to feel like they were duped, suckered in. Christians who like the show already own the videos. So who is the show for?

Now, I’m all for wholesome entertainment that is still, you know, entertaining. I’m weary of the crass booger & fart jokes that are strung together to make kids giggle, and one can only take so much of the “Kipper” shows – television so harmless that it is devoid of content. Something witty yet wholesome is a worthwhile goal, and I’d admire them if Big Idea made another show that was aimed at television with this goal in mind. But the way this happened is just awful. It’s lies and money and will lead to a chopped-up TV show that doesn’t make any sense and won’t please anyone.

On a lighter note, Pizza Angel!

 


 

DM of the Rings VIII:
A Tearful Reunion

By Shamus Posted Friday Sep 22, 2006

Filed under: DM of the Rings 38 comments

Lord of the Rings, Uncle Bilbo, Player Apathy, Rivendell

Yes, black dragons are powerful. So are level-20 fireballs, demi-gods, and huge mythic beasts. But there is no force in the game as powerful as the combined selfishness and apathy of your players.

 


 

Animated Figures

By Shamus Posted Friday Sep 22, 2006

Filed under: Projects 12 comments

I’ve alluded to this a bit over the past few days, but my current non-work project is to make a program for animating 3d characters. At work, I maintain software that does this already, but I didn’t write that part of the code. For the most part, the character animation is driven by Renderware, which a fairly large and popular cross-platform graphics engine. It’s nice to be able to hand off complex tasks to a graphics engine and say “make all of this confusing stuff work and don’t trouble me with the details.” When developing commercial software on a schedule and a budget, it’s just the thing.

But I’m filling in various gaps in my knowledge and so I want to know how to do this myself, from the ground up. This means putting some of my crude, self-taught trigonometry to use. It also means getting some 3d data to work with.

3d character, Vertices, Lines, Triangles
Top: Vertices are the dots that give the figure shape. Bottom: Triangles are lists of points to connect, which will eventually turn this thing into a solid shape.
Unlike my Terrain Project, where my input data was just a couple of bitmaps and a few nice shading tricks, I need real data for this one. I need a low-polygon (less than 5,000 polys) humanoid figure with skeletal info so that the points can be moved around to make the figure walk / run / fall down / etc. I also need a system of scripting body movements so that I’ll know how to adjust the position of the figure to create the illusion of walking. This is a lot of very complex data. In a real game company, it would take between two and five artists to come up with this data. Luckily, I have enough 3d art background that I can make this stuff myself as long as I’m not too picky about quality.

So now I need to decide what 3d program to use to make this stuff. Part of this decision will involve what sorts of 3d files the program can save. 3D models are made up of predictable things. There are points (verticies) and there are triangles (each of which plays connect-the dots with 3 particular points) uv values (information about how the texture lines up on the model) the skeleton (another collection of points, which define all of the joints in the body, where their pivot points are, and how they relate to each other). There is lots of other interesting data, but this is the critical stuff that every program needs before it can draw a 3d model.

Every 3d program has its very own file format, a method for storing all of this stuff. Some are very nice to use. It’s just a list of verices, followed by a list of triangles, etc. Others are more obscure, or have lots of extraneous data mixed in that must be weeded out. Still other files formats are “closed”: Nobody outside of their creators know how they work, so they can’t be read by any external programs. Such as mine. Some are dense, complex, tricky, poorly documented, or otherwise difficult to read. Some are easy to read but don’t preserve the most complex data – the information that ties the body to the skeleton. Since that’s the whole point of the project, I can’t go with any file format that leaves this out. File formats that are both robust AND easy to read do exist, but they are rare and not all programs support them. So, this is going to be tricky.

My budget right now is $0.00, and 3d programs tend to hail from the $500+ price range, so there’s another snag. Even if I do find a program that supports an easy-to-read, well-documented format that has what I need, it might be way out of my price range.

Well, Let’s see…

Truespace

I own a copy of Truespace, so it’s “free”, but I’m not going to use it for this unless I have no other choice. It’s a poor tool for this particular task, and the file format is difficult. It’s nice to know I have this to fall back on, but I’d like to see if I can find a better tool for the job.

Poser

Content Paradise had a promotion where they were giving Poser 5 away for free, and I managed to grab a copy. As of right now the free promotion is over, but they are selling the program for $20. That is $230 less than the usual price. I don’t know what inspired this fire sale, but that’s still a good deal.

Poser isn’t a 3d modeling program per se. It’s for posing very realistic super high-polygon figures. Not really ideal, but it does have moving 3d human models and an export feature. It should at least give me my 3d figures, although I’ll have to look elsewhere for the animations that drive them.

I was able to export one of the low-poly models into 3DS format. (Pictured above) 3DS files are a bit unwieldy. They certainly aren’t a nice neat list of points, triangles, and such. The 3DS file is packed with useless stuff about window layout, light placement, camera settings, and a bunch of crazy stuff that I don’t want or need. Still, the format is documented, so I sit down and spend a few hours implementing my own code to read 3DS files.

At the end of a lot of confusion I discover a nasty little secret: Poser leaves the skeleton off when it exports. Suddenly this animated 3d guy turns into an unmoving statue, and the data to get it moving is gone. Some Googling reveals that this is the case for all formats for all versions of Poser. The program leaves this info out on purpose.

Sigh.

Well, at least I didn’t pay $250 for it.

Blender

I tried Blender, and eventually dismissed it for reasons belabored elsewhere. I really, really did think this was the right program for the job, which is why I gave it so many second chances. It’s open source. It LOOKS impressive. It’s feature-rich. And if you want an open file format, then an open-source program should be the place to go, right?

In the end all those second, third, tenth chances only fueled my rage and led to my intemperate and (I hoipe) uncharacteristic posts. I should have given up much earlier on. It was clear the thing just wasn’t going to cut it and I just had a mental block about the thing. I just couldn’t imagine OS software that was this bad. I must be missing something? Doing something wrong? It can’t be this useless, can it?

Yes. Yes it can. This is not the program you’re looking for. Move along.

Maya

Maya retails for about $400 or so, but Unreal Tournament 2004 came with a special limited version of Maya that had some of the high-end features disabled, and it put an annoying watermark over the 3d viewports. It was like looking at your work through a stenciled window. These programs are tough enough without that visual distraction. Also, I think the export functionality was crippled or removed in this evaluation / learning version.

I like the idea of a learning version, but this isn’t going to meet my needs. The $400 price point is WAY out of my budget, so I have to give this one a pass.

Milkshape

Milkshape is an odd duck. (No offense). Instead of being aimed at professionals, it is aimed at home-brew developers making game mods. Where most 3d programs have export options for various obscure file formats, Milkshape has stuff like, “Export to Doom 3”, “Export to Half-Life”, “Export to Max Payne” and so on.

The interface is alarmingly simple:

Milkshape
Milkshape isn’t fancy. She might not look like much, but she’s got it where it counts. Here you can see I’m adding a skeleton to the model so that it will move. The model is bent oddly because I did something wrong and the skeleton isn’t properly attached yet. When it’s working right, the skeleton will stay inside of the model!

Still, simple is good. Building a full 3d human with this would be really tough. Blender seems geared to very low-poly work, like making models in the 1,000 polygon range. That’s about the polygon budget of games released around 1999 and 2000. However, Milkshape does import 3DS files. So, I can take my non-animated guy from Poser, bring him into Milkshape, and manually re-create the skeleton. It’s dull work, but it will get me where I want to go and save me the time I was going to have to spend modeling a human.

But what about saving? All of this does no good if I can’t save in a format that my program can read. Well, it turns out that Milkshape has a wonderful text-based format. There is documentation on it, but I hardly need it. After a a quick read through a file I can intuit what the numbers mean. It’s all very easy and sensible.

The price point is $25, which is very reasonable. I know this project has a budget of zero, but I think this program is worth $25. Even if it doesn’t pan out, this thing looks to be a labor of love and has more than $25 worth of features. So, I found my 3d program.

After days of work, I’m finally ready to start!