爲什麼iOS的過渡動畫看起來很舒服?

AV功力對比:Android 上有能像 iOS Live Photo 那樣可以精準控制視頻的原生框架麼?之前一家公司請了位音視頻專家才搞定。

為什麼iOS的過渡動畫看起來很舒服?

控制

  • iOS 理解屏幕刷新對於交互的意義,給開發者提供了很多可以編寫交互式動畫、並且使用簡單的接口:例如,iOS 的 CADisplyLink 是交互式動畫的好幫手,很輕鬆的就可以根據屏幕刷新來「定義運動的方式,交互輸入控制運動的走向」,而 Android 提供的更多是「定義運動的方式和走向,要想控制你要自己寫」。用容易使用的插值器?改過幾個交互式效果,很不理想。用 Choreographer ?太麻煩了,感覺像自己在造動畫器。
  • 無法編程實現,就用幀動畫:國內很多 ROM 裡面的動畫其實就是序列幀動畫播放器。安卓開發者首先要保證序列幀體積小,編寫序列幀循環池來降低內存負擔,提高播放性能,而 FrameAnimation 這種動畫本身的控制能力就差。(對比去年熱點動畫,人工智能語音助手,圖形學 Siri vs 眾多序列幀 Form/Particular/Tao 球)
  • 事件監聽:就手勢而言,iOS 的 GestureRecognizer 能比 Android GestureDetector 提供了更多的控制,也能獲取到更多的對象信息,這為交互打下基礎。寫法上,iOS 也更舒服。iOS 大致步驟是:給對象添加具體的GestureRecognizer(點擊、拖拽 等),再定義這種手勢具體狀態下的行為(開始、變化、結束、取消)。而 Android,你需要根據手勢的具體行為去判斷是何種手勢,是拖拽?還是長按?雖然更自由一些,但是很容易不精確定義手勢。

工具/教育開發者

官方的 Quartz Composer 讓你在研究 Apple 圖形功能的時候還可以 WYSIWYG 的開發濾鏡

為什麼iOS的過渡動畫看起來很舒服?

Core Image Filter

  • Powered by Core Animation 的原型工具 Principle | Kite Composer | Core Animator
  • 除此之外,大量的 Mac 端開發者工具,從圖標、設計,再到原型,讓你舒舒服服的開發。
  • 每年的 WWDC 大量 設計結合開發的 Session 提高了 iOS Developer 的追求上限。

國內現狀

  • 要快:一快遮百醜,大部分消費者認為 「開啟速度快」就是最好的,媒體也一直在這樣引導用戶。

安卓開發者的取向:ROM 開發者很少研究安卓動畫部分知識,需要精力研究底層、優化、省電。沒有從運動公式、屏幕刷新、渲染整套流程思考安卓動畫問題,而且這也不能體現實力和績效。而業內的安卓高手,好像不喜歡在 ROM 公司工作。

設計師曲線萬能論:GUI 動畫問題的根源在於 GUI 平臺的侷限性,設計師很少了解繪製、動畫、圖形開發層面的具體實現,以為動畫曲線、彈性的實現是問題所在,而這只是整個過程的第一步,是問題的冰山一角。

脫離實際的產品設計流程:對安卓的理解僅限於本公司 rom 的控件,對原生安卓的瞭解十分有限。設計師在理想化的設計工具裡紙上談兵,卻對實際環境中所可能遇到的問題了解有限,讓提線木偶開發者上陣鬥惡龍,一方面是設計的偏差,一方面會導致情緒化的溝通。

市場因素:趕工,趕工,趕工,激烈的市場環境,動畫方面每個項目都很難耐心去好好做,去吃透這一部分的來龍和去脈,所以事後經驗梳理起來很難由淺入深。

熱點優先:熱點吃香,較為基礎的體驗沒人管,在基因不符,公司 DNA 不對的情況下追熱點(AI、VR、AR、語音),和各種熱點領域和各種巨頭合作,而這些合作卻沒有培養出內部相關技術的種子,最後幾乎都靠向高通、商湯、訊飛購買技術,有佈局,無成果。內部人員吃不透高級技術,那麼一旦遇到稍微複雜的動畫開發基本就束手無策,或者採用設計上最不優雅的實現。

對幀率的理解停留在早期影視行業

:移動端 60 FPS 才是標準,30 FPS 真的肉眼可見的不流暢,在不少 ROM 廠商的 Frame Animation 是 30FPS 渲染出來的。

為什麼iOS的過渡動畫看起來很舒服?

儘管安卓手機上出現了越來越多的新興技術,但 iOS 7 的基礎動畫體驗至今讓我感到難以超越,現在的安卓廠商都已經忘了對日常細節的追求,他們只在意新的熱點。

當你作為“製作者”,上手嘗試在安卓上優化這些體驗,卻發現難以逾越,有平臺的侷限,也有國內整體設計開發人員能力的侷限。


分享到:


相關文章: