讓界面動(dòng)畫(huà)過(guò)渡更自然
隨著軟硬件技術(shù)的發(fā)展,界面動(dòng)畫(huà)在我們的日常生活中隨處可見(jiàn)。桌面軟件、移動(dòng)應(yīng)用、云服務(wù)此刻回顧四周我相信你一定能發(fā)現(xiàn)他們。
在產(chǎn)品中動(dòng)畫(huà)未必越多越好,也未必越炫越好。不同的產(chǎn)品類型對(duì)動(dòng)畫(huà)的要求也不同。常見(jiàn)的動(dòng)畫(huà)主要承擔(dān)向用戶解釋界面與界面之間的關(guān)系,元素與元素間的關(guān)系以及特定元素的強(qiáng)化。
如果你關(guān)注過(guò)界面動(dòng)畫(huà),你可能見(jiàn)過(guò)以下這些動(dòng)畫(huà)曲線。摘自 http://easings.net/
他們表述了動(dòng)畫(huà)變化的程度與時(shí)間的關(guān)系。通過(guò)合理利用這些動(dòng)畫(huà)曲線背后的原理,可以讓動(dòng)畫(huà)看起來(lái)更加真實(shí)。
這里說(shuō)到我們要讓界面動(dòng)畫(huà)更自然。如何做到自然?只要遵循客觀物理規(guī)律以及人得視覺(jué)經(jīng)驗(yàn),動(dòng)畫(huà)就會(huì)看上去真實(shí)自然。
為什么要講動(dòng)畫(huà)函數(shù)?相信很多設(shè)計(jì)師看到下面的文章會(huì)的覺(jué)得太枯燥。
那我們回到產(chǎn)品研發(fā)過(guò)程,在產(chǎn)品里,常見(jiàn)的動(dòng)畫(huà)實(shí)現(xiàn)有這么幾種:
- 設(shè)計(jì)師逐幀繪制;開(kāi)發(fā)同學(xué)實(shí)現(xiàn)循序/循環(huán)播放邏輯。
- 設(shè)計(jì)師提供動(dòng)畫(huà)資源文件如(視頻、flash、gif);開(kāi)發(fā)同學(xué)將資源嵌入產(chǎn)品。
- 設(shè)計(jì)師提供動(dòng)畫(huà)形式、參數(shù)與元素;開(kāi)發(fā)同學(xué)完成動(dòng)畫(huà)實(shí)現(xiàn),如:html5/CSS動(dòng)畫(huà)。
文本想針對(duì)第三種形式,幫助設(shè)計(jì)師了解動(dòng)畫(huà)背后的科學(xué)知識(shí),可以有具體的參數(shù)與開(kāi)發(fā)同學(xué)溝通。
如果你熟悉物理課本里的運(yùn)動(dòng)公式,請(qǐng)?zhí)^(guò)第一部分。
運(yùn)動(dòng)動(dòng)畫(huà)
我們先從最簡(jiǎn)單的運(yùn)動(dòng)動(dòng)畫(huà)說(shuō)起。我們客觀物理規(guī)律還是得從牛頓第二定律說(shuō)起。F=ma,如果大家不明白這個(gè)公式,沒(méi)關(guān)系。
請(qǐng)?jiān)试S我不那么講究術(shù)語(yǔ)的嚴(yán)謹(jǐn)性。通俗點(diǎn)來(lái)說(shuō),就是運(yùn)動(dòng)動(dòng)畫(huà)響應(yīng)變化情況與執(zhí)行動(dòng)畫(huà)的物體本身有關(guān)。如果你想表現(xiàn)的物體是一個(gè)沉甸甸的,那么他們的起始動(dòng)畫(huà)響應(yīng)/參數(shù)的變化會(huì)比較慢。反之,物體是輕巧的,那么其起始動(dòng)畫(huà)響應(yīng)/參數(shù)的變化會(huì)比較快。
從圖上可以看到如果是相同的操作且移動(dòng)相同的距離,輕巧的所花的時(shí)間越短。
阻尼動(dòng)畫(huà)
提到阻尼,需要介紹三個(gè)概念:臨界阻尼、過(guò)阻尼、欠阻尼。
臨界阻尼
生活中一些高檔的門(mén)或櫥柜。他們?cè)陂_(kāi)合的過(guò)程中為了不造成太大的聲響,他們的機(jī)械結(jié)構(gòu)阻尼會(huì)盡量設(shè)計(jì)接近臨界阻尼。這個(gè)過(guò)程最容易讓人接受,不會(huì)感覺(jué)有外界干擾。過(guò)阻尼和欠阻尼,通常能讓你感覺(jué)到有一只隱形的手,阻礙或促進(jìn)運(yùn)動(dòng)。
過(guò)阻尼
從字面上會(huì)容易理解,就是阻尼很大,阻礙運(yùn)動(dòng)的發(fā)展。有些自動(dòng)門(mén)或電梯門(mén)在閉合的過(guò)程中,在最后段里往往需要更長(zhǎng)的時(shí)間。另外,記憶枕的恢復(fù)的過(guò)程也是過(guò)阻尼。
欠阻尼
阻尼不夠,繼而形成了振蕩的特征。生活中的一些彈簧門(mén),在關(guān)閉的過(guò)程中,會(huì)多次擺動(dòng),最終趨于閉合。
做一個(gè)比較細(xì)膩的界面動(dòng)畫(huà)時(shí)候,如果追求理性一些,可以把動(dòng)畫(huà)的成果拆解成三個(gè)階段。啟動(dòng)、運(yùn)行、收尾。設(shè)計(jì)師需要花更多的時(shí)間去考慮啟動(dòng)與收尾過(guò)程。
- 啟動(dòng)階段:體現(xiàn)力、質(zhì)量、環(huán)境,可以表現(xiàn)材質(zhì)的輕盈與厚重。
- 收尾階段:體現(xiàn)質(zhì)量、速度、環(huán)境。阻尼通常在這個(gè)階段體現(xiàn)。
舉個(gè)例子
請(qǐng)大家關(guān)注啟動(dòng)與收尾階段。
動(dòng)畫(huà)曲線僅作示意感受,可能與實(shí)際動(dòng)畫(huà)有所出入。
呼吸動(dòng)畫(huà)
呼吸動(dòng)畫(huà),常用于界面元素的提醒。
對(duì)于這個(gè)動(dòng)畫(huà),設(shè)計(jì)師最直觀的印象就是閃爍。在實(shí)施的過(guò)程中,對(duì)于閃爍一詞會(huì)被賦予不同的理解。
- 設(shè)計(jì)師眼中的閃爍:“漸顯 -> 漸隱 -> 漸顯 -> 漸隱”;
- 工程師眼中的閃爍:“顯示 -> 隱藏 -> 顯示 -> 隱藏”;
如何把動(dòng)畫(huà)做得更細(xì)膩,就在于如何將漸顯與漸隱的過(guò)程如何描述得更加仔細(xì)。
對(duì)于最早的漸顯、漸隱動(dòng)畫(huà),我首先想到了三角函數(shù)。
仔細(xì)觀察這個(gè)函數(shù),可以發(fā)現(xiàn)他的特點(diǎn)是在一個(gè)周期里是啟動(dòng)漸增、收尾減緩的過(guò)程。適合開(kāi)發(fā)利用簡(jiǎn)單代碼實(shí)現(xiàn)的動(dòng)畫(huà)效果。
有興趣的同學(xué)可以用原型感受一下。做閃爍動(dòng)畫(huà),用到三角函數(shù)其實(shí)就可以滿足大部分場(chǎng)景。
我在嘗試的動(dòng)畫(huà)的時(shí)候,把他作為呼吸函數(shù)來(lái)看,總覺(jué)得哪里還是不太自然。看起來(lái)“呼吸比較急促”。
我們來(lái)分析一下呼吸函數(shù)。
為什么看起來(lái)呼吸局促呢?請(qǐng)各位看官現(xiàn)在試試深呼吸,體會(huì)一下。你會(huì)發(fā)現(xiàn)在我們的在吸氣的階段,很快會(huì)就達(dá)到肺撐滿的狀態(tài),然后吐氣的階段可以持續(xù)很久。大體上比例分布是這樣的。
融合入三角函數(shù),將起始的漸增與收尾的減緩引入。感謝Don同學(xué)提供了一個(gè)完整的函數(shù)。
這個(gè)函數(shù)的周期為6,峰值出現(xiàn)在2。整個(gè)變化起始與收尾都是漸變過(guò)渡。
k=1/3,t=6, n={1,2,3,…}
大家感受一下
之前我利用了些業(yè)余時(shí)間,在Arduino硬件上試了一下。大家可以看一下視頻。我以為漸顯、漸隱的動(dòng)畫(huà)的是這個(gè)樣的:
簡(jiǎn)單三角函數(shù)的呼吸燈
其實(shí)應(yīng)該是這樣的:
使用呼吸函數(shù)的呼吸燈
其他
除了在動(dòng)畫(huà)變化過(guò)程中對(duì)客觀規(guī)律的描述外,對(duì)于用戶場(chǎng)景的還原也能增加自然感。
比如這個(gè)站點(diǎn)的checkbox。我們?cè)谌粘I钪校鎸?duì)紙質(zhì)的選項(xiàng),我們會(huì)選擇涂抹的方式來(lái)進(jìn)行選擇。
或者這樣刪除
更多效果,可以訪問(wèn)動(dòng)態(tài)checkbox。
寫(xiě)在最后的小工具
如果使用 Mac 的小伙伴,Apple 提供了一個(gè)繪制函數(shù)圖像的利器 Grapher。本文的函數(shù)均由此工具繪制。感興趣的同學(xué)可以嘗試用一下。
本文地址:http://m.likemindfilms.com/tutorial/di2153.html
您可能還喜歡
- Macaron 馬卡龍系色譜 ;附HC(16進(jìn)制碼
- 7個(gè)手機(jī)版網(wǎng)頁(yè)設(shè)計(jì)的原則
- 折紙多邊形網(wǎng)頁(yè)背景效果制作教程
- 龐門(mén)正道:好好玩耍的點(diǎn)線面(上)
- 網(wǎng)頁(yè)設(shè)計(jì)中的常見(jiàn)頁(yè)面布局方式
- WAP APP的柵格設(shè)計(jì)
- 八種很漂亮的排版方法和技巧分享
- 網(wǎng)頁(yè)設(shè)計(jì)的首屏標(biāo)準(zhǔn)你了解多少?
- 字體大寶庫(kù):40款為網(wǎng)頁(yè)設(shè)計(jì)師準(zhǔn)備的時(shí)
- 視覺(jué)設(shè)計(jì)分享—專題頁(yè)面設(shè)計(jì)篇
- 專訪:石墨文檔產(chǎn)品總監(jiān)羅穎
- UI設(shè)計(jì)不得不知的移動(dòng)端UI尺寸適
- 光音移動(dòng)設(shè)計(jì)規(guī)范 — 表單類
- 體驗(yàn)設(shè)計(jì)中的排序問(wèn)題
- 網(wǎng)頁(yè)設(shè)計(jì)精粹 網(wǎng)頁(yè)中那些迷人的按
- aliued:響應(yīng)式設(shè)計(jì)的現(xiàn)狀與趨勢(shì)
- 10個(gè)智能對(duì)象處理的ps技巧
- 網(wǎng)頁(yè)UI - 原子設(shè)計(jì)理論(上)
- 如何通過(guò)設(shè)計(jì)提升banner點(diǎn)擊率?
- 晉小彥視覺(jué)設(shè)計(jì)系列文章(二):全屏