Alternative Switch layer

Moho allows users to write new tools and plugins. Discuss scripting ideas and problems here.

Moderators: Víctor Paredes, Belgarath, slowtiger

Post Reply
User avatar
PatrickS
Posts: 55
Joined: Wed Feb 28, 2007 9:05 pm
Contact:

Alternative Switch layer

Post by PatrickS »

I have absolutely no knowledge of scripts and so I am not even sure if something like this can be done, but I was wondering if it would be possible to make an alternative switch layer which allows to have more then one layer visible at the same time? I think this would be a very useful feature.
User avatar
Rasheed
Posts: 2008
Joined: Tue May 17, 2005 8:30 am
Location: The Netherlands

Post by Rasheed »

No, that is not possible, but it probably is possible to synchronize one or several switch layers with a master switch layer, using master/slave layer scripts. For the casual observer it would appear to be almost the same as what you suggested.
User avatar
PatrickS
Posts: 55
Joined: Wed Feb 28, 2007 9:05 pm
Contact:

Post by PatrickS »

Thanks for the reply Rasheed though I am not sure how to proceed. Is this a script I can find somewhere or does it have to be scratchbuilt?

I would need it for a cut-out kind of character where I have bitmap heads with different mouths which I will switch for lipsync while bones in the switchlayer are animated for movement of the head. Also in the switchlayer is another switchlayer with the eyes which should be visible all the time and that can't be done right now. Would a script like you mentioned work in this case?

Also I was wondering about another thing. Would it be possible to have a switchlayer switch to a certain layer based on it's movement? So when the switchlayer's position is not animated it shows layer A and when it is moving it shows layer B?
User avatar
heyvern
Posts: 7035
Joined: Fri Sep 02, 2005 4:49 am

Post by heyvern »

No script needed.

What you do is put two or more group or bone layers inside a switch. Each of those groups can contain and show more than one layer.

When you activate a group or bone layer using the switch layer it shows that group which has two or more layers inside.

Of course no interpolation of the shapes.

-vern
User avatar
PatrickS
Posts: 55
Joined: Wed Feb 28, 2007 9:05 pm
Contact:

Post by PatrickS »

Heyvern, I'm afraid that won't work because I need the bones in the main switchlayer to affect the headshapes as well.

Does anybody have any suggestions about my other question?
User avatar
heyvern
Posts: 7035
Joined: Fri Sep 02, 2005 4:49 am

Post by heyvern »

You said you have a switch layer for the head and mouth as an image? The head and mouth are one piece and animate together?

The eyes are another switch layer correct?

The setup for your layers should change to this:

Top body skeleton layer - contains head bone
---> Head group or bone layer - bound to head bone
--------> Eyes switch/s
--------> head/mouth switch

The eyes and head/mouth switch do what ever the "head group" layer does. No need to bind them but you could if you want. Just add another bone to the "head group" layer and bind the switches to it.

With that set up you can switch the eyes and the head, the head can be animated by the head bone in the top skeleton. Bones can be placed in the "head group" layer to control the eyes switch layer of the mouth switch layer.
---------------------------------

You have to understand that switch layers are a "toggle". A very complex but simple "toggle". You can have one thing active. It only does one thing... turn off all the layers in it accept for one. A switch layer represents one layer from a choice of many. There is no way to override this with a script. It is the very nature of a switch layer. You would have to create a script from scratch and apply it to a group or bone layer... YIKES! Not worth it. ;)

A switch layer is like a radio. You can only listen to one station at a time. To hear two at a time you get two radios. You could have a guy on a station who has a radio in his studio listening to ANOTHER station (switch inside a switch).

But alas... even with all the new technology available we can only listen to one station at a time.

You can't have a switch show more than one layer because then... it doesn't function as a switch anymore. Where does the extra info go? Even if you could show more than one layer how do you tell the switch layer or even a script which two or more layers to show?

-vern
Post Reply