Game Development Community

dae2dts, single .dsq files|dae clips..XSI only.. :/

by TheGasMan · in Torque 3D Professional · 04/07/2012 (3:03 am) · 22 replies

read title.

I placed DSQ sequence Dummies into the scene and set them up like I usually would do, exported to dae, ran the dae2dts tool as doc'd and I get 1 BIG ambient.dsq file.
------------------------------------------------------

GG said:
# Convert to 'orc.dts', and generate 'orc_root.dsq', 'orc_run.dsq' and
# 'orc_shoot.dsq' (all files compatible with TGE, TGEA and ShowToolPro)
dae2dts --compat --dsq --output orc.dts C:shapesplayer.dae

& so I followed the directions;
www.ericrbarth.com/uploadpanel/view/sureGG_surrre.jpg
inside of the shape there are several properly setup sequence dummies..but dae2dts ignores them.
www.ericrbarth.com/uploadpanel/view/insides_shape.jpg
--------------------------------------------------------


Anyone ever get this to work ?



Page «Previous 1 2
#1
04/08/2012 (7:00 pm)
Most DAE exporters either use only the first anim or make one big sequenced anim out of them. I don't know if dae2dts has options for subdividing the animation. However, you can do this in the shape editor inside of torque. This will create the scripts to treat each anim by the frame number in the animation.
#2
04/09/2012 (10:02 am)
this isn't a dae issue, it's a dae2dts issue/doc issue... a GG issue.

