萬盛學電腦網

 萬盛學電腦網 >> 網頁制作 >> 交互設計 >> 如何准確的向工程師傳達動效設計?

如何准確的向工程師傳達動效設計?

 如何准確的向工程師傳達動效設計? 三聯

  隨著軟件與終端的發展,如今的用戶體驗設計中動效的作用正變得越發重要,也有越來越多的設計師開始嘗試讓自己的作品“動”起來。但在實際工作中,相信大家常會有這樣的疑問:怎樣才能將自己精心設計的動態效果,准確的傳達給工程師,避免實現的偏差呢?下面我想根據自己的經驗,拋磚引玉,和大家聊一下這個話題。

  試想一下,在一個沉靜的的夜晚,你正為一個界面的過渡動畫而苦思冥想,突然一道靈感之光穿越你的腦海,完美的方案浮現眼前。此刻你最想做的,恐怕不是翻閱開發文檔研究實現原理,“老子得立刻把它表現出來。”

  沒錯,我們是設計師,設計師要做的是可視化。對於動效來說,憑空描述永遠是隔靴搔癢,將自己心中的設計最快速的可視化,是實現的第一步。

  一、准確展示:視頻Demo

  視頻Demo是個不錯的開始,一段可以反復播放並在大部分設備上均可觀看的視頻,是讓別人快速理解自己想法的最佳媒介。制作視頻Demo,本人最常用的工具是After Effects。AE對於動效的控制與表現能力,至今無人能出其右,是我心目中最佳的概念設計工具。

  除視頻外,AE的另一個優勢是,它輸出的PNG序列幀素材可以直接應用到一些PC甚至移動端的軟件中,作為實現效果。

  二、操作體驗:交互原型

  視頻Demo的局限是無法交互,而很大一部分動效都是在用戶與界面交互時觸發的。這部分動效的啟動時機,與手勢的關系,僅靠視頻Demo就無法100%准確的傳達了。這時,如果能有一個可交互的原型,很多問題就會迎刃而解。

  對於可交互的原型(Prototype),網上已經有很多文章在討論,制作工具也五花八門(Flash、Adobe Edge、Quartz Composer、Keynote、Framer、Pixate、Form...),我們該如何選擇呢?對於這個問題,我主要看兩個點:1、制作好的原型是否便於多人分享。2、是否可以直接輸出可用於開發的參數。

  基於這兩點,我個人的第一個選擇是Flash。

  由於Apple的原因,Flash如今的境況可算是江河日下。但作為一個動效原型工具,它卻有一些獨特的優勢。

  優勢1:可以直接導入AE生成的序列幀素材。

  對於我這種以AE作為動效設計起始的人來說,這點太重要了。它意味著無需任何重復勞動,只需要在Flash中添加一些基於AS3.0的交互代碼,就可以完成原型的制作,並保證自己最初的設計思路在原型階段不打折扣的實現。

  優勢2:可以導出.apk或.ipa的安裝包,共享給任何有手機的人。

  由於本人的工作經常需要異地溝通,原型的可傳遞性就是個很關鍵的需求了(總不能把電腦快遞過去給人家看吧...)。Flash的打包發布功能,這時就派上了用場。做好的原型通過Air for Android打包一個apk文件,郵件發過去安裝在對方手機上,輕松又愉快。

  另外一些可關注的工具,還有Pixate和Form,它們都可以通過共享工程文件的方式遠程傳遞,還能通過官方App將原型投射在手機上實時預覽,缺點是只能做一些基礎的效果,創新一點兒的就搞不定了,不過他們都在不斷地迭代更新,尤其是後者,剛被Google收購,未來說不定會有快速的發展。

  我個人的第二個工具選擇,是Framer Studio。當我把制作好的原型拿給工程師看的時候,經常被問到這樣一個問題:“能不能把源碼給我們看一下?”這時氣氛通常會比較尴尬,因為Flash也好Form也罷,它們制作的原型只能起到演示的作用,而無法直接生成對開發有幫助的代碼。此時,除了報班現學Android或iOS開發外,還有沒有別的辦法呢?答案是:“有!” Framer Studio給了我們一線曙光。

  Framer Studio是一個純編程實現的原型制作工具,有很強的動效實現能力,它的語言是基於JavaScript衍生出的CoffeeScript。雖然語法與AndroidiOS有不小的區別,但僅就動效這塊,很多邏輯是可以共通的。

  當然,它的學習成本也會高一些,不過當你拿著一段Framer的源碼給工程師看的話,當中的一些動畫參數和實現邏輯,多少能給到他們些實際的幫助,所以付出和回報還是成正比的。關於運用Framer的流程,Twitter的設計師分享了他們的經驗,大家可以看下這篇文章:《Twitter視頻功能設計流程全程剖析》

  另外,如果你專注於iOS平台,也可以直接嘗試一下Origami,這是個由Facebook團隊開發的原型工具,通過鏈接節點式的操作,無需自己寫代碼,在它最新的更新中,已經支持導出可供iOS和Android使用的代碼,這篇文章做了介:《Introducing Origami Live》

  三、協助開發:參數文檔

  有了視頻Demo,有了交互原型,相信工程師們已經理解你要做什麼了,那他們是否就可以愉快的把動效實現了呢?答案是:不一定。一些簡單的動效,工程師或許可以憑經驗搞定。如果你的動效設計很復雜,涉及眾多的參數與速率變化,那僅憑你的描述與工程師肉眼的感覺,恐怕要出偏差。這時,就需要參數文檔的幫助了。

  想要自己的設計能被精確的實現,就一定要對實現的原理有所了解。根據實現原理,把對應的參數精確的寫出來,這就是參數文檔。對於動效來說,基本參數無非這三類:

  1、動畫的起始時間、持續時間(duration offset)

  2、變化的屬性(rotation position scale alpha)

  3、運動速率(interpolator)

  iOS與Android各自的程序語法不太相同,大家可以去官網翻看一下它們的開發者文檔,了解兩者在動效實現上大概的語法格式,然後對應著把這些參數標好,傳遞給工程師,他們就真正可以愉快的開發了。

  當然,開發過程中少不了和工程師的不斷溝通(一些如像素位置、不同機型屏幕比例的細節,包括可能出現的誤差),換位思考,不能丟給他文檔或demo之後做甩手掌櫃,那也是不負責任的表現。

  總結:

  簡單的說,要想准確傳達自己的設計可以分三步。

  第一步:要快速可視化。

  你可以選擇任何用的順手的工具,把自己的想法快速准確的呈現出來,就已經是成功的一半。

  第二步:最大限度的還原使用場景。

  如果是PC端,就在電腦上演示。如果是移動端,就在手機上演示。如果可操作,那最好做可交互的原型,當然,是在時間成本允許的條件下。

  第三步:把設計參數化,盡可能減少讓工程師憑感覺開發的情況。

  相信我,如果你不希望工程師憑感覺調UI顏色,那麼動效同理。一份精確的文檔,是你專業性的體現。

  最後我想提醒一下,本文提到了很多工具,而工具似乎有能讓人著迷的魔力。所以請注意了,千萬不要在追求工具的過程中迷失了設計的本源。電影《夜行者》裡有一句台詞:“想贏彩票的話,你得先賺夠買彩票的錢。”同樣,我們是設計師,想要工程師實現出酷炫的動效,你得先把它酷炫的設計出來。抓住一切機會提升自己的設計能力吧!那才是你最寶貴的東西。

copyright © 萬盛學電腦網 all rights reserved