遊戲中,那種主角走到特定位置,觸發的電影效果的即時演算動畫,它們是如何做出來的?以Unity為例?

是用腳本控制場景中物體的動作,還是事先錄製好NPC動畫?


題主說的都有,還可以有其他情況,這裡可以列下:

事件類,也就是題主說的腳本控制,主要做的事情是利用遊戲內已經有的資源,比如a走到b面前放一個技能,這個就是腳本直接控制就好了。這個一般策劃直接寫都可以。

高質量時間線類,也就是題主說的npc提前錄製的動畫,尤其是一過性的高品質的,比如這種

《天涯明月刀》實錄劇情 - 山寺之戰_天涯明月刀_騰訊視頻

一般就是非遊戲內直接有的資源,然後在一個時間線上去編輯,npc的動畫是一部分,還要加上特效,聲音等等,這個需要專門的美術組去做,畫分鏡,做動畫,配特效等等,整個一個做動畫片的流程。

套路類 :還有一種,可以稱作是套路類,比如:

Behind the Scenes of Cinematic Dialogues in #x27;The Witcher 3: Wild Hunt#x27;

這裡就是把npc的動畫總結幾種,鏡頭也是總結幾種,像樂高積木一樣,然後美術直接調用這些情況就好了。組合比較多的話,玩家感覺一直是很豐富的。

這種比較適合給出一些劇情引領,不需要特別奇怪的動作,主要是通過npc的典型動作(說話,哭笑。。。)結合多種典型鏡頭,以比較低的代價,營造代入感。

不同於事件類,事件類一般是寫npc的邏輯腳本,使用的是玩遊戲時候的功能。

reference:
Piotr Tomsinski,Behind the Scenes of Cinematic Dialogues in "The Witcher 3: Wild Hunt"


兩種都可以做,你說的這種其實叫引擎電影

個人推薦Asset Store Cinema Director這個插件,常見的操作都封裝好了,用可視化編輯器拖拖改改就行(用過AE的人很好上手


如果用 UE4 這個就非常簡單了,角色走到某一個位置,靠近一個 trigger, 觸發一個事件,然後播放一段Sequender 動畫。而且這個過程中還可以再Sequencer 裡面調整鏡頭的各種參數,跟真實拍攝幾乎一致,非常不錯的體驗。


最近就在製作這個。忙的不可開交。

理論上,2D 3D都是一樣的製作思路。提前在遊戲內製定好鏡頭位置,在時間軸上利用現有的美術資源:1 模型 2 動作列表 3特效 4 音效 音樂等 進行組合和排列。還要調用UI的對話框和文本配置。

當然也會遇到的問題,鏡頭K動畫, 動作和動作之間的銜接問題等等。


都可以,用腳本控制角色走路什麼也是可以的。

還有一種就是事先做好動畫,在觸發以後播放這個動畫。隱藏其他對象。這個好像unity有現成的功能。


在場景裡面創建一個 Collider,創建一個 C# 腳本並加入到 Collider 的 Component 里。

然後將 Collider 屬性 Is Trigger 鉤上,這時候,Collider 將不會產生物理效果。

當有一個可碰撞目標進入 Collider 的時候,將觸發函數 OnTriggerEnter(Collider other)。

你可以在函數中寫邏輯操控 Camera 以及觸發相應的 GameObject 動作。

最終遊戲的效果就是主角觸碰到 Collider,觸發 Camera 和相應的 GameObject 動作,最後就能變成電影效果的實時演算過場動畫了。

此外,如果想要模擬電影寬熒幕的效果,還可以在 UI 裡面創建一個黑色遮擋條(可以用純色圖片製作),將黑色遮擋條放入 Canvas 中,為 Canvas 添加 Canvas Group Component。當不需要電影遮擋條的時候,用 SetActive(false) Deactivate Canvas,當需要顯示遮擋條的時候再用相反的方法顯示遮擋條。


新版Unity的 timeline可以看下


推薦閱讀:

在上海,做U3D遊戲開發,工作5年半,期望薪水45K/月,需要怎樣的水平?
Unity4 的工程升級到 Unity5 都需要注意哪些事情?
如何看待King即將發布的遊戲引擎Defold?
看了會兒shader想問為啥不把光源也寫在shader里?
2d遊戲中如何實現類似光照的效果,類似燈籠,火啊?

TAG:遊戲開發 | Unity遊戲引擎 |