I appreciate that you tried to help tho. ..no lessons needed btw. ;)
#3
04/10/2012 (5:53 pm)
Without seeing the actual dae file, I'd say Frank is quite correct. This has been an issue with DAE exporters right from the start. Most don't have the ability to split the animation timeline (that's why you get a single sequence called 'ambient'). Dummy sequence nodes (used by DTS exporters) mean nothing to DAE exporters.

For better or worse, the solution to this issue is a TSShapeConstructor script to split up the animation timeline. These can be created manually or by using the Shape Editor tool.
#4
04/11/2012 (7:13 am)
ok,guys, obviously I am not explaining well enough for you guys to understand...because you're both off on what I am trying to point out. No blaming, just better explaining..here we go;

Here's what I did;
I export a DAE file with many animations (that get put into 1 big animation as the dae's "Ambient")..I am not arguing that simple stuff.
- Now, the dae2dts docs state that if I place sequence dummies into the scene & export as DAE that dae2dts will export separate DSQ files based on each sequence dummy.
that is why I posted this:
GG docs state:
# Convert to 'orc.dts', and generate 'orc_root.dsq', 'orc_run.dsq' and
# 'orc_shoot.dsq' (all files compatible with TGE, TGEA and ShowToolPro)
dae2dts --compat --dsq --output orc.dts C:shapesplayer.dae


to add onto that.. this is in the docs;
--dsq
If set, all sequences in the shape will be saved to DSQ files

(one for each sequence)

instead of being embedded in the DTS file. The generated DTS file will not contain any animation sequences.


//--
//--

The docs are wrong or dae2dts doesn't work correctly.
This is NOT a dae issue!
#5
04/11/2012 (7:16 am)
I Removed this until we get a resolve.. ;)
#6
04/11/2012 (1:48 pm)
Quote:the dae2dts docs state that if I place sequence dummies into the scene & export as DAE that dae2dts will export separate DSQ files based on each sequence dummy

Nope. It doesn't say that.

The Collada file format supports animation 'clips' which are roughly equivalent to animation sequences in Torque. Using the --dsq option will save each animation clip in the DAE file to a separate DSQ file. Your DAE contains a single animation clip, so you only get a single DSQ.

Dummy nodes were a technique used by DTS exporters to split the animation timeline into separate sequences in the DTS or DSQ file. These nodes mean nothing to DAE exporters, or to the dae2dts tool. A dummy node is not a sequence or a clip.

If you want to split the single animation clip present in your DAE then you need to use a TSShapeConstructor script.

One could make the argument that dae2dts (and T3D collada import in general) should support the dummy node technique used by DTS exporters, but currently it does not, and nowhere in the docs is any claim made that it does so.
#7
04/11/2012 (2:50 pm)
ugh, ur a brick wall today. :P


ok, so the docs are wrong or ill-prepared no matter the POV with which you agree. ..at least that is cleared up.


//edit to stop retorts on docs being correct..READ THE DOC SECTION BELOW.



DOCS STATE:
-----------------------------------------------------------
Examples

A COLLADA model, player.dae, contains 3 animation clips: root, run, shoot.

# Convert to 'player.dts' (all animations are embedded in the DTS file)
dae2dts player.dae

# Convert to 'orc.dts', and generate 'orc_root.dsq', 'orc_run.dsq' and
# 'orc_shoot.dsq' (all files compatible with TGE, TGEA and ShowToolPro)
dae2dts --compat --dsq --output orc.dts C:shapesplayer.dae

# Extract animations only and store in 'player_root.dsq', 'player_run.dsq' and
# 'player_shoot.dsq'
dae2dts --dsq-only player.dae


//--------------

geezus I've wasted too much time on this crap.
#8
04/11/2012 (3:52 pm)
I am looking at the docs you quoted and I don't see anywhere that it says that DSQ sequence Dummies will work with the dae2dts tool.

If you are using 3D studio max and the OpenCollada exporter I do not believe there is any way to export multiple Collada clips into a single dae format file.
#9
04/11/2012 (4:00 pm)
(head+desk)*n
I remember why I dislike this place.

//edited in
Yes I realize I am being difficult..but in all seriousness, I have been dealing with GG doc and engine nonsense for years. It doesn't make my attitude right, but it does cause me to have a short fuse.


So..Which app allows collada clips to be placed into the dae that can then be accessed by dae2dts as documented to take 1 dae file and export 1 dts and several DSQ files ?

- If not, I win no matter how you interpret this thread.

#10
04/11/2012 (4:20 pm)
Look, it seems like you are getting hung up by the concepts the old dts exporter used to define animations. I can see from your second screenshot that you placed DTS sequence dummies to define animations in your DAE file. DTS sequence dummies in a DAE file will do absolutly nothing except export a useless dummy node.

So you are exporting your model from Max right? You got the sequence dummies set up to define the start and end time periods of your "run", "back", "side" animations etc.

Then you export the model to dae. The openCollada exporter has no idea what these things are because they are customized objects designed for the dts exporter, so it just turns them into dummy nodes.

You lost all your sequence info when you exported to dae from Max, so the dae2dts has nothing to work with.

As far as I know there is no collada exporter for 3D studio max that allows you to export multiple collada animation clips into one file, but that is probably something to take up with the openCollada people.
#11
04/11/2012 (4:32 pm)
I'm really not hung up on any terms.. I've tried multiple things, explained 1.

Did you happen to see the question above ?
What tool exports multiple clips for dae2dts to use the way that the docs state ?


//edit;
I edited it for the sake of too many words for no reason.
#12
04/11/2012 (4:40 pm)
Not sure. Maybe ask around here:
http://collada.org/public_forum/index.php
#13
04/11/2012 (4:43 pm)
to branch out on Ian's post;

the thread was started with the idea of Sequence dummies used in the dae file. Initially, I had assumed that the dummies were sought out by dae2dts during conversion, ..but after the command line didn't work, I quickly looked at the dae file to realize that they were useless nodes without the controller data for start/end being attached in any manner.(I gave up on Seq. dummies being the key to the problem.)
So I then thought to myself, this is either broken or the docs are wrong.
I then tried a few other things and hacks.. but nothing worked.

Now, what I would like to see is a dae with multiple clips, exported from an app, without any editing..and see the quoted command line used upon it. I want to see 1 dts and several DSQ files come from 1 dae file. Just as the docs state. ;)


#14
04/11/2012 (5:27 pm)
So, does the exported DAE file actually hold the start and end frames for the sequence dummies? Can you post a link to an exampled DAE file and I can take a look?

If it does then do we have access to the source code for dae2dts.ext?
If we do then it would be possible to modify it do export correctly. Or one could write a post processing tool of the DAE file (is is XML anyway) to create the Torque Script to process those dummy nodes. Possibly have this done in T3D on import?

Another possibility would be to have a separate <fill in modeler name here> to export the Torque Script for the sequences.

