Jump to content

Animation Layers - głupie wyświetlanie


ca mel

Recommended Posts

Czołem drogie panie i panowie.
Pytania dotyczą warstw animacji w majce.

Czy jest możliwość wyłączenia podglądu krzywych z innych warstw, gdy jesteśmy na danej warstwie?
Zaznaczam kontrolkę animacji i widzę wszystkie inne krzywe, co bardzo przeszkadza przy wielu warstwach i dużych różnicach w krzywych.
Gdy kliknę nazwę warstwy (wybiorę ją znów, chociaż na niej jestem), widać tylko te krzywe, co trzeba,
ale po zmianie kontrolki (nadal na tej samej warstwie), znowu widać wszystkie krzywe z wielu warstw, póki znów nie kliknę nazwy aktualnej warstwy.
Może jest gdzieś opcja, żeby to wyłączyć?

Doszedłem do tego, że przynajmniej nie mogę ich zaznaczać, ale w ogóle przewlekle nie chciałbym ich widzieć, bo źle wpływają na autozoom graph editora i nadal też niechcący można im zaznaczyć tangensy.


Druga rzecz - w channel boxie nie widzę zaznaczonych na czerwono kluczy, gdy pracuję na warstwach.
Patrzę, że podpina się tam blender krzywych animacji i stąd z pewnością zmiana koloru.
Ale czy da się jakoś wyłączyć ten widok, czyli widzieć tylko czerwone klucze aktualnej krzywej,
a nie turkusowe oznaczenie, że kanał jest czymś sterowany?
Wydaje mi się, że w starszej majce (przesiadłem się z 2016 na 2020), było wszystko jak trzeba.


Na obrazku z załącznika narysowałem, o co mi chodzi.

Z góry dzięki 😆
 

_anim_layers.jpg

Link to comment
Share on other sites

Heh, jednak raz to działa, dwa razy nie.
Czasem, gdy jest bardzo dużo krzywych, np. od mimiki, nadal kaszani się to wyświetlanie i widać template z innych warstw.
Szczególnie gdy wybieramy kontrolki z jakiegoś rig pickera czy bezpośrednio z shelfa.

Machnąłem na szybko skrypt, który naprawia problem.

Gdy jest włączony - działa w tle i po każdej zmianie selekcji "klika za nas" nazwę aktualnej warstwy, więc jeszcze raz wybrana, nie pokaże zawartości innych.
Uruchomiony jeszcze raz, skrypt wyłącza swoje działanie.
Może się komuś przyda:



 

/// Anim Layer Batch Select ///
global int $setFocusAtCurrentAnimLayerId;
global string $selekcjaZapisana[]; clear $selekcjaZapisana;

proc int setFocusAtCurrentAnimLayer()
{
    global string $gSelectedAnimLayers[];
    global string $selekcjaZapisana[];
    string $ostatniAktualny, $ostatniZapisany;
    
    if ( size($gSelectedAnimLayers) )
    {
        $selekcja = `ls -os`;
        if (size($selekcja))
            $ostatniAktualny = $selekcja[size($selekcja)-1];
        if (size($selekcjaZapisana))
            $ostatniZapisany = $selekcjaZapisana[size($selekcjaZapisana)-1];

        if ($ostatniAktualny == $ostatniZapisany) return 0;
        
        $selekcjaZapisana = $selekcja;
        for ($myLayer in $gSelectedAnimLayers)
            animLayerEditorOnSelect $myLayer 1;

//    print ("Anim layer: "); print $gSelectedAnimLayers;
    return 0;
    }

}

if ($setFocusAtCurrentAnimLayerId)
{
    scriptJob -kill $setFocusAtCurrentAnimLayerId -force;
    $setFocusAtCurrentAnimLayerId = 0;
    inViewMessage -smg ("Animation layer: Focus <hl>Off</hl>") -fade -pos topCenter;
    print ("Animation layer: Focus Off.\n");
}    

else
{
    $setFocusAtCurrentAnimLayerId = `scriptJob -event "SelectionChanged" setFocusAtCurrentAnimLayer`;
    inViewMessage -smg ("Animation layer: Focus <hl>On</hl>") -fade -pos topCenter;
    print ("Animation layer: Focus On.\n");
}
/// finito ///
 

  • Like 2
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We are using cookies. Read about our Privacy Policy