1. 用 UE 虛幻引擎做個捏臉小功能~~

        共 1576字,需瀏覽 4分鐘

         ·

        2022-10-24 21:33

        最近在學(xué)習(xí) UE 相關(guān)的使用,正好看到一篇文章講解用 Control Rig 實現(xiàn)簡單捏臉功能,這種小而美的完整案例挺適合來練手的,涉及到了 UI、藍(lán)圖、動畫、骨骼等方面,值得推薦一下。

        從這個小功能出發(fā),在學(xué)習(xí)其他內(nèi)容時如果有個簡單案例可以將一系列功能點都串起來,那么往往會起到事半功倍的效果。

        正好我也實現(xiàn)了一個簡單捏臉效果,視頻號里分享一下:

        歡迎大家關(guān)注我的視頻號,后續(xù)考慮更多地以視頻形式來展示內(nèi)容。

        接下來就是這個捏臉功能的實現(xiàn)邏輯了。底層的實現(xiàn)很復(fù)雜,很多都是由 UE 虛幻引擎來提供的,但是理論上的實現(xiàn)很簡單,體現(xiàn)在個人上更多的是操作經(jīng)驗。

        UE 在導(dǎo)入人物模型時會帶有一個骨架,如下圖所示。人物的行動就是由一根根骨骼的變化來實現(xiàn)的,而面部的捏臉調(diào)節(jié)也是基于這一點。通過改變臉部相關(guān)骨骼的位置從而實現(xiàn)面部的變形,間接達(dá)到一個類似捏臉的效果。


        由于不會 3D 建模,使用了 UE 提供的免費模型。圖上這個就是 "虛幻爭霸:心菲" 模型了。


        想要調(diào)節(jié)人物的骨骼,就要用到 Control Rig 插件功能了。它是一套骨骼綁定系統(tǒng),可以對人物的骨骼建立相關(guān)的控制點,然后通過調(diào)節(jié)控制點的變換,就實現(xiàn)對骨骼的變換啦。

        如下圖所示,針對眉毛、眼睛、鼻子、臉頰、嘴唇這五個部位建立了相應(yīng)的控制點。


        制點的性質(zhì)、顏色以及位置都是可以調(diào)節(jié)的,建立的時候要選擇好相應(yīng)的骨骼位置。
        這個地方其實挺考驗審美的,因為我只是寫個小功能,就沒有用到很復(fù)雜的骨骼,但是很逼真的調(diào)節(jié)效果就需要反復(fù)打磨骨骼模型以及控制點了。

        然后就是在藍(lán)圖中把骨骼和控制點的變換進行關(guān)聯(lián),并且暴露相關(guān)的調(diào)整參數(shù)讓外部進行調(diào)整。

        由于 UE 的很多功能都是由藍(lán)圖來實現(xiàn)的,也不太好貼代碼,就只能貼個藍(lán)圖的連接了,比拼一下誰的藍(lán)圖連線方式更優(yōu)雅~~


        完成了骨骼和控制點的綁定之后,就可以在動畫藍(lán)圖中設(shè)置人物的姿勢是由 Control Rig 調(diào)整后的姿勢(哪怕就是調(diào)整了個臉部)。

        動畫藍(lán)圖中增加了幾個變量去調(diào)節(jié) Control Rig 中控制點的范圍,這幾個變量的值是由 UI 界面中的滑竿來調(diào)節(jié)的,并且在動畫每次更新時都會更新這些值。

        這里用代碼來實現(xiàn)了 UE 中的一個子系統(tǒng) FaceEditSubsystem ,主要功能就是用來存儲數(shù)據(jù)的值,并且它可以在動畫藍(lán)圖和 UI 藍(lán)圖中訪問到,這一點很重要,否則這兩個藍(lán)圖無法建立數(shù)據(jù)上的關(guān)聯(lián)了。


        接下來就是設(shè)置 UI 界面了,和用 Android Studio 操作界面差不多,拖一下控件綁定相關(guān)事件就好,具體效果就和上面視頻展示的一樣了。


        完成了上面全部功能之后,再把相機位置調(diào)整一下對準(zhǔn)人物的臉部,就可以看到運行效果啦。

        總結(jié)一下整體的實現(xiàn)就如上面所說,UE 虛幻引擎提供的功能很強大,強大到只要熟練一點使用就可以實現(xiàn)一點小功能了,而這些功能的實現(xiàn)都可以不需要一行行代碼的。

        那么問題來了,在這種情況下,程序員學(xué)習(xí) UE 怎樣才能算是有自己的獨特競爭力呢?莫非要比拼對 UE 軟件的使用熟練度嗎?那反而還失去了程序員的編碼能力,恐怕還是要深入其源碼,研究更多的底層功能實現(xiàn)。

        最后歡迎大家加入 音視頻開發(fā)進階 知識星球 ,這里有知識干貨、編程答疑、開發(fā)教程,還有很多精彩分享。


        更多內(nèi)容可以在星球菜單中找到,隨著時間推移,干貨也會越來越多?。?!


        給出 10元 優(yōu)惠券,漲價在即,目前還是白菜價,基本上提幾個問題就回本,投資自己就是最好的投資?。?!


        加我微信 ezglumes ,拉你進技術(shù)交流群

        推薦閱讀:

        音視頻開發(fā)工作經(jīng)驗分享 || 視頻版

        OpenGL ES 學(xué)習(xí)資源分享

        開通專輯 | 細(xì)數(shù)那些年寫過的技術(shù)文章專輯

        Android NDK 免費視頻在線學(xué)習(xí)?。?!

        你想要的音視頻開發(fā)資料庫來了

        推薦幾個堪稱教科書級別的 Android 音視頻入門項目

        覺得不錯,點個在看唄~

        瀏覽 112
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
          
          

            1. 日韩逼 | 一级婬片A看免费 | 男人舔女人的b | 黄网在线观看免费 | 撕开她的内裤慢慢摸的网站 |