Tuesday July 29 scriptor mtg.

About Truespace Archives

These pages are a copy of the official truespace forums prior to their removal somewhere around 2011.

They are retained here for archive purposes only.

Tuesday July 29 scriptor mtg. // Collaboration

1  |  

Post by frootee // Jul 24, 2008, 6:59am

frootee
Total Posts: 2667
pic
We will be having a scriptor meeting Tuesday July 29 in the scriptorium.


If you are interested in learning about scripting and the Link Editor (LE) this is the place to be.


Here is the link for connection info:


http://forums1.caligari.com/truespace/showthread.php?t=4869


There is a lot of information there. I need to make some changes since trueplay will not work with the 7.6 servers at this point in time,

but all references to truespace will work.


I will try to pare this information down when I have time.


Please try to login to the shared spaces. If you have trouble please post here and we will help you.


We hope to see you there!


Froo

Post by frootee // Jul 24, 2008, 9:47am

frootee
Total Posts: 2667
pic
Here's a nifty little experiment we can discuss at the meeting. This is based on a Paused Activity Loop that was discussed a couple weeks ago.


Using a Paused Activity Loop (PAL) seems to be more efficient in shared space than using a Timer.


Using the jscript command, which I renamed to Keyframe_Record, we can run the activity, and record keyframes for our object(s) of interest.


When you load the scene into truespace 7.6, press the Play button on the Animation Editor (AE). You will see a cylinder following an elliptical path, while rotating. These keyframes were generated from the PAL because I have this truespace script command in the Keyframe_Record script command:




RsAnim.SetKeyFrame(Space.CurrentScene()+ '/Cylinder', keytime*10);



This is a new script command available in 7.6.


If you want to make changes, you need to connect the Matrix output connector from the Expanded matrix node to the Matrix input connector of the Cylinder. Previously I expanded the matrix connector of the cylinder.


Once you have done this, you can make changes to the BinaryOp and BinaryOp, 1 values (change the B parameters/connectors). Then press the Run Activity button. When you do this, keyframes are recorded for the object specified in the line of code listed above.


To play the animation, you must now disconnect the Matrix connection between the Expanded matrix and Cylinder matrix connectors. If you do not, the cylinder cannot move since it is still 'controlled' by the expanded matrix. Now, you can press Play on the AE again, to see your changes have taken effect.


If you want to change the frames at which keyframes are recorded, I would suggest you first delete the tracks recorded in the AE. Otherwise you may have very different values for keyframes at fairly close intervals, depending on changes you made. And you will get very funky animation results. :D Of course, this just depends on your amount of experimentation. :)


As we can see, the way I have this organized in the LE is kludgy, and, connecting and disconnecting links seems to be an unnecessary manual step; i.e., why do it manually when you can do it... automatically? This should be possible; there are commands described in the documentation which perform these connections and disconnections for us. I will try to get those incorporated into this scene so we can discuss that functionality as well.

I will also clean things up in the LE by encapsulating portions of the assemblage.


This one line of code, IMHO, is a very powerful little tool. We can create procedural animation by using timers and loops like this, and record the results to keyframes for playback in our scene later.

Post by Délé // Jul 24, 2008, 10:25am

Délé
Total Posts: 1374
pic
Nice Froo! It should be a fun meeting next week. :)

Post by frootee // Jul 24, 2008, 10:40am

frootee
Total Posts: 2667
pic
Cool! Lookin forward to it Dele!


Froo

Post by frootee // Jul 25, 2008, 12:09pm

frootee
Total Posts: 2667
pic
Update: Made scene a little more user friendly


Attached is the updated scene, KF_Loop3.RsScn.


The Run Activity and Stop Activity buttons have a little bit of script code in them now, so we don't have to manually connect and disconnect the expanded matrix to its associated node.


Run Activity button:



Node.ConnectTo(Space.CurrentScene() + '/InMatrixCyl', 'Matrix', Space.CurrentScene() + '/Cylinder', 'Matrix');

Activity.Run('%THIS_NAME%')



The Node.ConnectTo command creates a link between the specified connectors on the specified nodes.


Stop Activity:



Activity.Stop('%THIS_NAME%')

Node.Disconnect(Space.CurrentScene() + '/InMatrixCyl', 'Matrix', Space.CurrentScene() + '/Cylinder', 'Matrix')

Node.Value(Space.CurrentScene() + '/ActvLoop', 'Current iteration') = 0



The Node.Disconnect command deletes a link between the specified connectors on the specified nodes.


The Node.Value command sets a connector to a specified value. In this case, I want to reset the Current iteration connector to 0, since it is used in calculating the frame I want to set a keyframe at.


So now, I do not need to manually connect and disconnect the connectors when running the activity. :D

Post by frootee // Jul 28, 2008, 6:56am

frootee
Total Posts: 2667
pic
Just an update everyone.

If you want to learn about scripting and the Link Editor (LE) in truespace, the Tuesday night scriptor meeting is the place to be!


3DFrog showed me a quick efficient way to get to the scriptorium for the meeting. See? You can teach an old dog new tricks! :D


1. Click the Shared Space icon in truespace (the two eyeballs) in the lower right hand corner.


2. Type this in the top text edit window of the Shared Space dialog window that opened (you need the two forward slashes - thanks trueblue! :D)


//tpportal.caligari.com/1212


Now, login.


You will be taken directly to the Scriptorium, where the meeting is held.


Timer permitting, I will put together an interface for the script /node set, which will make it easier to use for users. Currently all functionality and activation is through the Link Editor, which is not a user friendly approach, admittedly. The reason is, this item is currently still under development. But it is important to have a user friendly interface easily accessible through the Panel tab in the interface. I hope to get that done. :D


So, bring your questions. Also, the meeting is open to anyone who wants to show their stuff too! This is meant to be an interactive meeting, so feel free to bring your own creations to these meetings as well. We can coordinate a schedule if there are a lot of contributions. :)


Ok, see you there!


Froo

Post by trueBlue // Jul 28, 2008, 7:23am

trueBlue
Total Posts: 1761
pic
Also new in tS7.6, you can append the name of the Server at the end.
You have to make the Chat panel wider to accomidate the characters as shown.
//tpportal.caligari.com/1212 Scriptorium

Post by frootee // Jul 28, 2008, 8:15am

frootee
Total Posts: 2667
pic
Cool thanks for the tip trueblue! Much appreciated.


I spent a little time working on a simple interface for this scene. Now, all we need to do is this:


1. Load scene

2. Switch the Library/Panel/Setting tab to: Panel

3. Open LE and select the Keyframe_Generator node

4. Observe the interface now pops up in the Panel tab. So now we don't have to look at the LE if we just want to Use the tool.


here's the file. At some point it would be good to add a widget to the scene so we can just click that widget, and the tool interface will show up in the Panel tab. That way users won't have to go to the LE at all. :banana:


Froo


Note: at present, if you want to create a new animation from scratch you have to go to the Animation Editor (AE), and delete the track from the object. There are script commands to do that automatically as well. I intend to build upon the interface, and add a checkbox which, when checked, will cause the tool to delete the desired animation clip from the object, when you press the Stop button.

Post by Steinie // Jul 28, 2008, 8:15am

Steinie
Total Posts: 3667
pic
Watch it Frootee and trueBlue your both showing different rooms in your portal addresses.
We don't want to lose the new user.

Post by frootee // Jul 28, 2008, 8:17am

frootee
Total Posts: 2667
pic
Copy that Steinie. Thanks. :)


Scriptor meeting will take place at:


//tpportal.caligari.com/1212


Not At:


//tsportal.caligari.com/1212

Post by trueBlue // Jul 28, 2008, 1:35pm

trueBlue
Total Posts: 1761
pic
Thanks Steinie, I fixed my post.

Post by trueBlue // Jul 28, 2008, 2:02pm

trueBlue
Total Posts: 1761
pic
I changed the Button scripts to use the selected object to make it a little more universal. Added Delete Animation Clip too.

Post by frootee // Jul 28, 2008, 2:45pm

frootee
Total Posts: 2667
pic
Cool Thanks Trueblue! Much Appreciated!


I was going to add that right after dinner anyways.. and now is, after dinner LOL! :p


See folks, this is what Collaboration is all about! :banana::banana::banana:


Froo

Post by frootee // Jul 28, 2008, 3:07pm

frootee
Total Posts: 2667
pic
As a note, one issue with this current implementation is, once I select an object in the scene, the encapsulated script object disappears from the Panel. So we have to start the encapsulated script object from within the LE.


Hm... how can we keep the encapsulated script object in the panel view?


Thoughts? ;)


Froo

Post by stan // Jul 28, 2008, 4:33pm

stan
Total Posts: 1240
pic
with your script object selected so it shows in stack, hold down ctrl and then drag the panel out of the stack..;) floating panels :cool:

Post by frootee // Jul 28, 2008, 4:57pm

frootee
Total Posts: 2667
pic
Ah Thank You Stan! I knew there was a way to do it, which was posted quite some time ago but I forgot. Thanks!


Works like a charm too! :D


Froo

Post by frootee // Jul 28, 2008, 6:14pm

frootee
Total Posts: 2667
pic
Ok I cleaned up the inner workings a bit. I encapsulated parts that belong together so it is much cleaner in the LE. That is, until you get down to the inner workings but that's where the software folks like to play! :D

Post by trueBlue // Jul 28, 2008, 8:21pm

trueBlue
Total Posts: 1761
pic
Okay here is the final piece of the puzzle you were looking for Frootee.
Added a (New to tS7.6) Bitmap Button which supports Tooltips, LMB commands, RMB commands, and Image overlay to open your panel in the Stack that is persistent until manually closed by user. Also included a 3D Button that you can drop into Shared Space that will open your panel as well.

Post by frootee // Jul 29, 2008, 1:56am

frootee
Total Posts: 2667
pic
Very nice trueblue! Thank you very much! :banana::banana::banana:


Yes this is much easier than having to go to the LE all the time.


Froo

Post by frootee // Jul 29, 2008, 11:29am

frootee
Total Posts: 2667
pic
Just a reminder folks; the scriptor meeting will start at 6 PM Caligari time / 9 PM Eastern time.


What we will be discussing tonight has turned out to be a collaborative effort. I posted something at the beginning of this thread and it has evolved with the participation of stan and trueblue. It looks a lot better, and is much more user friendly now than when it first started.


So come check it out. I think you'll find it to be a lot of fun!


See you there!


Froo

Post by 3dfrog // Jul 29, 2008, 12:35pm

3dfrog
Total Posts: 1225
pic
is it ok if I show up in my pajamas? :)

Post by frootee // Jul 29, 2008, 2:25pm

frootee
Total Posts: 2667
pic
Change of plans folks:

I cannot add stuff to tpportal currently so we will do this at the tsportal scriptorium.

How? Here's How:

1. Click shared space icon

2. in top text box, above User Name, type this:

//tsportal.caligari.com/1212

Then press the GO button on the right of that text window.

I apologize for the quick change of plans. I just realized tpportal is not setup right.

Froo
Awportals.com is a privately held community resource website dedicated to Active Worlds.
Copyright (c) Mark Randall 2006 - 2024. All Rights Reserved.
Awportals.com   ·   ProLibraries Live   ·   Twitter   ·   LinkedIn