Come disabilitare tutte le animazioni di Unity?


44

Se non è possibile, forse solo le animazioni di Dash show / hide. Mi ritrovo semplicemente ad aspettare animazioni inutili.

Risposte:


27

inserisci qui la descrizione dell'immagine

1. Perché non è possibile disabilitare questa animazione Dash in Unity 12.04

  • Sfortunatamente, l'animazione di dissolvenza / opacità e i tempi associati sono codificati nel codice sorgente di Unity.
  • Il codice effettivo può essere trovato in unity-5.12/plugins/unityshell/src/ShortcutController.cpp(questo è ciò che dovresti modificare e ricompilare per sbarazzarti delle animazioni)
  • Alcune righe di esempio da questo file che dimostrano il codice hard dell'animazione quando si utilizza il tasto Super per avviare Dash:

    30: const unsigned int SUPER_TAP_DURATION = 650;
    31: const unsigned int FADE_DURATION = 100;
    39:, fade_in_animator_ (FADE_DURATION)
    40:, fade_out_animator_ (FADE_DURATION)
    65: fade_in_animator_.animation_updated.connect (sigc :: mem_fun (this, & Controller :: OnFadeInUpdated));
    66: fade_in_animator_.animation_ended.connect (sigc :: mem_fun (this, & Controller :: OnFadeInEnded));
    67: fade_out_animator_.animation_updated.connect (sigc :: mem_fun (this, & Controller :: OnFadeOutUpdated));
    68: fade_out_animator_.animation_ended.connect (sigc :: mem_fun (this, & Controller :: OnFadeOutEnded));
    120: show_timer_ = g_timeout_add (SUPER_TAP_DURATION e Controller :: OnShowTimer, questo);
    149: self-> fade_out_animator_.Stop ();
    150: self-> fade_in_animator_.Start (self-> view_window _-> GetOpacity ());
    213: fade_in_animator_.Stop ();
    214: fade_out_animator_.Start (1.0 - view_window _-> GetOpacity ());
    244: .add ("timeout_duration", SUPER_TAP_DURATION + FADE_DURATION)
    246: .add ("about_to_show", (Visible () &&! Fade_out_animator_.IsRunning () && view_window_ && view_window _-> GetOpacity ()! = 1.0f))
    247: .add ("about_to_hide", (Visible () &&! Fade_in_animator_.IsRunning () && view_window_ && view_window _-> GetOpacity ()! = 1.0f))
    
  • Ovviamente, dovresti correggere questo problema e ricostruirlo con ogni nuovo aggiornamento di Unity ...

  • Nessuna quantità di ingerenza con Compiz può cambiare questo perché tutto è hardcoded al di fuori del plugin Compiz.

2. Alternativa A: passa a Ubuntu 2D

Ubuntu 2D ha un codice Unity Shell diverso e lì, l'avvio del trattino tramite Super è istantaneo e non anima nulla.

3. Alternativa B: utilizzare un collegamento personalizzato per avviare Dash facendo clic sul logo Ubuntu, bypassando così l'animazione

Possiamo sfruttare il fatto che l'animazione di opacità / dissolvenza non si verifica quando avvii il Dash tramite il pulsante "start" o, se il cursore si trova sopra / intorno alla barra di avvio, anche se premi Super:

inserisci qui la descrizione dell'immagine

L'animazione verrà ritardata fino a quando il cursore non si sposta effettivamente all'interno dell'area del trattino.

  1. xdotool consente l'automazione di clic / movimenti della tastiera e del mouse; installalo consudo apt-get install xdotool
  2. Apri Impostazioni ... Tastiera e vai alla scheda Collegamenti. Crea un collegamento personalizzato, nominandolo come preferisci e imposta il "Comando" su:

    xdotool mousemove --sync 25 60 click 1 --delay 100  mousemove restore
    

    inserisci qui la descrizione dell'immagine

    • Potrebbe essere necessario regolare leggermente le coordinate (25 60) se la risoluzione dello schermo è inferiore a 1024x768 o giù di lì.
  3. Fai clic su Applica. La colonna di destra dirà "Disabilita", fai clic su di essa e vedrai "Nuovo acceleratore": premi la combinazione di tasti scorciatoia. Non puoi scegliere Super , anche se lo disabiliti in Compiz, perché è bloccato da Unity. Ho scelto Ctrl+Alt+Zperché è vicino alla chiave Super.

  4. Ora il tuo collegamento dovrebbe lanciare il Dash molto, molto più velocemente.

    • Ecco una demo video di Youtube . Le prime volte (quando il launcher a sinistra si offusca e si scurisce) è con il tasto SUPER; quindi è con il collegamento personalizzato xdotool (notare che il programma di avvio non si anima più e il trattino appare più velocemente)

No. Intendo il Dash. L'equivalente del "menu di avvio" che invochi utilizzando il tasto Super.
Bucic,

Vedi aggiornamento, @Bucic ...
ish,

2
Grazie! La taglia è tua! +1 per Anwar Shah. Mi è piaciuta in particolare l'alternativa B :) Per quanto riguarda la manipolazione del codice, penso che aspetterò di vedere come verrà gestita in 12.10. Se lo stesso, allora c'è chiaramente qualche agenda idiota prevalente nel team Unity che li rende mettere le funzionalità di accessibilità come predefinite in Unity. Questa è l'unica spiegazione che ho potuto trovare. Ad ogni modo - idiota.
Bucic,

