Jump to content
The Dark Mod Forums

Vertex Animation Is Possible In Doom


oDDity

Recommended Posts

Apparently der_ton has already written an exporter than can export vertex animaiton from 3ds Max. He says one can be written for any 3d app.

Any of you programmers think you could look at his and then write one in mel script for Maya?

THis would obviosuly mean superior lip sync and cloth animatons for some of the charcater's clothes, especially the ones wearing long robes/cloaks etc, and curtains.

Civillisation will not attain perfection until the last stone, from the last church, falls on the last priest.

- Emil Zola

 

character models site

Link to comment
Share on other sites

Do we have a programmer using Maya? What exactly would be needed for that? My Maya version is rahther old. I think it was 3.5 that I have and now there is already 6, right? Currently all our developers are busy so this would have to wait a bit and since we have no speech recordings yet, how can this be tested?

Gerhard

Link to comment
Share on other sites

Well, it's not urgent, but it would be nice to have vertex animation, at some stage. I'm sure writing a little mel script would be childs play to some of you guys. As far as I know it's based on C++.

Don't worry about testing it, I can do that, or Corth who also uses Maya.

Civillisation will not attain perfection until the last stone, from the last church, falls on the last priest.

- Emil Zola

 

character models site

Link to comment
Share on other sites

Not difficult, there is a freely downloadable version of it. You could also talk to der_ton from doomworld forums to get an idea of exactly what needs to be done on the coding, since he'd be able to save you a lot of time I'm sure.

Civillisation will not attain perfection until the last stone, from the last church, falls on the last priest.

- Emil Zola

 

character models site

Link to comment
Share on other sites

How hard would it be to use Doom 3's physics system to simulate cloth, rather than vertex animated cloth.

And you don't need vertex animation to do facial animation. It can be done well with bone setups. Doom 3's models all used bones and frankly i found their facial animation and lip syncing to be better than HL2's.

Link to comment
Share on other sites

I wasn't the one talking about that Renzatic, must have been someone else :)

 

In D3 physics, I haven't looked at it extensively, but there are "articulated figure" physics setup, where there exist "joints that couple 2 models together. I'm not saying this is a good solution, since it would probably put a very heavy load on the processor, but a cloth could be considered an articulated figure with a helluvalot of joints. Again though, this would be very taxing on the processor.

 

I have also seen "spring" behavior, to couple two entities together via a spring. Again this is probably a bad solution, but you could consider each part of the cloth as a separate entity, coupled by a very weak spring.

 

[edit - Also yeah, D3 does have a particle system. I don't know what kind of physics constraints you can put on the particles. ]

 

We don't really have immediate plans for cloth that you can interact with though (I don't think). So this would mostly be for stuff like cloth blowing in the wind, which I would think it would be okay to use vertex animation for rather than trying to simulate every vertex and the coupling between vertices with D3 physics. You could probably set up a physics simulation in an outside program (finite element method or finite differences method or something) and then generate vertex data from that to plug into the animation. I dunno, I would think there would already be a program that generates cloth in wind animations, but I have no idea.

Edited by Ishtvan
Link to comment
Share on other sites

THe way the max-doom vertex plugin works is that it creates a bone for every vertex. Realtime cloth simulation uses a lot of processor power, it's be much cheaper to import it pre-animated.

Civillisation will not attain perfection until the last stone, from the last church, falls on the last priest.

- Emil Zola

 

character models site

Link to comment
Share on other sites

I see no reason for interactive cloth right now. Animations would do fine as far as I'm concerned.

 

The most I've seen interactive cloth simulation for in games is the cloak or hair of the main character. It's aesthetic, and looks better, but doesn't affect the stuff you do in the game, and well made animations do almost as good a job, with no extra processor drain.

Link to comment
Share on other sites

Vertex animations for cloth movement can be very hard (if you use a procedural effect you cannot loop it without practically redoing most of the animation. One vertex at a time) in which case it's best to just bone it. It's what was done at work and it turned out alright, but if a few more bones were used (i reckon 5 would've done) it would've been better.

As for cloth simulation, well acctually i had it in mind for world objects, things like curtains (no characters have drapped cloth, yes?). Such things can really bring the envrionment to life and help immersion. But then again we may again not need cloth simulation where bones and Doom 3's Articulated Figures (ragdolls) could work, for instance a hanging rope, chandelier or i could even set up a tied up curtain as a ragdoll using a minimum of, i reckon 5 or 6 bones.

Edited by ]-UnderTOW-[
Link to comment
Share on other sites

Wouldn't be very time consuming. If someone makes a static mesh that could possibly become an AF, wouldn't take too long it make it one.

 

BTW, just FYI, looking at the Imp maya binary file that comes with the Doom SDK, there are 70 bones in the imp, not including the wings and foot controller bones which i dunno if they're used ingame. Since we're dealing with a PC game, memory isn't such a problem as a gamecube or PS2 game. Also, this is just the imp, no bones for facial animation here like the human characters.

Link to comment
Share on other sites

For curtains and ropes an animation would be rather nice to have. Facial animation is probalby more for the in game cutscenese more than anything else.

For the curtains and ropes, it wouldn't be an animation, it'd be a rag doll (Articulated Figure) so that it'll react to you walking into it.

With the facial animation, it'd be awesome to have it on the guards, when they mutter to themselves (I'd love to lip sync to the original Thief guard mutterings sounds ;)) or even when they walk into a dark area they their eyes could get wider as their eyes adjust. A ton of possibilities. Thief is the perfect game for such a thing because you really have the chance to get up close to your enemies without them noticing.

