T3D Shape Editor
by mb · in Torque 3D Professional · 08/18/2009 (10:13 am) · 20 replies
Hi,
I was trying to add sequences in the shape editor. For some reason it wouldn't allow me to set the start/end frames correctly on a newly added sequences. Is this broken in beta5 or am I missing something? All I did was add a new sequence, renamed it, and tried changing the start/end frames.
I was trying to add sequences in the shape editor. For some reason it wouldn't allow me to set the start/end frames correctly on a newly added sequences. Is this broken in beta5 or am I missing something? All I did was add a new sequence, renamed it, and tried changing the start/end frames.
#2
08/18/2009 (12:46 pm)
Oh good, its not me. I have found that it works, but sometimes you have to do the same thing over and over before it takes it.........I wonder if they know about this?
#3
08/18/2009 (1:42 pm)
Be sure to post these as individual bugs (if they aren't already noted in the appropriate tag forums).
#4
Fair warning: get a cup of coffee before you start reading it, ok ?
Tonight-ish/tomorrow-ish.
08/18/2009 (2:11 pm)
I'll give you a report on the shape editor. Fair warning: get a cup of coffee before you start reading it, ok ?
Tonight-ish/tomorrow-ish.
#5
08/18/2009 (8:29 pm)
cool thanks!
#6
And what happened when you tried to do this? Were there error or warning messages in the console?
Please post bugs if you find them! Unless listed as a known issue in the beta release notes, assume everything is supposed to be fully functional. I'm more than happy to investigate and fix issues, but that can only happen if I know about them!
08/18/2009 (9:11 pm)
Quote:All I did was add a new sequence, renamed it, and tried changing the start/end frames.
And what happened when you tried to do this? Were there error or warning messages in the console?
Quote:I have tried to do simple things with it and it fails to save the data.
Quote:I have found that it works, but sometimes you have to do the same thing over and over before it takes it.........I wonder if they know about this?
Please post bugs if you find them! Unless listed as a known issue in the beta release notes, assume everything is supposed to be fully functional. I'm more than happy to investigate and fix issues, but that can only happen if I know about them!
#7
Hi Chris.
My object was a plain old box with all the animations in one timeline exported from Maya with only a couple nodes: base01 and detail32. If we need more nodes please let me know what they are because I'm trying to explain to the artist I'm working with which nodes are needed but I'm not even sure myself.
The first animation was from 0-30, the second 31-40. I imported the collada file and went to the shape editor. I added a new sequence (all it had was ambient). I renamed the new sequence to something like "boxtest". I changed the first animations end frame to 30. Then I tried changing the second animations start frame to 31 (which I think worked). Then I changed the end frame to 40 but I would revert automatically to 5. It wouldn't let me change the end frame. Thats about it.
OT:It would be nice if the sliders changed the start/end frames in the text fields also.
BTW: I didn't check the console for errors. I'm at work now so I can't check it now.
Thanks!!
08/19/2009 (11:01 am)
Quote:All I did was add a new sequence, renamed it, and tried changing the start/end frames.
And what happened when you tried to do this? Were there error or warning messages in the console?
Hi Chris.
My object was a plain old box with all the animations in one timeline exported from Maya with only a couple nodes: base01 and detail32. If we need more nodes please let me know what they are because I'm trying to explain to the artist I'm working with which nodes are needed but I'm not even sure myself.
The first animation was from 0-30, the second 31-40. I imported the collada file and went to the shape editor. I added a new sequence (all it had was ambient). I renamed the new sequence to something like "boxtest". I changed the first animations end frame to 30. Then I tried changing the second animations start frame to 31 (which I think worked). Then I changed the end frame to 40 but I would revert automatically to 5. It wouldn't let me change the end frame. Thats about it.
OT:It would be nice if the sliders changed the start/end frames in the text fields also.
BTW: I didn't check the console for errors. I'm at work now so I can't check it now.
Thanks!!
#8
For now, let me add this:
If I load an actor and select a sequence, and attempt to move a few nodes: sometimes any of the nodes will move properly, sometimes they won't and if they don't move visually they are moving the entire model's location (I see this when I return to root pose). Sometimes the nodes will move and wildly rotate as I pull them down or up any axis...sometimes a Y movement is actually an X/Y diagonal movement..maintaining constant height on Z. If I work with a model and experience these issues...then it will save any changes even though I tell it not to do so, especially when I select a new shape to see in view..it will ask: would you like to save ? ..I say NO. It saves it anyways. . .ugh.
- How about I stop this terrible, terrible explanation and get a video to you guys when I have time within the next week ? I think it would suit his better as there is too much to this to explain with written words. ..OR ...you could take 30 minutes out and attempt to use the tool and find theses kinds of issues. I found them in 5 - 10 minutes.
08/20/2009 (4:36 pm)
I apologize for not having the time to post in depth. I have loads of work to get done, perhaps I can find the time in the next few days.For now, let me add this:
If I load an actor and select a sequence, and attempt to move a few nodes: sometimes any of the nodes will move properly, sometimes they won't and if they don't move visually they are moving the entire model's location (I see this when I return to root pose). Sometimes the nodes will move and wildly rotate as I pull them down or up any axis...sometimes a Y movement is actually an X/Y diagonal movement..maintaining constant height on Z. If I work with a model and experience these issues...then it will save any changes even though I tell it not to do so, especially when I select a new shape to see in view..it will ask: would you like to save ? ..I say NO. It saves it anyways. . .ugh.
- How about I stop this terrible, terrible explanation and get a video to you guys when I have time within the next week ? I think it would suit his better as there is too much to this to explain with written words. ..OR ...you could take 30 minutes out and attempt to use the tool and find theses kinds of issues. I found them in 5 - 10 minutes.
#9
There are more basic errors that those he listed above, namely:
1. start and end frames, once set, sometimes do not "take" or they simply revert to other values
2. number of frames field does not always accurately reflect the actual number of frames in the created sequence.
08/20/2009 (7:26 pm)
I agree with EB....it is difficult (for me at least) to describe these problems. I also had trouble immediately upon using the shape editor. I also agree that it seems almost impossible that someone could use the ShapeEditor and not know immediately that something is not right. There are more basic errors that those he listed above, namely:
1. start and end frames, once set, sometimes do not "take" or they simply revert to other values
2. number of frames field does not always accurately reflect the actual number of frames in the created sequence.
#10
Let me start by saying I'm really happy that these sort of issues are being discussed. If nobody says anything, it is assumed that either no-one is using the tool, or that everything is working perfectly. In both cases => no need to spend any time on it!
I completely agree that there are issues, but some of these may be misunderstandings about how the tool is supposed to function (which is in itself an issue since the tool should change or make it clearer what is supposed to be happening). For example, eb's problem with node editing:
From the Shape Editor docs:
I suspect you were editing animated nodes (or children of animated nodes). Although in this case the Shape Editor may be operating "as designed" it is still a valid issue, since it is not clear to the user why the transform editing is not working. I think that since the Shape Editor does not (yet) support changing node transform keyframes, it should only allow node transform editing when in the root-pose.
08/20/2009 (10:28 pm)
Hi guys,Let me start by saying I'm really happy that these sort of issues are being discussed. If nobody says anything, it is assumed that either no-one is using the tool, or that everything is working perfectly. In both cases => no need to spend any time on it!
I completely agree that there are issues, but some of these may be misunderstandings about how the tool is supposed to function (which is in itself an issue since the tool should change or make it clearer what is supposed to be happening). For example, eb's problem with node editing:
Quote:If I load an actor and select a sequence, and attempt to move a few nodes: sometimes any of the nodes will move properly, sometimes they won't
From the Shape Editor docs:
Quote:It should be noted that the Shape Editor tool is not intended as a replacement for a fully-functional 3D modelling application, and as such, it only allows the non-animated transforms of the shape nodes to be edited. That is, the node transforms when the shape is in the root pose.
You cannot use the Shape Editor tool to define new animation keyframes. For this reason, it is recommended to edit node transforms only when the <rootpose> is selected in the Sequence Properties list. Node transforms can be edited when any sequence is selected, but the results may not be as expected, since animated parent nodes will affect the node transform as seen in the Shape View.
I suspect you were editing animated nodes (or children of animated nodes). Although in this case the Shape Editor may be operating "as designed" it is still a valid issue, since it is not clear to the user why the transform editing is not working. I think that since the Shape Editor does not (yet) support changing node transform keyframes, it should only allow node transform editing when in the root-pose.
#11
If you are setting start/end frames by editing the text boxes, make sure to press RETURN afterwards. This is standard behaviour across all the T3D editors (editbox changes are not applied until RETURN is pressed). That's not to say there may be another issue at work here, but I thought it was important to note this.
08/20/2009 (10:33 pm)
@Steve:Quote:1. start and end frames, once set, sometimes do not "take" or they simply revert to other values
If you are setting start/end frames by editing the text boxes, make sure to press RETURN afterwards. This is standard behaviour across all the T3D editors (editbox changes are not applied until RETURN is pressed). That's not to say there may be another issue at work here, but I thought it was important to note this.
#12
Do you mean the in/out buttons just above the slider track? When I click them the text field does change.
08/20/2009 (10:42 pm)
@mb:Quote:OT:It would be nice if the sliders changed the start/end frames in the text fields also.
Do you mean the in/out buttons just above the slider track? When I click them the text field does change.
#13
08/21/2009 (3:42 am)
note to self: read shape ed. docs.
#14
The problem seems to be I have two box.cs files. One is in the datablocks directory, the other was created by T3D and is in my objects directory art\shapes\Test and contains the sequence info. When I create a new sequence it saves to the box.cs file in the objects directory art\shapes\Test. Also I am changing the datablock to StaticShapeData in the \art\datablocks file and the file created by T3D creates a datablock: singleton TSShapeConstructor(BoxDae). Is this how it's supposed to be? I don't think I need two .cs files for this object. But how else can I have a scripted object in the scripted tab with all the functions for that object and also have the sequences? This is very confusing.
08/23/2009 (1:42 pm)
I am wanting to create a scripted object. To do this in T3D, from what I see, is to create a .cs file and stick it in the game\art\datablocks folder and then to exec it in the datablockExec.cs file. Now I can put my object in-game via the script and see them in the Scripted tab.The problem seems to be I have two box.cs files. One is in the datablocks directory, the other was created by T3D and is in my objects directory art\shapes\Test and contains the sequence info. When I create a new sequence it saves to the box.cs file in the objects directory art\shapes\Test. Also I am changing the datablock to StaticShapeData in the \art\datablocks file and the file created by T3D creates a datablock: singleton TSShapeConstructor(BoxDae). Is this how it's supposed to be? I don't think I need two .cs files for this object. But how else can I have a scripted object in the scripted tab with all the functions for that object and also have the sequences? This is very confusing.
#15
08/23/2009 (1:43 pm)
T3D created file after adding a sequence://--- OBJECT WRITE BEGIN ---
function BoxDae::onLoad(%this)
{
%this.addSequence("ambient", "mySequence1", "0", "36");
%this.setSequencePriority("mySequence1", "5");
%this.renameSequence("ambient", "__backup_ambient");
%this.addSequence("__backup_ambient", "ambient", "36", "49");
}
singleton TSShapeConstructor(BoxDae)
{
baseShape = "art/shapes/Test/Box.dae";
upAxis = "DEFAULT";
unit = "-1";
canSaveDynamicFields = "1";
};
//--- OBJECT WRITE END ---
#16
08/23/2009 (1:47 pm)
tests.cs file in the datablocks directory:datablock StaticShapeData(box)
{
category = "Misc";
shapeFile = "art/shapes/Test/Box.dae";
};
function box::onAdd(%this,%obj)
{
%obj.playThread(0,"ambient");
}
#17
All correct.
This is not a problem, and in fact is exactly how it is supposed to work. The two objects created in the script files (TSShapeConstructor and StaticShapeData) have quite different purposes, and are designed to work together, rather than one or the other.
First the TSShapeConstructor script. This one lives in the same folder as the model (DTS or DAE), and tells T3D first "how to load" the model, allowing you to tweak some aspects of the collada import process like overriding the unit scale or up_axis. It also lets you run some commands on the shape data after it is loaded (in the onLoad function) like add or rename nodes and sequences.
TSShapeConstructor operates on the model "in-memory" (rather than changing the DAE file), so you don't have to worry about overwriting your changes if you re-export the model. They'll be re-applied next time the model is loaded in Torque. You can use TSShapeConstructor with any other object class (Player, WheeledVehicle, TSStatic etc), since it is only operating on the model data.
Then we have the StaticShapeData script. This declares a datablock for a StaticShape object. This is an object that can be placed in a scene and can play an animation or whatever else you want to do. It makes use of the modified-in-memory version of Box.dae.
08/26/2009 (2:49 am)
Quote:I am wanting to create a scripted object. To do this in T3D ... Now I can put my object in-game via the script and see them in the Scripted tab.
All correct.
Quote:The problem seems to be I have two box.cs files.
This is not a problem, and in fact is exactly how it is supposed to work. The two objects created in the script files (TSShapeConstructor and StaticShapeData) have quite different purposes, and are designed to work together, rather than one or the other.
First the TSShapeConstructor script. This one lives in the same folder as the model (DTS or DAE), and tells T3D first "how to load" the model, allowing you to tweak some aspects of the collada import process like overriding the unit scale or up_axis. It also lets you run some commands on the shape data after it is loaded (in the onLoad function) like add or rename nodes and sequences.
TSShapeConstructor operates on the model "in-memory" (rather than changing the DAE file), so you don't have to worry about overwriting your changes if you re-export the model. They'll be re-applied next time the model is loaded in Torque. You can use TSShapeConstructor with any other object class (Player, WheeledVehicle, TSStatic etc), since it is only operating on the model data.
Then we have the StaticShapeData script. This declares a datablock for a StaticShape object. This is an object that can be placed in a scene and can play an animation or whatever else you want to do. It makes use of the modified-in-memory version of Box.dae.
#18
Now I have another question. Should the TSShapeConstructor & the StaticShape have the same name?
In my example they were different names:
08/26/2009 (2:31 pm)
Excellent! Thanks for clearing this up. Now I have another question. Should the TSShapeConstructor & the StaticShape have the same name?
In my example they were different names:
singleton TSShapeConstructor(BoxDae) datablock StaticShapeData(box)
#19
No. Different objects should never have the same name. The 'link' between them is the model path and filename.
08/26/2009 (8:43 pm)
Quote:Should the TSShapeConstructor & the StaticShape have the same name?
No. Different objects should never have the same name. The 'link' between them is the model path and filename.
#20
08/27/2009 (11:50 am)
oh ok, thats what I was wondering (how they are linked). This all makes sense to me now. Thanks again everyone! I don't feel like such a noob again.
Torque Owner TheGasMan
G.A.S. [+others]