Как отключить все анимации Unity?

43

Если это невозможно, возможно, только анимация Dash show / hide. Я просто ожидаю анимации, которая бессмысленна.

    
задан Bucic 17.05.2012 в 22:33
источник

5 ответов

26

1. Почему вы не можете отключить эту анимацию Dash в Unity 12.04

  • К сожалению, анимация затухания / непрозрачности и связанные с ней времена жестко закодированы в исходном коде Unity.
  • Фактический код можно найти в unity-5.12/plugins/unityshell/src/ShortcutController.cpp (это то, что вам нужно было бы изменить и перекомпилировать, чтобы избавиться анимаций)
  • Некоторые примеры строк из этого файла демонстрируют жесткое кодирование анимации при использовании клавиши Super для запуска 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, &Controller::OnShowTimer, this);
    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))
    
  • Конечно, вам нужно будет исправить это и перестроить с каждым новым обновлением Unity ...

  • Никакое вмешательство в Compiz не может изменить это, потому что все это жестко закодировано вне плагина Compiz.

2. Альтернатива A: Переключиться на Ubuntu 2D

Ubuntu 2D имеет другой код оболочки Unity, и там запуск тире через Super мгновенно и ничего не оживляет.

3. Альтернатива B: используйте специальный ярлык для запуска Dash, нажав на логотип Ubuntu, минуя анимацию

Мы можем использовать тот факт, что анимация opacity / fade не выполняется при запуске Dash с помощью кнопки «start», или, если ваш курсор включен / находится в панели запуска, даже если вы нажмете Super:

Анимациябудетотложенадотехпор,покавашкурсорнеперемещаетсявнутриобластитире.

  1. xdotoolпозволяетавтоматизироватьщелчкиидвиженияклавиатурыимыши;установитеегосsudoapt-getinstallxdotool
  2. Откройте«Настройки»...«Клавиатура»иперейдитенавкладку«Ярлыки».Создайтесобственныйярлык,назовитеего,какхотите,иустановите«Command»в:

    xdotoolmousemove--sync2560click1--delay100mousemoverestore

    • Вам может потребоваться немного настроить координаты (25 60), если ваше разрешение экрана меньше 1024x768 или около того.
  3. Нажмите «Применить». В правой колонке будет указано «Отключить», нажмите на нее, и вы увидите «Новый ускоритель»: нажмите комбинацию клавиш быстрого доступа. Вы не можете выбрать Super , даже если вы отключите его в Compiz, потому что он трудно захвачен Unity. Я выбрал Ctrl+Alt+Z , так как он близок к клавише Super.

  4. Теперь ваш ярлык должен запустить Dash намного быстрее.

    • Вот видео-демонстрация Youtube . Первые несколько раз (когда пусковая установка слева размывается и затемняется) с клавишей SUPER; затем его с помощью специального ярлыка xdotool (обратите внимание, что пусковая установка больше не анимируется, а тире появляется быстрее).
ответ дан ish 29.07.2012 в 15:18
источник
23

Установите диспетчер конфигурации Compiz.

Центр программного обеспечения Ubuntu: Менеджер конфигурации Compiz

или

Терминал: sudo apt-get install compizconfig-settings-manager

После того, как он будет установлен, он получит значение Ubuntu Unity Plugin - > Experimental (табл)

Оттуда вы можете установить Lauch Animation , Urgent Animation и Dash Blur в значение «Нет».

Установите Hide Animation в Slide only .

Если вы хотите, вы можете полностью изменить прозрачность панели и прозрачности панели.

    
ответ дан Angel Araya 17.05.2012 в 22:46
6

Извините, вы не можете. В этот момент (25 июля 2012 года) с Ubuntu 12.04 LTS существует NO простой способ отключить анимацию Unity. (по крайней мере, без перекомпиляции).

И я не думаю, что в будущих выпусках будет отключена анимация. Потому что одной из целей Unity является предоставление приятного опыта пользователей, а анимация считается одним из лучших способов достижения этого.

Обходной путь:

Возможный обходной путь для вас - изменение тире анимации, чтобы исчезнуть (причина, по-моему, исчезает быстрее, чем скользящий). Вы также можете заинтересовать отключением анимации для всех окон. Для этого

  1. Загрузите и установите compizconfig-settings-manager

    sudo apt-get install compizconfig-settings-manager  
    
  2. Откройте его, выполнив поиск или ввод ccsm в тире. Перейдите на вкладку Плагин Unity Экспериментальная и измените настройки для Скрыть анимацию до Только Fade .

Если вы хотите отключить анимацию во всех окнах, вы можете отключить плагин Анимация в ccsm. Если вы хотите отключить Fading, отключите плагины Fading windows .

Надеюсь, это поможет.

Изменить: Как показал izx в его отредактированном ответе . Вы ясно видите, что параметры анимации тире жестко закодированы в Unity, и они не могут быть изменены с помощью каких-либо параметров конфигурации, поскольку эти временные интервалы не являются переменными, которые можно изменить. Таким образом, это означает, что вы должны перекомпилировать единство, изменив эти временные интервалы на 0 мс, чтобы полностью отключить анимацию.

    
ответ дан Anwar 13.04.2017 в 14:23
2

Чтобы добавить к инструкции Ángel Araya : мне удалось отключить все анимации, отменив выбор Animations и Fading Windows (в основном все, кроме Window Decoration , в категории Effects (вкладка) в диспетчере настроек CompizConfig.

    
ответ дан Dune 17.06.2012 в 06:16
1

Я думаю, что выключение затухающих окон под эффектами в CompizConfig Settings Manager может повлиять на Unity. (Тонкая разница в скорости, но все-таки разница.)

    
ответ дан Rob 08.02.2013 в 18:53