Game Development Community

Visibility...

by Russell Fincher · in Artist Corner · 01/25/2007 (8:25 am) · 10 replies

In 3DS Max 8.0:

When setting up a .dts for animating visibility, the TDN docs indicate that "Visibility is controlled by an object's visibility track". But what if you only want part of the mesh to become invisible?

In my case, I created a bow and I need the arrow to be invisible until it's pulled from a cache of arrows, be visible during the draw and fire animation, and invisible again when it's fired. (code then quickly propels a second arrow in game, quick enough to look seamless... same setup as the orc's crossbow, except the orc's crossbow cleverly hides and re-uses his arrow instead of making it invisible).

So do the arrow and bow need to be in seperate .dts files? If not, how do I set up the file to export two meshes as separate objects in the same file? I guess also I'm still trying to wrap my head around the terminology within Max.

About the author

Art Lead at Sickhead Games, focused on dev tools and prototyping, instructor/advisor at several Dallas colleges and universities, Associate Developer with GarageGames, champion of avant-garde game art at uncommonassembly.com.


#1
01/25/2007 (10:21 am)
As long as an object has a detail number and is placed in the hierarchy properly, it will export into a dts. So, multiple objects will export into the same dts, so long as those rules are followed. In your case, the arrow and the bow will be seperate objects. The arrow will have visibility animation, and the bow wont. The sequence marker for the arrow firing should be set to allow visibility animation.

Check the crossbow source if you need reference, as I'm almost certain it does exactly what you want to do.
#2
01/25/2007 (11:12 am)
Hm... I guess maybe it's the arranging of the detail nodes that's got me confused. Does this look right?
#3
01/25/2007 (11:45 am)
The detail numbers on the meshes can be - and probably should be - the same for this shape. and you can lose the zero, so its just "detail2". Also, you're going to want to take trailing numbers off any bones. If you need to distinguish between bones, use trailing letters instead. Finally, if a shape is skinned, the bones need to be in the heirarchy, but the mesh should be sitting outside of the hierarchy with the bounding box. Other than that, things look good.

What exactly are confused about, I'm not sure I'm addressing your issue.
#4
01/25/2007 (11:52 am)
I would say, 'no, that do not look right'.
Any mesh part you wish to show up at said detail level, must also have a number corresponding to a detail marker.
Example: ROOT (and all mesh under that root) should have 02 appended, before they show up for detail level 2. Also the same for 04, (grab root and duplicate it for each detail, edit the mesh as needed).

Just a side note, the numbers after the detail marker stand for PIXEL SIZE at what to change the LOD mesh, 2 and 4 are very small- i would not expect to ever see the difference from 2 to 4, perhaps try 20 and 40?
#5
01/25/2007 (3:51 pm)
Thanks for the input, fellas. The DTS is exporting great now, with both objects showing up in ShowTool simultaneously. However, I've yet to export a working DSQ with the visibility track. Once I open a DSQ in ShowTool, the arrow disappears entirely.

I notice there is some redundency between manually manipulating the visibility track in the dope sheet and setting the visibility keys numerically in the exporter's Visibility Manager. Which is the right way?
#6
01/25/2007 (6:21 pm)
I typically just turn on auto key and right click > object properties > visibility spinner when I need vis animation. That said, though, don't bother exporting dsqs for a weapon. Unless you are going to have multiple bows which share the same rig, there is no reason to seperate the animation from the dts.
#7
01/26/2007 (9:26 am)
If your are using the darkindustries DTS exporter the information in the Visibility Manager is what is read by the exporter. The exporter UI will automatically create a visibility track for the selected object so that you are able to preview the animation in Max, but this is just for visual aid. As far as the exporter is concerned when exporting the settings in the Visibility Manager are what is read by the exporter.
#8
01/26/2007 (9:27 am)
Wow, I didn't even realize a dts could contain animation. Well, I do need two independent animations for this setup... one "draw and hold" animation to load the arrow, then a firing animation.

Adam, so you don't specify anything in the exporter's Visibility Manager?
#9
01/26/2007 (11:59 am)
Ah, I don't use the Dark Industries exporter. Matt Summers is the absolute expert on that exporter (since he wrote it), so I'd direct your question to him.

Glad I could help a little, though. :)
#10
01/26/2007 (12:53 pm)
Matt, just using the Visibility Manager alone makes the arrow invisible for the entire animation in ShowTool (though it's visible in the dts before loading the dsq). I'm failing here at something and I just can't figure out what it is. Any more thoughts?

Edit: I'm just going to post the max file here (Max 8.0) . If anyone could look it over and see if you can spot my visibility problem, I'd appreciate it. There's no animation in this file except for the visibility track, just a flickering arrow.

And I guess I should have initially pointed out that I'm using the latest Dark Industries exporter.