가능하지 않은 경우 대시 표시 / 숨기기 애니메이션 일 수 있습니다. 나는 무의미한 애니메이션을 기다리는 자신을 발견한다.
답변
1. 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,이); 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", (표시 () &&! fade_in_animator_.IsRunning () && view_window_ && view_window _-> GetOpacity ()! = 1.0f))
-
물론 이것을 패치하고 모든 새로운 Unity 업데이트로 다시 빌드해야합니다 …
-
Compiz 플러그인의 외부에 하드 코딩되어 있기 때문에 Compiz를 방해하는 양은 이것을 바꿀 수 없습니다.
2. 대안 A : 우분투 2D로 전환
Ubuntu 2D에는 다른 Unity Shell 코드가 있으며 Super를 통해 대시를 시작하면 즉시 애니메이션이 적용됩니다.
3. 대안 B : Ubuntu 로고를 클릭하여 애니메이션을 우회하여 사용자 정의 바로 가기를 사용하여 대시를 시작하십시오.
“시작”버튼을 통해 대시를 시작하거나 커서가 실행기 표시 줄 주변에있는 경우 슈퍼를 누르면 불투명도 / 페이드 애니메이션 이 발생하지 않습니다 .
커서가 실제로 대시 영역 안에서 움직일 때까지 애니메이션이 지연됩니다.
- xdotool을 사용하면 키보드 및 마우스 클릭 / 동작을 자동화 할 수 있습니다. 함께 설치
sudo apt-get install xdotool
-
설정 … 키보드를 열고 바로 가기 탭으로 이동하십시오. 원하는대로 이름을 지정하고 사용자 정의 바로 가기를 만들고 “명령”을 다음과 같이 설정하십시오.
xdotool mousemove --sync 25 60 click 1 --delay 100 mousemove restore
- 화면 해상도가 1024×768 정도이면 좌표 (25 60)를 약간 조정해야 할 수 있습니다.
-
적용을 클릭하십시오. 오른쪽 열에 “사용 안 함”이라고 표시되고 클릭하면 “새 액셀러레이터”가 표시됩니다. 바로 가기 키 콤보를 누르십시오. Super 는 Unity에서 하드 캡쳐하기 때문에 Compiz에서 비활성화하더라도 Super를 선택할 수 없습니다 .
Ctrl+Alt+Z
슈퍼 키에 가깝기 때문에 선택했습니다 . -
이제 바로 가기가 훨씬 빠르게 대시를 시작해야합니다.
- Youtube 비디오 데모 입니다. 처음 몇 번 (왼쪽의 실행기가 흐려지고 어두워 질 때) SUPER 키를 사용합니다. 그런 다음 사용자 정의 xdotool 바로 가기를 사용합니다 (런처가 더 이상 애니메이션되지 않고 대시가 더 빨리 나타납니다)
답변
Compiz Configuration Manager를 설치하십시오.
우분투 소프트웨어 센터 : Compiz Configuration Manager
또는
단말기: sudo apt-get install compizconfig-settings-manager
일단 설치되면 그것을 열고 Ubuntu Unity Plugin
-> Experimental
(Tab)
거기에서 Lauch Animation
, Urgent Animation
및 Dash Blur
`없음으로 설정할 수 있습니다 .
(가) 설정 Hide Animation
에 Slide only
.
원하는 경우 패널과 대시 투명도를 완전히 불투명하게 변경할 수 있습니다.
답변
죄송합니다. 현재 Ubuntu 12.04 LTS 를 사용하는 시점 (2012 년 7 월 25 일)에는 Unity 애니메이션을 쉽게 비활성화 할 수있는 방법 이 없습니다 . (적어도 다시 컴파일하지 않음).
그리고 향후 릴리스에서 애니메이션을 비활성화하는 옵션이 없을 것이라고 생각합니다. Unity의 목표 중 하나는 즐거운 사용자 경험을 제공하는 것이며 애니메이션은이를 달성하는 가장 좋은 방법 중 하나로 간주됩니다.
해결 방법 :
가능한 대안은 대시 애니메이션을 페이드로 변경하는 것입니다 (원인으로는 페이드가 슬라이딩보다 빠릅니다). 모든 창에서 애니메이션을 비활성화하는 데 관심이있을 수도 있습니다. 이것을하기 위해,
-
다운로드 및 설치
compizconfig-settings-manager
sudo apt-get install compizconfig-settings-manager
-
ccsm 을 대시 로 검색하거나 입력하여 엽니 다 . Unity 플러그인 → 실험 탭으로 이동하여 애니메이션 숨기기 설정 을 페이드로만 변경하십시오 .
모든 창에서 애니메이션을 비활성화하려면 ccsm 에서 애니메이션 플러그인을 비활성화 할 수 있습니다 . 페이딩을 비활성화하려면 페이딩 윈도우 플러그인을 비활성화하십시오 .
이것이 도움이되기를 바랍니다.
편집 : izx가 편집 된 답변 에 표시된 것처럼 대시 애니메이션의 옵션은 Unity에서 하드 코딩되어 있으며 시간 옵션은 변경할 수 없으므로 기간 옵션이 변경되지 않으므로 구성 옵션으로 변경할 수 없습니다. 즉, 애니메이션을 완전히 비활성화하려면 해당 시간을 0ms로 변경하여 통일성을 다시 컴파일해야합니다.
답변
에 추가하려면 앙헬 아라야의 지침 : 내가 취소하여 모든 애니메이션을 비활성화 할 수 있었다 Animations
및 Fading Windows
제외 (기본적으로 모든 것을 Window Decoration
세 이하 Effects
CompizConfig 설정 관리자 카테고리 (탭).
답변
CompizConfig Settings Manager의 효과에서 페이딩 윈도우를 끄면 Unity에서 차이를 만들 수 있다고 생각합니다. (속도의 미묘한 차이이지만 여전히 차이가 있습니다.)