Can we teach T3D to generate those dsq files?

It seems like this process could be more streamlined to help the user export the sequences easier.

Also, I know the modeling programs do not now support this for the most part, but there is support in the DAE format for having multiple sequences. If there is a way to have MAX, blender, etc produce dummy sequence data in the xml that has the frames, then it should be simple to write a post processing tool for this purpose. It is just xml and xml is VERY easy to manipulate using tools like lxml in Python. I would be willing to look into that if the interest was high enough.

@TheGasMan,
Please post some example DAE files with the dummy nodes with frame info in them. I want to see if the DAE file keeps that info. If it does, then I can look into converting the xml to the format that has multiple sequences in it. Then T3D should pick up on that, and maybe even dae2dts. I think I remember reading that T3D will.
#15
04/11/2012 (5:52 pm)
Quote:So..Which app allows collada clips to be placed into the dae that can then be accessed by dae2dts as documented to take 1 dae file and export 1 dts and several DSQ files ?

XSI is the only modeling app I am aware of that exports Collada animation clips. I have an example model handy if you want to see such a file.
#16
04/11/2012 (5:56 pm)
So, I have two disclaimers and some data:

Disclaimer One: I have no reason why you would want to do any of this. The DSQ animation format is no where near as nice as exporting a few dae files and hooking them up with scripts.

Disclaimer Two: I don't know enough about the dae xml format. I am probably doing something incorrectly here.

Data:
I created a simple cube in 3D studio max and exported it to dae format twice with different animations. I then opened these files with a text editor and found the <animation_library> section. I copied the <animation> from one to the other. Theoretically, I should now have one DAE file with two animations in it.

I used this command line on the program that ships with the tools demo 1.2:
dae2dts.exe --compat --dsq --output cube.dts TestCubeRotate.dae

And I got "cube.dts" and "cube_ambient.dsq" Neither of which had any animation.

I got two warnings:
Warning: Creating cyclic animation clip to hold all animations
Warning: Failed to resolve animation target: node-Box01/translation.Y

Probably I am combining the dae files improperly, and again I have no idea why you would want to do this.

#17
04/11/2012 (6:15 pm)
Hmm yea, theres a <library_visual_scenes> section that has to be merged at least.
#18
04/11/2012 (6:16 pm)
@Ian: Just copying the <animation> elements is not enough, you also have to define <animation_clip> elements. Here is an example of a model exported from XSI with animation clips.

It would actually be quite straight forward for T3D (and dae2dts) to support dummy sequence nodes and convert them to animation clips automatically. The problem I found when I was working on the collada import pipeline was that the data associated with the sequence (start frame, end frame, cyclic flag etc) was not exported to the DAE, so all that appeared in the model was an empty node.
#19
04/12/2012 (10:09 am)
I'd like to suggest that the docs have consistent word use. (amazing thought, I know!!![/sarcasm])

"clips" and "sequences" are terms that should not be used as one in the same without first declaring them to be so. Even then, the use is questionable.


The Docs section of dae2dts where it says; (one for each sequence) should read (one for each clip).

clips and sequences may be the same to some, but it is not a standard nor does everyone agree them to be the same. When actually, they are NOT the same at all.

You see, a model can contain several sequences and not have any "clips". This documentation is bad IMO and needs corrections.


//about dae and sequence||dummy export:
I can write a small tool to place the sequence|| dummy's data into the user properties of each. But then we're left with the fact that it's a Max only solution and is it worth the trouble ? ..I don't think it's worth it, I had only assumed it was already there(obviously).
#20
04/12/2012 (10:57 am)
Sometimes a carrot get more action than a stick.

To be fair, the docs for T3D are lightyears improved over TGE. I know jargon can be a pain to get right. Sometimes it can be hard to communicate how a thing works especially programmer-artist interfaces. One is highly technical, and one is highly artistic in nature.

Is there a thread somewhere for submitting technical corrections in the docs? I know GG just brought on some documentation specialists to help in this area. It should probably be in the public T3D section so artists can get access to it if they don't have T3D license.

So, to help the technical guys, what is the definition of a clip versus a sequence? In the context of a 3D modeling program that is.
Page «Previous 1 2