作者:jeasonqiu,騰訊IEG品牌設計
| 導語 記2021年《Figma一站式設計交付》中提到,Figma本身是一個矢量設計軟件,所以個人認為Figma比較适用于制作一些偏扁平、卡通的遊戲UI風格。(以下僅個人臨摹練習使用,非官方内部源文件)
記得2021年《Figma一站式設計交付》中提到,Figma本身是一個矢量設計軟件,所以個人認為Figma比較适用于制作一些偏扁平、卡通的遊戲UI風格。
縱觀全網Figma基本都是To B 、To C類的産品應用,很少人會往這個遊戲這個方向研究了,因此我開啟了一段Figma針對扁平類遊戲UI設計的探索之旅,結合Figma Config 2022姗姗來遲的AutoLayout 4.0的使用,以英雄聯盟鮮明的海克斯科技風格代表性更高。(以下案例僅為個人示範,與官方産品效果及資源無關)
此次練習設計主要總結了一些設計技巧:
起初一個同事在大群裡問,像這種異形的漸變按鈕在Figma裡面做Autolayout組件嗎?
由于當時正在使用skewDat插件。于是就想到兩種解決辦法:
但其實以上兩種方法,都會有一些問題:
後來,在不斷的實踐過程中也發現了基于Autolayout 3.0更優的解法,類似于做點9圖的效果得到更好的設計延展(限高,寬度自适應/限寬,高度自适應)。在AutoLayout4.0發布後,這個方法有了絕對定位的加持,實現變得更容易了(寬高可自适應)。
異形設計的自适應在大多數To B 、To C的應用場景中,常規的按鈕如純色、漸變、幽靈、投影/發光按鈕 各種直角、圓角、全圓角,AutoLayout都能輕松的完成自适應。
但在遊戲設計中,按鈕的背景一般都不會做的規矩和太扁平,總會做一些和遊戲主題匹配的樣式,會有一些特殊的異形裝飾,類似海克斯科技裡除了常規的矩形按鈕,還有被圓和三角形切割的異形按鈕,因此也特意用Figma做了一些比較知名的遊戲按鈕來做驗證。
那具體應該怎樣才能做到自适應,同時文字和背景層能很好的分離切換呢?
AL3.0 & 4.0 中的實現原理其實早期在Figma官方介紹Autolayout 3.0的Playground文件中,就隐藏了一種思路:
仔細觀察這幾個頭像,通過父級定寬FixedWidth Autolayout SpaceBetween的方法,因此我們按鈕還是拆成一個文本結構層、一個背景拉伸層,并且一般按鈕來說都是定高的,隻需要水平自适應文本長度。借助這個點,結合Autolayout的Spaces Between 來完成按鈕和背景重疊一起的效果。
AutoLayout 4.0 組件屬性得益于負間距、絕對定位、堆疊順序、組件屬性的特性,可以省略一層文本結構層,通過組件屬性直接賦能在主按鈕上。背景層的處理使用絕對定位,以及約束填滿整個按鈕的大小,這樣就可以輕松實現寬高自适應的按鈕背景了。
剩下的重點是制作出可自适應拉伸的按鈕背景圖層即可。
自适應拉伸核心細節Figma中做自适應拉伸主要使用約束Constraints的Top、Bottom、Left 、Right和Top&Bottom、Left&Right進行定位以及布爾運算的Union、Subtract進行加減運算,這樣出的圖像既能夠自适應拉伸,也能夠保持一個整體同時方便調整樣式。
最終的效果類似CSS3 Border-Image 邊框圖像、Android 的 9-patch點九拉伸圖、iOS的Slicing 拉伸、Flutter的centerSlice。
(視頻中按Tab切換下一個圖層,Enter進入圖層,Shift Enter返回上級圖層)
按鈕重疊核心細節
當然也可以使用AutoLayout 4 通過添加組件屬性,一個組件就能完成。
注:如果出現背景層蓋住了文本層,交換一下圖層順序即可。
虛化蒙版細節
細心的同學會發現LOL這個Play按鈕在hover的時候,會有一些朦胧的煙霧流動效果。這個核心的細節點主要是把遮罩的描邊圖層加一層LayerBlur,這樣作為蒙版的時候就能有類似PS的虛化效果。
自适應面闆背景
在遊戲設計中,彈窗面闆一般都是固定幾個大中小尺寸的,這樣方便統一。從截圖可以看出,LOL手遊中基本上也就是有大中小三個基礎尺寸,也會有做定寬自适應高,定高自适應寬的彈窗。
有了前面的自适應拉伸基礎後,其實面闆背景就已經學會了,這樣就可以很方便地延伸出不同的面闆背景。
在AL4.0的加強下,這個面闆實現更輕松。在對文字内容的AL基礎上,隻需要給背景設為絕對定位并且設置約束Constraints的Left & Right和Top & Bottom,這樣就可以完美自适應寬高。
數字、字母動畫
在遊戲設計中,不乏使用數字增長的效果強調個人資産數據。
在過去的一些原型動畫設計工具如Flinto、Principle都沒奢望過能做數字滾動的效果,但Figma不一樣,組件内的交互讓我有了些想法。那在Figma中應該怎麼做呢?
數字滾動動畫我們可以簡單的分析思路:
最後在需要的地方直接調用Number to / 具體數系列的組件,在【-】狀态分别調整Delay延遲時間,讓字母錯開完成結束。
注意:
重複字母翻動動畫
2021全球總決賽中,有這麼一個影視包裝設計畫面 Make / Break ,那這個效果其實Figma也能輕松實現。
得益于文本繼承的特性,可以隻設計一個動畫組件就可以完成核心步驟。
特别說明的是:這個效果在原型播放約3次以後,會變慢(原因未知),可以按R來重置效果。
一些期望的Feature
基于上面的讨巧的方法,有了一些大膽的期望:
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!