當一個產品完成核心部分的需求之後,我們就可以準備開始研究細節的問題。
一個產品幾乎每個層面都可以談論細節,其中還包括表面上看得到的,以及表面上看不到的。表面上看得到的細節很簡單,花時間去做、去嘗試、去犯錯、去修正就好了。
而看不到的細節諸如產品定位、使用者體驗等等,除了依靠長期經驗的累積、研究與使用者反饋外,很難清楚的知道到底該怎麼去製作與修正。
平面、動畫、互動按鈕少了細節就少很多
筆者曾經做過一些平面設計,深刻的了解到「東西如果會被別人擺著看細節,那麼每個部分的細節都必須細心追求」。
一張海報傳單印刷出去,很容易就被複製了幾百份、幾千份,進而有幾千人、幾萬人觀看到,想到這點就不得不謹慎處理畫面上的每個細節。也因此,設計師常常花費一整個下午的時間,不為什麼,就只是盯著螢幕上的稿件、慢慢地去微調畫面上每個標題,每個文字的字型與顏色、尺寸與間距,字距與行距......。
筆者還曾經參與過一些動畫創作,深刻的體會到「東西如果要動起來,需要兼顧到的細節就會更多」,諸如動畫的十項法則、物體落地時的形變(不同材質的物體、不同動畫風格的表現還會影響形變度呢)、動畫角色表演時的預備動作等等,雖然不做不影響整體表現,但缺少了,就是會讓觀賞者覺得少了點味道。
而在參與使用者介面的製作後,再度深刻了解到「如果東西還能夠與使用者互動,那麼需要顧慮到的細節就更加倍增了」,因為我們永遠無法預期,使用者會在哪個時間點,做出超出你預期外的事情。
追求細節是很耗費時間的工作,但我們要有追求細節的態度。
設計互動按鈕的小技巧
以網頁上最常見的互動元素,「按鈕」來說,網頁上的按鈕一般包含了三種互動效果,分別為:Normal、Hover 以及 Active(Pressed)。通常狀況下,網頁設計師會利用三張圖片的替換來完成這個效果。(不論是使用三張獨立圖片,抑或是利用 CSS Sprite 皆是)
曾經有一段時期,Flash SWF 成為了網際網路的熱門寵兒,視覺化的創作介面減低了許多創作者的排斥感,成為很多網頁設計師必學的軟體之一。
在 Flash 中預設的按鈕元件,也提供了相同的互動效果:Up、Over 以及 Down(其中第四個 Hit 為感應區)。由於 Flash 的動畫特性,使用者可以在每個狀態中加入動畫元件,讓使用者與按鈕的互動中加上動態效果。
好了,現在我們可以替按鈕加上動態的效果,例如下面這個狀況:我們在 Over 裡面放了一個黑色色塊的動畫片段。當使用者把滑鼠移到按鈕上方就會觸發這個動畫效果:
在互動上的經驗活潑了不少,但是卻少了點什麼:由於 Over 區塊偵測的是「當滑鼠移動到區塊上時」觸發動畫效果,而當「滑鼠離開區塊時」卻沒有相對應的影格,導致整個動畫效果是硬生生的被截斷。
魔鬼藏在細節裡(The devil is in the details),如果我們想要取得完整的體驗,勢必必須考慮到這個容易被大家忽略的部份,也就是不只是游標移到按鈕上方的動畫效果,游標離開的效果也是個列入設計考量的細節之一。理想的狀態如下圖所示:
想要兼顧到這個效果,就不得不利用程式控制來達成目的了。(不論是 Flash 或是 CSS/Javascript 等等皆是)
透過程式語言的控制,的確可以有效的達到想要的效果、讓設計師的創作想像力更為廣泛,不過也有著無法善加利用圖片,以致創作彈性較低,以及另外一個瀏覽器與平台支援度的問題。
但你永遠無法預測使用者行為,於是你需要更多的細節 然而,就像我們剛剛提過的,「如果東西還能夠與使用者互動,那麼細節就倍增了」。像是同樣的例子,我們將動畫效果減速演出之後,就會發現另外一個問題:「如果使用者在動畫表演到一半的時候,滑鼠又離開別的地方呢?」
以下面的按鈕元件為例,動畫是會硬生生被切斷的(因為影格被強制跳出到下一個影格了)。
相對的,這麼做是較為安全的作法,因為「當使用者的游標離開感應區時,即強制中斷動畫表演」就不會遇到動畫排程的問題。想像一下,如果游標離開了,動畫還緩慢地表演的時候,使用者又快速的重複游標進入、離開、進入、離開的動作,是否又是另外一場災難呢?
考慮到這個問題,如果使用程式控制的情況下,就必須細心兼顧到這個部分的細節。
小小一個按鈕、搭配一個簡單的動畫,卻由於牽扯到與使用者互動的部份,即會牽扯出這麼多的「細節」來。
雖然追求細節很耗費時間,大部分的時候恐怕都會被認為「這部份不影響產品功能」、「這個不是產品的核心」等等而被草草帶過,但就像著名的設計師 Charles Eames 說過:「細節本身並非細節,而就是產品的精髓。」
他們那些經過千錘百鍊、精心校調設計的椅子款式,一直到現在都還是精采的設計呢。
圖片來源:pasukaru76, CC Licensed