SmartDancer-Performance HUD – Tips 2022

#################################

PERF-HUD and SD Timings

Here are 2 simple commands to READ and PLAY an SD sequence from the PERF HUD

*autofx
TRACE,off
1,SD=READ_SD_SEQ%1$
2,SD=PLAY_SEQ$
END

This reads sequence #1

Here is the *events nc.
TRACE,off
ELAPSED
1,ReadSeq1,1
2,PlaySeq,7
3,End,30
END

notice the 2nd event at 6 seconds allows for about 19 total lines (13 good lines) of SD sequence to be read.
before it tries to play. Try just reading the sequence to see how long it takes.

[22:54:24] (You): ….
[22:54:30] PE18a-r – Artiste SmartDancer – Controller – v12.45 – RC7: [SEQ] End of Sequence: *sequence1 – 13 Read. FREE Memory: 18454
[22:54:30] PE18a-r – Artiste SmartDancer – Controller – v12.45 – RC7: $$$

*sequence1
/* lineno, command, parm | elapsedtime or durationtime
/* Dance is WITHOUT at-sign and applies to a duplicated division (i.e. J-R and A-I have same division
/* Dance2 is WITH at-sign (@) – Division is WITHOUT pound-sign (#)

ElapsedOrDuration,elapsed
0,TraceSequenceTimes,on | 0.1
00,Hide | 0.2
00,GlowContr, 0.0 | 0.3
1,MoveController,4| 1
2,Dance,Riverdance | 2
3,FORMJR,ROWS2JR | 4
4,FORMJR,COLUMNSJR | 14
5,Dance,Riverdance2 | 25
6,FORMJR,FIVEFOURJR | 34
7,MoveController,2 | 35
8,FORMJR,SINGLEFILEJR | 36
9,FORMJR,LINEJR | 46
10,StopAll | 60
END

#################################

TIME

Allow enough time !

Assume a DDMoveTau,9 seconds.
How much time before the next command”?

Q: FORM (i.e. FORMJR,FORMAI,FORMALL)
A: 9

Q: JUNEs
A: 9

Q:SEMILEFT or SEMIRIGHT
A: 18

Q: READing a sequence of 20 statement lines + 4 comment lines followed by an end followed by a blank line and 5 more lines first time read could be a lot.  Subsequent times will be less.
A: 31

SmartDancer – WallClimb

WallClimb is a new method of changing the orientation of dancers in the X , Y, and Z  axis.  It has its practical use in better displaying a choreographers creative formations by giving the audience a better view.  The WallClimb can be  enhanced using arm-stretching animations and/or ribbons or other flashy attention-grabbing, limb-extending particles or attachments

See Quick-and-Dirty Demo Video ==> Artiste SmartDancer WallClimb Quick-and-Dirty Demo Video

Juning already reorients but only based on rotation around the Z axis and it has an AutoJune option

WallClimb  allows dancers to reposition themselves  and dance and do formations on other surfaces like walls and ceilings

 

WallClimb  involves new scripts,  and new entries in notecards.

There is also an optional script and notecard to be placed in a floor that allows the floor to accompany the dancers as they reorient.

 

******************

FIRST, You need to REPOSITION and reorient your SmartDancer Controller and then CAPTURE that new position and orientation using a new button on the SD menu called CaptureContr.  This will usually be 45 or 90 degrees.  180 degrees would be dancing on the ceiling.

[14:12:56] PE18a-r – Artiste SmartDancer – Controller – v12.42 – RC7: <0.00000, 0.00000, 3.36939>,<0.38268, 0.00000, 0.00000, 0.92388>

******************

SECOND, create an entry in the *animations nc for each new orientation:

/* moves for controller moves format is: Moves,(any descriptor),move-vector,rotationvector
/*MoveController,1,<0,0,1>,<.707,0,.707>
/* button-name | dance type (d=dance,p=pose,a=ao,f=favorite,x=other) | animation-name | duration | repeat-times 0 for continuous 1 to n for number of times

MoveController,1,<0.00000, 0.00000, 5.21411>,<0.70711, 0.00000, 0.00000, 0.70711>
MoveController,2,<0.00000, 0.00000, 5.04517>,<0.70711, 0.00000, 0.00000, 0.70711>
MoveController,3,<0.00000, 0.00000, 0>,<0.0, 0.00000, 0.00000, 1.01>
Riverdance | o | Riverdance | 0 | 0
Jive-3 | o | Jive-3 | 0 | 0
Flapper| o | flapper | 0 | 0

******************

THIRD, create a command in your SEQUENCE when you want the controller to move.  The number is the relative occurrence of the Controller-Move regardless of the number in the *animations nc. The next and subsequent formations will reorient themselves to the new orientation in the same way that Juning does.

ElapsedOrDuration,elapsed
0,TraceSequenceTimes,on | 0.1
00,Hide | 0.2
1,MoveController,1 | 1
2,Dance,Riverdance | 2
3,FORMJR,COLUMNSJR,A | 3
/*4,MoveController,2 | 15
5,FORMJR,ROWSJR | 17
5b,June,Left | 29
6,MoveController,2 | 40
6c,June,Right | 51
7,FORMJR,LINEJR | 62
8,StopAll | 83
END

******************
FOURTH, RESET your Floor if you are using one

******************

FIFTH, PLAY your sequence.  A new  relay button now exists to let you stop it before its completed.  It is the white-hand on the red background

******************

If you want the floor to also move, then place the new Artiste Floor script into your floor. The ChannelForFloor is fixed. You cant change it.  It is owner-only so does not matter if there is another floor with same channel.  Clicking on the floor gives you a button called Reset.  Use this when you need to change the ChannelFortSmartDancerFollower.   Also if something seems to be stuck, use it.

 

After your sequence has played, you can reposition the Controller and Floor if it exists to their home orientation using the new ReHome button off the Turns submenu.  This also plays the default formations for J-R and A-I.  They move at 3.0 seconds so if the last formation is too far away you might receive an error.

 

There is a new command called GlowContr
Example:
1,GlowContr,0.0 | 0.1
This turns the glow off

 

 

SmartDancer MAJOR New Feature == WalkForm & PoseForm!!!

An exciting new feature is coming!!!

Requires:
1 – New Anchor
2 – New SmartDancer Controller
3 – New Animesh scripts and notecards

(Also a few bug fixes).  Like avatars (poseballsit) not stopping when they should

*******************

I call it the WalkForm & PoseForm

SetWalkForm,(button-animation-name))
WalkForm
can be set “on” or “off“.

When on, you can tell it which animation (often walking type)  to use during formation transitioning.

What it does is automatically switch to your specified special animation during (at start of) formation transitions.  This special animation will be set using a new SetWalkForm,animation-name command.

When the formation has completed, it automatically reverts back to the previous backing animation. AutoWalk automatically FREEZES the current animation running just prior to doing the formation so it can be reverted back.  Also StartKillKeep is set to StartKeep.  So if you need these values to be different after a formation transition, be sure to UNFREEZE and/or change StartKillKeep to StartKill after you are done with your AutoWalks (I might set them back at the end of the walkform)

Also…

there is a
SetPoseForm,(button-animation-name)
PoseForm,(on/off)

PoseForm, if on, executes right after the WalkForm.   WalkForm must be on else PoseForm is ignored.

It is suggested to use the *animation entry to control the length of the PoseForm animation.

Example:
Pose1 | o | Stand1 | 3 | 0

This will do a 3 second pose after a walk. The walk plays thru the animation time (i.e. 9 seconds). Then the pose plays for 3 seconds.  Then the backing (original animation plays) animation plays again.

*****************

More excitement!!!

Formation Transitions

You can (always could) select which avatars/animeshes take part in a transition by using a fortunate serendipity feature of the JuneTargetJuneTarget (i.e.  JKLM) would say that only JKLM will participate in a formation-transition. (even though JuneTargets were meant to limit which dancers  participates in a June, it also limits who participates in a formation)

**************************

DEMO VIDEO  ==>Walk/Pose Form

Commands in *sequence notecard

/* lineno, command, parm | elapsedtime or durationtime
ElapsedOrDuration,elapsed

0,TraceSequenceTimes,on | 0.1
1,Hide | 0.2
2,Dance,Riverdance | 0.3
3,Division,BABABABAB | 0.4
4,SendToDiv,B | 0.5
4,SetWalkForm,Walk1 | 2
5,SetPoseForm,Pose1 | 3
6,WalkForm,on | 4
7,PoseForm,on | 5
8,JuneTarget,altj| 6
9,FORMJR,GRIDLINE4 | 9
10,StopAll | 25
END