Edited by ]-UnderTOW-[
Link to comment
Share on other sites

Being a maya user you'll know about syflex, undertow, ans maya even has it's own builtin cloth.. All you have to do is make a notmal cloth simulation and then (if we had a vertex plugin for maya) export it to doom. The plugin converts every vertex in the 'cloth' to a bone.

Obviosuly, good cloth simulaiton requires a decent nunmber of polys in the mesh, but it's still going to look better than any attempt at trying to rig it with bones and animate tham (and nbe a lot quicker as well)

Also you can use blendshape for the lipsync and export that using the (currently non-existent) plugin. I can't see how building a facial rig of bones would be better than vertex morphing.

Civillisation will not attain perfection until the last stone, from the last church, falls on the last priest.

- Emil Zola

 

character models site

Link to comment
Share on other sites

Being a maya user you'll know about syflex, undertow, ans maya even has it's own builtin cloth.. All you have to do is make a notmal cloth simulation and then (if we had a vertex plugin for maya) export it to doom.

As i said, you cannot loop a procedural effect like that, without altering most of the animation by hand.

 

The plugin converts every vertex in the 'cloth' to a bone.

That's not a good thing. Can you imagine having 100+ bones just for a world object? Sure we have a decent amount of bones to play with, but not that much.

 

Obviosuly, good cloth simulaiton requires a decent nunmber of polys in the mesh, but it's still going to look better than any attempt at trying to rig it with bones and animate tham (and nbe a lot quicker as well)

Firstly, i can get decent looking deformation with bones. Secondly, it's not going to be animated. It'd be a Doom 3 Articulated Figure. A rag doll. The tied up curtain, for instance, will sit their inanimate until you walk into it, come in contact with the physics collision of the bones and it'd move accordingly.

 

Also you can use blendshape for the lipsync and export that using the (currently non-existent) plugin. I can't see how building a facial rig of bones would be better than vertex morphing.

Again, the bone count (if using this convert vertex to bone thing) would be horrendous. Setting up a bone facial rig will be easier, faster, and only a little memory and performance hit ingame. If you want to do blend shape facial animation, you need a propper system, built for the engine like HL2's.

Link to comment
Share on other sites

For the curtain case:

 

Setting up the physics on an AF curtain may be a bit difficult though. You'd need a force applied to all bones for wind, and a randomly changing force if you want the wind direction to be changing. (If you want the curtain inactive until the player bumps it we don't have to worry about wind, but if you're in a windy hallway and the curtains are physicalized but not blowing in the wind, I would think the player would find that odd).

 

Then you need a var for how easily each joint bends (or how constrained one bone is to the other), and a max angle each joint can bend. I suppose these values would be the same for all bones that aren't touching the curtain attachment point or the ground. For the joints that are attached to wherever the curtain is attached, and those that drag along the ground, you need a friction constraint (absolutely constrained for where it's attached... more friction for where it drags along the floor).

 

Actually I guess that's not that bad, the only annoying part is the wind force and the friction force for the bones/joints touching the floor. The top attachment bones can just be constrained to stay in place.

Link to comment
Share on other sites

So you think it's going to be simple to set up AF on that curtain?

If animated it in maya with cloth and then exported it, it would need any looping, and would be a lot quicker and simpler, and doesn't require any figuring out. Why do it the hard way?

der_ton says high bone count doesn't effect perfromance much in doom anyway.

We don't actually have the vertex exporter for Maya anyway, and may never have, so we may have no choice but bones.

Civillisation will not attain perfection until the last stone, from the last church, falls on the last priest.

- Emil Zola

 

character models site

Link to comment
Share on other sites

Now that I think about it you wouldn't need a friction force on the ground, you could probably fake it by just making the lower curtain joints stiffer.

 

@Oddity: Oh, I see no reason to use the AF if the imported vertex animations are efficient and allow us to do what we want. UnderTow's post just got me thinking about how it could be done with an AF from a theoretical standpoint.

Link to comment
Share on other sites

Ok, i think you're making this a little more complicated than it aught to be.

You'd only need a flowing curtain if it's an unfolded curtain near an open window. If it's a curtain that blocks rooms (like they had in that level in Thief 2 where you're casing the joint), or is a tied up curtain, or things like hanging ropes, chandeliers, or any hanging thing, it needs no animation and an AF would be easy to use for it. And then we could possibly get the AI to recognise and notice usually still objects moving (say you move through a curtain and it's still swaying when when the guard comes and he could get suspicisous). A nice thing about Doom 3's AFs is that they don't keep flopping around the place like other rag dolls. They become still after a while.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent Status Updates

    • Petike the Taffer  »  DeTeEff

      I've updated the articles for your FMs and your author category at the wiki. Your newer nickname (DeTeEff) now comes first, and the one in parentheses is your older nickname (Fieldmedic). Just to avoid confusing people who played your FMs years ago and remember your older nickname. I've added a wiki article for your latest FM, Who Watches the Watcher?, as part of my current updating efforts. Unless I overlooked something, you have five different FMs so far.
      · 0 replies
    • Petike the Taffer

      I've finally managed to log in to The Dark Mod Wiki. I'm back in the saddle and before the holidays start in full, I'll be adding a few new FM articles and doing other updates. Written in Stone is already done.
      · 4 replies
    • nbohr1more

      TDM 15th Anniversary Contest is now active! Please declare your participation: https://forums.thedarkmod.com/index.php?/topic/22413-the-dark-mod-15th-anniversary-contest-entry-thread/
       
      · 0 replies
    • JackFarmer

      @TheUnbeholden
      You cannot receive PMs. Could you please be so kind and check your mailbox if it is full (or maybe you switched off the function)?
      · 1 reply
    • OrbWeaver

      I like the new frob highlight but it would nice if it was less "flickery" while moving over objects (especially barred metal doors).
      · 4 replies
×
×
  • Create New...