1
Sembra che Unity 2D e 3D siano stati uniti? Sembra che il metodo alternativo A non funzioni più dal 13.04 in poi (a meno che non mi manchi qualcosa, che spero di esserlo).
Dogmatix

1
@Supuhstar quindi per favore condividi la tua infinita saggezza. Perché non sono stato in grado di farlo.
Kissaki,

23

Installa Compiz Configuration Manager.

Ubuntu Software Center: Compiz Configuration Manager

o

Terminale: sudo apt-get install compizconfig-settings-manager

Una volta installato aprilo e arriva a Ubuntu Unity Plugin-> Experimental(Scheda)

Da lì si può impostare Lauch Animation, Urgent Animationed Dash Blura `Nessuno.

Impostare Hide Animationsu Slide only.

Se lo desideri, puoi modificare il pannello e la trasparenza del trattino in modo che siano completamente opachi.


Quindi capisco che è impossibile disabilitare anche solo l'animazione Dash. Solo 'ridurlo'. Mentre ci siamo, l'impostazione 'Nessuna sfocatura' non darà sfocatura, ma il tratteggio sarà trasparente, anche se il parametro 'Opacità' è stato impostato su 255 nella finestra di dialogo Colore tratteggio.
Bucic,

Ad Ángel Araya e Dune: Ragazzi, avete fornito risposte ma dai miei test non hanno portato all'animazione Dash disabilitata. Se sei sicuro che lo facciano e il fallimento è da parte mia, per favore parla.
Bucic,

2
Basta deselezionare la casella di controllo "mostra animazioni" in ccsm. L'ho fatto per anni perché odio le animazioni egregie.
user72421,

Aggiungi una nota per fare clic sull'impostazione "Abilita modalità grafica bassa" nelle impostazioni di Unity Plugin, questo sembra risolvere un trattino di unità lenta
rubo77

questo ha funzionato per me il 14.04 (posso disabilitare la sfocatura, lasciare "sfocatura statica" (che sembra essere più veloce) o mantenere la "sfocatura dinamica" predefinita.
Dimitry K

6

Scusa, non puoi. A questo punto (25 luglio 2012) con Ubuntu 12.04 LTS, NON esiste un modo semplice per disabilitare le animazioni di Unity. (almeno senza ricompilazione).

E non credo, ci sarà un'opzione per disabilitare le animazioni nelle versioni future. Perché, Uno degli obiettivi di Unity è quello di fornire un'esperienza utente piacevole e le animazioni sono considerate uno dei modi migliori per raggiungere questo obiettivo.

Una soluzione alternativa:

La possibile soluzione alternativa sta cambiando l'animazione del trattino in dissolvenza (causa, a mio avviso, le dissolvenze sono più veloci dello scorrimento). Potresti anche essere interessato a disabilitare le animazioni anche per tutte le finestre. Per farlo,

  1. Scarica e installa compizconfig-settings-manager

    sudo apt-get install compizconfig-settings-manager  
    
  2. Aprilo cercando o digitando ccsm nel trattino. Vai a unità plugSperimentale scheda e modificare le impostazioni per Nascondi le animazioni a solo Fade .

Se si desidera disabilitare le animazioni in tutte le finestre, è possibile disabilitare il plug-in Animazioni in ccsm. Se si desidera disabilitare la dissolvenza, disabilitare i plugin di Windows dissolvenza .

Spero che questo possa aiutare.


Modifica: come ha mostrato izx nella sua risposta modificata Si vede chiaramente che, le opzioni delle animazioni trattate sono codificate in Unity e quelle non possono essere modificate con alcuna opzione di configurazione, poiché quelle durate temporali non sono variabili e possono essere modificate. Quindi, questo significa che devi ricompilare l'unità cambiando quelle durate di tempo a 0 ms per disabilitare completamente le animazioni.


Ho provato tutto ciò che è stato suggerito in questa domanda, oltre a cose come tagliare alcuni valori di temporizzazione per un fattore di 0,1 e la mancanza di risultati sembra confermare ciò che stai dicendo. Se potessi, per favore, fornire un link ad almeno una fonte semi-ufficiale che confermi la tua affermazione (forse bug report del launchpad ...) la generosità è tua.
Bucic,

@Bucic Ho modificato la mia risposta indicando la risposta di izx come fonte di conferma. Vedi la sua risposta per i dettagli.
Anwar,

2

Per aggiungere alle istruzioni di Ángel Araya : Sono stato in grado di disabilitare tutte le animazioni deselezionando Animationse Fading Windows(praticamente tutto tranne Window Decorationnella Effectscategoria (scheda) in CompizConfig Settings Manager.


2
Ciò ha disabilitato solo alcune animazioni di Windows. Il trattino sembra ancora sfumare dentro e fuori.
Bucic,

1
Ad Ángel Araya e Dune: Ragazzi, avete fornito risposte ma dai miei test non hanno portato all'animazione Dash disabilitata. Se sei sicuro che lo facciano e il fallimento è da parte mia, per favore parla.
Bucic,

1

Penso che disattivare le finestre di dissolvenza sotto gli effetti in Gestione impostazioni CompizConfig possa fare la differenza in Unity. (Una sottile differenza di velocità, ma comunque una differenza.)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.