• 沒有找到結果。

3D互動敘事中以穿戴式裝置與虛擬角色互動之機制設計 - 政大學術集成

N/A
N/A
Protected

Academic year: 2021

Share "3D互動敘事中以穿戴式裝置與虛擬角色互動之機制設計 - 政大學術集成"

Copied!
86
0
0

加載中.... (立即查看全文)

全文

(1)國立政治大學資訊科學系 Department of Computer Science National Chengchi University. 碩士論文. 治. 立. 政 Thesis 大 Master’s. ‧ 國. 學 y. sit. Nat. 設計. ‧. 3D 互動敘事中以穿戴式裝置與虛擬角色互動之機制. er. io. Using Wearable Devices to Interact with Virtual. al. n. v i n Agents in C 3Dh Interactive U Storytelling engchi. 研 究 生:王玟璇 指導教授:李蔡彥. 中華民國一百零八年八月 August 2019. DOI:10.6814/NCCU201901172.

(2) 3D 互動敘事中以穿戴式裝置與虛擬角色互動之機制 設計 Using Wearable Devices to Interact with Virtual Agents in 3D Interactive Storytelling. 研 究 生:王玟璇. Student:Wen-Hsuan Wang. 指導教授:李蔡彥. Advisor:Tsai-Yen Li. 國立政治大學 資訊科學系. 學. ‧ 國. 立. 政 治 大. A Thesis. er. io. sit. Nat. y. ‧. 碩士論文. n. submitted to a Department of Computer v Science. i l C n NationalhChengchi i U e n g c hUniversity. in partial fulfillment of the Requirements for the degree of Master in Computer Science. 中華民國一百零八年八月 August 2019. DOI:10.6814/NCCU201901172.

(3) 摘要 近年來,越來越多的產業加入虛擬實境技術的開發與應用,例如職場訓練模擬或 遊戲娛樂等,但大多數的應用,通常是利用手把按鍵或給定的動作選項與環境中 的物件及 NPC 互動,故事體驗者選擇動作後,NPC 給予的回應多只是制式的罐 頭動畫或者是單純的語音文字輸出。 我們認為此般互動並不能讓故事體驗者真正融入虛擬世界當中,因此,我們 提議能夠利用穿戴式動作捕捉設備,讓玩家能以自然的動作當作輸入,並將虛擬. 政 治 大 呈現輸出,並讓相同的人物與場景,會因為與故事體驗者進行不同的互動而呈現 立. 人物的動畫模組透過參數化的方式,讓動畫模組能透過參數的變化而有更多元的. ‧ 國. 學. 出不同的劇情發展及動畫回饋。. 我們實現了一套系統,讓故事體驗者利用穿戴式裝置輸入肢體動作,系統解. ‧. 析動作後,決定玩家角色的動畫呈現,以及判斷是否有觸發 NPC 的互動事件,. sit. y. Nat. 根據互動過程的不同導向不同的結局。實驗利用穿戴式裝置與 VIVE 控制器兩種. al. er. io. 不同輸入媒介來做比較,受試者完成體驗後填寫問卷以及接受訪談,最後分析實. v. n. 驗結果,驗證了我們設計的互動方式是直覺且順暢的,並且受試者會想要嘗試不. Ch. engchi. i n U. 同的故事路徑,證明了我們的系統有重玩的價值。. i. DOI:10.6814/NCCU201901172.

(4) Abstract In recent year, more and more industries and companies are devoted to the development of Virtual Reality in applications such as work training and entertainment. However, most of them use traditional user interfaces such as buttons or predefined action sequences to interact with virtual agents. When a player has chosen her movement, the responses from NPC’s are usually fixed animations, voice, or text outputs. We think this kind of interaction could not allow players to immerse into a virtual world easily. Instead, we suggest using wearable devices to capture the player’s gesture and use her natural movements as inputs. In addition, we attempt to make the animation module of virtual character parameterizable in order to deliver appropriate, flexible, and diversified responses. We hope that the player can experience different story plots and perceive responsive animation feedbacks when they interact with the virtual world. We have implemented an interactive storytelling system which captures and interprets user’s body actions through wearable devices. The system can decide how to perform player character’s animation accordingly. The storyline will be adjusted if any NPC interactions are activated, thus leading to different story experiences. We have conducted a user study to evaluate our system by using traditional controller and wearable device for comparison. The participants evaluated the system by filling. 立. 政 治 大. ‧. ‧ 國. 學. sit. y. Nat. n. al. er. io. questionnaires and were interviewed after the experiment. The experimental results reveal that the interaction methods we have designed are intuitive and easy to use for the users, compared to the controller. In addition, the users are willing to try to play with the system multiple times, which confirm the replay value of our interactive storytelling system.. Ch. engchi. i n U. v. ii. DOI:10.6814/NCCU201901172.

(5) 誌謝辭 在這些年的資工與資科系生涯當中,第一次自己完成這麼大的專案,從當初偶然 在大學的電腦圖學與 3D 遊戲設計課程時對電腦動畫與互動領域產生興趣,到後 來研究所進入了 IMLab 並參加了多次計算機圖學研討會,以及修習了研究所中 許多相關的課程,對互動敘事領域有了更多的了解,跟指導老師討論過後訂定了 最後論文的方向,花費了許多心力研究過後終於成功通過了口試。 在碩士生涯裡,首先要感謝指導教授李蔡彥老師不離不棄的指導,常常在系. 政 治 大 展。因為我個人的理解能力並沒有那麼好,常常同樣的問題問了一遍又一遍,老 立. 統開發上遇到問題時,多虧老師的一番指點才能夠破解卡關的地方並繼續往下發. ‧ 國. 學. 師還是會細心的一次次解說直到我真正明白為止,非常感謝老師熱心的指導,我 才能成功的將論文及系統完成。還有很感謝系辦的助教們,當我拿行政事務上的. ‧. 問題去詢問時,或是報帳被退件退了好幾次時,都很熱心的指導我該怎麼處理。. sit. y. Nat. 還有也很感謝實驗室的學長姊們,一開始找指導教授時,詳細解答我的問題. al. er. io. 的學姐們;SuSu 學姊的論文與計畫上的成果,引導了我論文題目的方向,且在. v. n. 實驗室總務的工作上教了我很多訣竅;毅聖學長在修習碩士班課程以及實驗室事. Ch. engchi. i n U. 務上給了很多的幫助以及建議;還有也很感謝同屆的同學莞茜,上課時有許多同 組共同撰寫專案的機會,大家互相分工合作才成功的通關許多不熟悉的課程;最 後是學弟妹及實驗室的專題生們,莞瑜身為總務幫忙解決了很多報帳的問題,在 口試時幫助我招待了教授們,真的非常謝謝大家! 最後要感謝我的家人,在我學習的過程中給予我許多建議,以及在我感到疲 累不知如何行動時給予我關懷以及包容。少了任何一個人的幫忙,我就沒辦法成 功完成論文,非常感謝大家的支持與鼓勵,謝謝大家!. 玟璇 2019/8/28 iii. DOI:10.6814/NCCU201901172.

(6) 目錄 摘要................................................................................................................................. i Abstract ..........................................................................................................................ii 致謝辭.......................................................................................................................... iii 目錄............................................................................................................................... iv 圖目錄..........................................................................................................................vii 表目錄............................................................................................................................ x 第 1 章 導論.................................................................................................................. 1. 政 治 大. 1.1 研究動機.......................................................................................................... 1. 立. 1.2 研究目標.......................................................................................................... 2. ‧ 國. 學. 1.3 論文貢獻.......................................................................................................... 4 1.4 本論文之章節架構.......................................................................................... 5. ‧. 第 2 章 相關研究.......................................................................................................... 6. Nat. sit. y. 2.1 自然的體感輸入.............................................................................................. 6. n. al. er. io. 2.2 豐富且擬真的動畫呈現.................................................................................. 7. i n U. v. 2.3 動畫腳本語言.................................................................................................. 9. Ch. engchi. 2.4 互動敘事(Interactive storytelling)................................................................. 10 2.5 沉浸感(Immersion)........................................................................................ 11 2.6 小結................................................................................................................ 12 第 3 章 身體動作語言解析........................................................................................ 13 第 4 章 系統架構........................................................................................................ 18 4.1 系統使用之載具........................................................................................... 18 4.1.1 畫面呈現載具之介紹........................................................................ 18 4.1.2 互動載具的介紹................................................................................ 19 4.1.3 兩種載具合用時之調整.................................................................... 20 iv. DOI:10.6814/NCCU201901172.

(7) 4.2 系統架構....................................................................................................... 20 4.3 動作解析模組............................................................................................... 22 4.3.1 直接偵測輸入模式............................................................................ 22 4.3.2 指令輸入模式.................................................................................... 24 4.3.3 強制播放模式.................................................................................... 26 4.3.4 互動腳本............................................................................................ 26 4.4 故事管理模組............................................................................................... 29 4.5 動畫管理模組............................................................................................... 30. 政 治 大 4.5.2 動作排程............................................................................................ 31 立 4.5.1 動畫模組參數化................................................................................ 30. 4.5.3 互動式動畫........................................................................................ 33. ‧ 國. 學. 4.6 提示系統....................................................................................................... 39. ‧. 4.7 配合 VIVE 眼鏡之字幕設計 ....................................................................... 40. y. Nat. 第 5 章 實驗設計與結果分析.................................................................................... 41. er. io. sit. 5.1 實驗目標與對象........................................................................................... 41 5.2 實驗流程與範例故事................................................................................... 42. al. n. v i n 5.2.1 實驗流程............................................................................................ 42 Ch engchi U 5.2.2 VIVE 手把操作按鍵 .......................................................................... 43. 5.2.3 範例故事............................................................................................ 43 5.2.4 問卷設計............................................................................................ 53 5.2.5 受試者記錄........................................................................................ 53 5.3 實驗結果與分析........................................................................................... 53 5.3.1 問卷分析............................................................................................ 54 5.3.2 受試者記錄分析................................................................................ 61 第 6 章 結論與未來發展............................................................................................ 63 6.1 研究結論....................................................................................................... 63 v. DOI:10.6814/NCCU201901172.

(8) 6.2 未來目標....................................................................................................... 63 參考文獻...................................................................................................................... 65 附錄 1 實驗的故事劇本............................................................................................. 67 附錄 2 實驗的互動腳本............................................................................................. 68 附錄 3 實驗同意書..................................................................................................... 69 附錄 4 實驗流程說明................................................................................................. 70 附錄 5 問卷調查......................................................................................................... 71. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. vi. DOI:10.6814/NCCU201901172.

(9) 圖目錄 圖 1 辨識跑步動作之流程圖(截自[1])........................................................................ 7 圖 2 身體部位權重分配圖(截自[5])............................................................................ 8 圖 3 動畫演示範例圖(截自[7]).................................................................................... 9 圖 4 角色動畫設定 XML 範例(截自[9]) ................................................................... 10 圖 5 人體骨架圖 (截自 UNITY) ................................................................................. 13. 立. 政 治 大 ) ......................................................................... 14. 圖 6 人體左手骨架圖 (截自 UNITY. ‧ 國. 學. 圖 7 HTC VIVE PRO 及無線模組 (截自官網).......................................................... 19. ‧. 圖 8 PERCEPTION NEURON(截自官網) ................................................................. 20. sit. y. Nat. 圖 9 系統架構圖 ......................................................................................................... 21. n. al. er. io. 圖 10 上圖為右手碰到物件前,下圖為碰到時,物件周圍會散發紅光 ............... 24. Ch. i n U. v. 圖 11 互動 XML 腳本範例 ........................................................................................ 27. engchi. 圖 12 故事 XML 劇本範例 ........................................................................................ 29 圖 13 拆分身體部位來播放不同動畫之範例 ........................................................... 31 圖 14 動作排程範例示意圖 ....................................................................................... 32 圖 15 動作排程範例示意圖二 ................................................................................... 33 圖 16 NPC 面對玩家方向 ........................................................................................... 33 圖 17 SHOOT 範例-玩家與 NPC 距離近,NPC 開槍射擊 ........................................ 34. vii. DOI:10.6814/NCCU201901172.

(10) 圖 18 SHOOT 範例-玩家與 NPC 距離中,NPC 追逐玩家 ........................................ 35 圖 19 SHOOT 範例-玩家與 NPC 距離遠,NPC 左右查看,停止 SHOOT ................. 35 圖 20 SHOOT 範例-NPC 停止 SHOOT 後,繼續原本的動作,走向酒吧 .................. 36 圖 21 IK 範例............................................................................................................... 38 圖 22 提示系統 – 換衣服提示 .................................................................................. 39 圖 23 字幕範例 ........................................................................................................... 40. 政 治 大. 圖 24 實驗流程圖 ....................................................................................................... 43. 立. 圖 25 故事簡化分支圖 ............................................................................................... 45. ‧ 國. 學. 圖 26 範例故事-輔助系統說嫌疑犯在酒吧當中...................................................... 46. ‧. 圖 27 範例故事-輔助系統建議主角換衣服.............................................................. 46. Nat. io. sit. y. 圖 28 範例故事-主角走進服飾店碰觸服飾模特兒.................................................. 47. er. 圖 29 範例故事-主角自身的模樣換成該模特兒的模樣.......................................... 47. al. n. v i n 圖 30 範例故事-主角進入酒吧C .................................................................................. 48 hengchi U 圖 31 範例故事-嫌疑犯與酒保正在說話.................................................................. 48 圖 32 範例故事-嫌疑犯向主角伸出酒杯.................................................................. 49 圖 33 範例故事-主角伸出手抓住酒杯...................................................................... 49 圖 34 範例故事-嫌疑犯曝光自己的罪犯身分.......................................................... 50 圖 35 範例故事-主角抓住罪犯的手.......................................................................... 50 圖 36 範例故事-主角將罪犯帶到街道上的警車旁.................................................. 51 viii. DOI:10.6814/NCCU201901172.

(11) 圖 37 範例故事-主角與罪犯一起上車...................................................................... 51 圖 38 範例故事-GOOD END,罪犯被關到監牢內 ................................................. 52 圖 39 VIVE 手把操作性平均值折線圖 ..................................................................... 55 圖 40 穿戴式裝置操作性平均值折線圖 ................................................................... 56 圖 41 VIVE 手把沉浸感平均值折線圖 ..................................................................... 59 圖 42 穿戴式裝置沉浸感平均值折線圖.................................................................... 60. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. ix. DOI:10.6814/NCCU201901172.

(12) 表目錄 表一、故事體驗者在虛擬環境中之直接偵測輸入.................................................. 23 表二、故事體驗者在虛擬環境中之指令輸入.......................................................... 24 表三、互動腳本內可利用之參數.............................................................................. 28 表四、可抓取之目標 TAG .......................................................................................... 29 表五、動作指令清單.................................................................................................. 36. 政 治 大 表六、受試者基本資料.............................................................................................. 42 立. ‧ 國. 學. 表七、故事結局分支表.............................................................................................. 52. ‧. 表八、操作性調查...................................................................................................... 54. sit. y. Nat. 表九、故事性與系統功能調查.................................................................................. 57. n. al. er. io. 表十、沉浸感調查...................................................................................................... 58. Ch. i n U. v. 表十一、受試者受測時間與到達結局的次數.......................................................... 61. engchi. x. DOI:10.6814/NCCU201901172.

(13) 第 1 章 導論. 1.1 研究動機. 政 治 大. 傳統的敘事,如故事書、電視影集等,依靠作者、編劇、演員們各專業領域從事. 立. 者共同的努力,編撰精彩的故事,讓觀眾在觀賞過程中感受著角色們的喜怒哀樂,. ‧ 國. 學. 彷若自身也處在劇情當中。近年來,隨著科技的大幅成長及個人電腦的普及,觀 眾不再只是旁觀者,而是能有機會成為故事中的角色,與編劇者或演員互動,此. ‧. 類互動敘事的應用也逐漸受到重視,讓體驗者能透過不同的行動或選擇來影響故. y. Nat. sit. 事劇情的發展及結局。例如,利用鍵盤或遊戲把手按鈕控制角色的行動,擊敗敵. n. al. er. io. 人的動作遊戲;利用滑鼠選擇不同選項分支,而有不同結局的角色扮演遊戲等。. i n U. v. 而如今,藉著 Leap Motion、Kinect 等體感偵測裝置的問世,故事體驗者能夠透. Ch. engchi. 過更加直覺的動作與虛擬環境中的物件及角色互動,再加上 VR 眼鏡在視覺上的 立體呈現,讓故事體驗者彷彿真的像是虛擬世界中的一份子,在虛擬環境中活 動。 雖然近年來各方面的技術及設備都有著顯著的進步,但目前在虛擬人物動畫 產生的部分,大多數還是依靠透過動作捕捉裝置預先錄製好的動畫,當故事體驗 者達成某些條件時,依照程式的邏輯判斷該播放哪一個動畫。這樣的動畫回饋無 法因故事體驗者的動作速度、肢體幅度等變數而有不同的呈現,讓使用者在重複 體驗時感覺在做重複的事情,因而降低了故事體驗者的重玩(Replay)意願。. 1. DOI:10.6814/NCCU201901172.

(14) 另一方面,體感偵測輸入的裝置,目前有許多產品都已經十分成熟,能夠忠 實的將故事體驗者的身體姿態反應到虛擬世界的角色身上,但是要如何透過故事 體驗者的動作了解他的意圖,來讓虛擬人物做出適當的回應,還有許多的研究空 間。另外,虛擬世界中的環境及物品跟現實環境中的可能並不相同,因此在故事 體驗者想要做出需要特定物品才能達成的動作時,往往無法完成想要表現的動作。 例如想要讓虛擬角色呈現出坐在椅子上的行動,但現實環境中該處並沒有椅子時, 故事體驗者只能一直維持坐空氣椅的姿勢,才能在虛擬世界中表現出坐下的畫面。 為了解決這類物理上之限制,我們認為需要制定一套規則,將輸入區分為直接呈. 政 治 大 者的身體控制,去演繹出某些特定動作的「指令輸入模式」。 立. 現穿戴者肢體動作的「直接輸入模式」,以及透過指令讓虛擬人物脫離故事體驗. ‧ 國. 學. 1.2 研究目標. ‧. 如前所言,我們所發展的系統希望能讓故事體驗者透過身體動作的輸入,仿彿跟. sit. y. Nat. 與真人互動一樣去跟 NPC 互動,而虛擬世界中的虛擬角色所呈現出的動畫也必. al. er. io. 須是合理、順暢的。在 NPC 動畫回應方面,我們希望 NPC 能夠因應故事體驗者. v. n. 的行動而有不同的動畫回饋,讓同樣的故事大綱因為故事體驗者所作出的不同行 為而有多元的故事發展。. Ch. engchi. i n U. 為了得到上述成果,我們預計完成以下項目: (一) 藉著更自然的輸入方式,賦予故事體驗者更高的自由度: 傳統透過鍵盤或滑鼠進行輸入的方式,通常只能提供固定的幾種選項讓故事 體驗者做選擇,往往限制了故事體驗者體驗上的自由度;而 Leap Motion 雖然能 偵測手部的動作,但偵測所及的範圍十分有限;HTC VIVE 的手把搭配紅外線偵 測設備,大大增進了故事體驗者在虛擬環境中能表現的動作,可惜沒有辦法偵測 到手指或關節等部位較細微的動作。 2. DOI:10.6814/NCCU201901172.

(15) 因此我們希望透過穿戴式動作捕捉系統,讓故事體驗者在體驗故事時,能夠 利用最自然、如同在真實世界時與他人的肢體互動方法來進行輸入。 然而,此方法有時會因為現實世界中沒有虛擬世界中相對應的物件,而無法 完全比照利用,例如故事體驗者想要表現出坐在椅子上的動畫,但現實環境沒有 椅子可讓故事體驗者坐下,將導致無法合理演繹出想要的動作。為了解決這項問 題,我們將輸入分為兩種模式: 1.. 直接偵測輸入模式:. 根據故事體驗者的動作,直接回饋到虛擬角色的動作上。例如當故事體驗者. 政 治 大. 穿著穿戴式動作捕捉系統,並做出揮手的動作時,虛擬世界中跟故事體驗者相對. 立. 應的虛擬角色會同步做出揮手的動畫。. ‧ 國. 學. 2.. 指令輸入模式:. ‧. 透過系統設定好的身體指令,讓虛擬角色脫離故事體驗者的操控,演出體驗. y. Nat. 者所指定的動作,讓虛擬環境中的虛擬角色演出的動畫符合自然情況。舉例來說,. er. io. sit. 當故事體驗者手部碰觸椅子並蹲下時,系統判斷出故事體驗者想要坐下,因此開 始播放坐下的動畫,動畫完成後將虛擬角色的下半身維持在坐下的姿勢,此時不. al. n. v i n 管故事體驗者的下半身如何活動,都不會影響到虛擬角色的下半身,但上半身還 Ch engchi U. 是會根據感測到的故事體驗者姿態而變化。直到故事體驗者蹲下後再起身,代表 發出站立的指令,系統會開始播放從椅子上站起的動畫,完成後回到直接偵測輸 入模式。 (二) 人物動畫參數化,讓動畫更加有彈性: 當故事體驗者的輸入方式更多元化後,如果 NPC 還是只有一貫的制式回應 罐頭動畫,會造成使用者沉浸感的喪失,且如果每次故事體驗者做出相似行為時, NPC 都是給予相同的動畫回饋,會降低擬真性及重玩價值。因此我們希望將動 畫模組「參數化」,增加動畫的重複利用性及可變性。當使用者的輸入變化時, 3. DOI:10.6814/NCCU201901172.

(16) NPC 的動畫回饋會透過參數的改變來演出不同的回應效果。例如一個走路的動 畫,透過參數化,希望能夠調整走路的速度、步伐的幅度、前進的方向…等等, 讓 NPC 的動畫可因應他當下的感情而有不同的呈現,以增加 NPC 的擬真程度。. 1.3 論文貢獻 本論文主要達成了以下貢獻: (1) 以穿戴式裝置參與互動的 3D 互動敘事系統. 政 治 大 戴式裝置作為輸入的媒介,系統接收輸入後,自動判斷玩家角色動畫要呈現直接 立. 我們以 Unity 遊戲引擎做為整合介面,實作了一套系統,故事體驗者透過穿. 偵測輸入模式或是指令輸入模式,並判斷是否有觸發 NPC 之互動事件,如有觸. ‧ 國. 學. 發事件則依據互動腳本之設定來決定 NPC 的動畫回應,根據互動的發展影響後. ‧. 續劇情的呈現。. sit. y. Nat. (2) 動畫模組參數化. n. al. er. io. 透過 NPC 動畫的參數化,我們的系統讓 NPC 回應時,能根據當下的位置與. i n U. v. 狀態客製化動畫的產生。例如,即時依據玩家角色位置的不同去調整自身的方向,. Ch. engchi. 讓 NPC 面對玩家角色說話;或是 NPC 被抓住時,即時依據玩家手部的移動而跟 著移動,增加互動的真實感。除此之外,透過將 NPC 的動畫模組參數抽取至外 部 XML 檔案的方式,可以在不變更任何系統程式的情況下,對動畫的演出做出 調整。 (3) 利用實驗問卷與使用者記錄,驗證系統之可用性及故事的沉浸感 設計操作性及故事性問卷,並以各項問題的分數來評估系統的價值以及尚需 改進的部分。透過使用者記錄觀察故事體驗者的行為,分析體驗者可能會想要增 加哪些互動方式,做為未來改進的目標。 4. DOI:10.6814/NCCU201901172.

(17) 1.4 本論文之章節架構 在接下來的第二章中,將會介紹過去相關之研究,包含體感偵測與姿態辨識、動 畫合成、腳本語言的編撰等主題。第三章是身體語言之分析與動作設計。第四章 將會介紹此研究之系統架構以及系統各個模組的功能和各個模組之間的合作方 法。第五章為本研究之實驗流程與範例故事,還有實驗結束後之問卷分析。第六 章是結論與未來發展。最後是參考文獻的部分。. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 5. DOI:10.6814/NCCU201901172.

(18) 第 2 章 相關研究. 在本章節中,我們首先將介紹一些與體感輸入相關之研究成果,接著是不同的動 畫合成方式之研究,然後是動畫腳本語言的研究以及互動敘事的研究,最後是關. 政 治 大. 於沉浸感之定義及如何用問卷檢測體驗者沉浸感之研究。. 立. ‧ 國. 學. 2.1 自然的體感輸入. ‧. 傳統鍵盤滑鼠等選項式的輸入,在如今豐富的虛擬世界中已經無法滿足使用者的. y. Nat. 需求,而透過 Kinect、Leap Motion 等體感偵測裝置的普及以及其可開發性,有. n. al. er. io. 展和動畫的呈現。. sit. 許多研究都試著利用這些裝置,研究如何以更自然的體感輸入方法影響故事的發. Ch. engchi. i n U. v. 例如,Kistler [1]利用遊戲書的概念,在故事劇情中穿插能讓故事體驗者選 擇之劇情分歧點,透過在螢幕上顯示出希望故事體驗者在時限內完成的動作,藉 由 Kinect 偵測故事體驗者之身體動態,系統則依據故事體驗者動作成功或失敗, 或是不同的動作分支,來決定接下來的劇情發展。如圖 1 為辨識跑步動作的流程 圖,故事體驗者要在限定時間內,輪流抬起左右腳兩個輪迴,才算是完成跑步動 作。我們參考了此研究辨識動作的方式,將動作拆分成許多條件式,依序滿足所 有條件式才能成功觸發動作。 Mousas [2]透過 Kinect 裝置進行偵測,測試多種不同的動作指令,來當作虛 擬角色行動的觸發。例如前後揮動手部或是腳步原地踏步來當作虛擬角色前進的 6. DOI:10.6814/NCCU201901172.

(19) 指令,並根據揮動的快慢來決定是跑步或是行走;也可以利用單手揮動前進,而 此時故事體驗者的另一隻手可以做出其他的動作,例如揮手、拿東西等等,將身 體拆成多個部分,每個部分透過系統機制來決定要呈現已錄製之動畫輸出或是體 感偵測輸出。我們的系統在「指令輸入」模式時,需要同時在身體的不同部份播 放直接偵測到的體感姿態或是事先錄製好的動畫片段,此研究將身體拆分成多個 部分,並分開播放適合的動畫之機制,是我們的系統在此模式時參考的依據。 Rhodin [3]利用 Kinect 及 Leap Motion,透過事先指定好的體感姿勢輸入以及 輸入速率的快慢,來呈現相對應之虛擬動物不同的行為動畫,同時讓受測者測試. 政 治 大 為體感的輸入方式是較為有趣的。雖然我們的故事中的虛擬角色皆為人類,因此 立. 利用手把當作輸入,比較兩者之間的優缺點。問卷結果顯示,大部分的受測者認. ‧ 國. 學. 沒有參考此研究的控制方式,但我們認為此研究讓受測者接續體驗兩種不同輸入 工具,並利用問卷來比較哪種輸入方式較為有趣的方法是相當值得參考的。. ‧. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 1 辨識跑步動作之流程圖(截自[1]). 2.2 豐富且擬真的動畫呈現 以前電腦動畫的製作過程,需要大量的動畫師們一個個 frame 的建構出想要的畫 面,不僅耗時又費力,手工建構出的人物動作擬真度品質又相當不穩定。隨著動 作捕捉技術的日益成長,現在製作電腦動畫已經可以透過動作捕捉系統直接捕捉 7. DOI:10.6814/NCCU201901172.

(20) 真人的動作姿態,再匯入電腦中供遊戲引擎將錄製好的動畫片段套入虛擬角色身 上使用。後來,有些研究試圖利用物理模擬的方式產生人物動畫,但模擬出的動 畫擬真度並不高,且運算過程相當耗時。Thalmann [4]提到,他們分析其他論文 研究的成果,說明現今大部分的電腦動畫產業,還是以動作捕捉技術去製作動畫 的居多。但是以我們的系統而言,因為故事體驗者將加入故事的演出,事先錄製 好的動畫沒有辦法配合故事體驗者的身體姿態做即時的調整,需要額外透過例如 動畫合成(Motion Synthesis)的技術去做調整。 如 Tonneau [5]利用事先錄製的動畫片段,在虛擬環境發生改變時,偵測角色. 政 治 大 順的動畫合成。運用在會變動的即時環境中或是預先製作好的動畫裡想微調部分 立 姿態是否合法且平衡,如不合法則自動尋找新的立足點,並對一連串的動畫做平. ‧ 國. 學. 場地時,有相當不錯的效果。我們系統內的非玩家控制虛擬角色當環境發生改變 時,也會適當的調整自身的行走方向去迴避障礙物。. ‧. Shoulson [6]所完成的平台,將不同的動畫模式(例如運動、坐下、物理模擬. y. Nat. sit. 等)分開來做成陰影,再根據權重的不同來分配身體的哪個部分要呈現哪個陰影。. n. al. er. io. 例如在虛擬角色走路到目的地的途中,下半身的權重會給予 locomotion 較高的權. i n U. v. 重,讓虛擬角色的下半身維持走路的動畫,但同時上半身可以完成其他的動作,. Ch. engchi. 例如 Reach(手部)、Gaze(頭部)。如圖 2 所示,透過不同權重值的分配,影響最 終虛擬角色所呈現出之動畫。我們系統中的 NPC 動畫,參考此研究的方法將虛 擬角色身體拆分為多個區塊,並透過權重的不同來指定每個區塊要使用哪種動畫 模式。. 圖 2 身體部位權重分配圖(截自[5]) 8. DOI:10.6814/NCCU201901172.

(21) Kapadia [7]則藉由分析虛擬角色動畫資料庫以及虛擬環境地形,讓虛擬角色 在導航到目的地的途中,自動選擇最合適的行動,不只能夠利用跑、跳等基本動 作,還能利用蹬牆、攀爬等更複雜的動作來跨越障礙物。雖然我們故事的環境並 沒有這麼複雜之地形,但是我們需要在不同動作的切換之間做適當的處理,例如 正坐在椅子上的虛擬角色,要走到指定地點時,需要先播放起立的動畫,再播放 走路的動畫,減少動作突然跳躍的問題。 Mousas [8]之 CHASE 系統,讓使用者以文字輸入的方式,結合三種不同的. 政 治 大 動的物體名字等,由系統自動產生出對應的連續動畫,讓不懂得動畫製作技術的 立. 命令(do、goTo、interactWith)搭配不同的參數輸入,例如不同的目的地、想要互. 一般使用者也能輕鬆的創造出一部完整的動畫。如圖 3,動作參數輸入依序為:. ‧ 國. 學. task[1] = do(wave hand, handR, 3); task[2] = goTo(ball, walk).do(wave hand, handL);. n. al. er. io. sit. y. Nat. hand, handR, 2);. ‧. task[3] = interactWith(ball, punch, handR); task[4] = do(jump); task[5] = do(wave. Ch. engchi. i n U. v. 圖 3 動畫演示範例圖(截自[7]). 2.3 動畫腳本語言 為了擴展動畫的重複利用性,將動畫的參數提取出來,變更為可藉由外部的腳本 對動畫參數做變化,再透過系統讀入參數並輸出為動畫的方法是相當有價值的。 9. DOI:10.6814/NCCU201901172.

(22) 例如楊奇珍 [9]設計了一套 XML 腳本語言,讓故事體驗者能夠透過編撰 XML 腳本,來改變故事的流程或是動畫之呈現,透過故事圖、故事鏈結、故事場景的 拆分,在修改故事時能對特定的部分做修改,方便編輯。圖 4 即為角色動畫設定 之 XML 腳本範例,可設定演出該動畫之演員、動畫開始的時間、臉部之表情等 等。故事體驗者體驗故事時,利用 Leap Motion 偵測故事體驗者的手部動作,根 據不同的手勢來決定走向哪一個劇情的分支,並在故事體驗者對劇情較不熟悉、 停頓較久時,適時出現提示來提點。畫面呈現部分,則是透過 VR 眼鏡的立體呈 現效果,讓故事體驗者能夠更加身歷其境。我們參考了此研究的 XML 腳本語言,. 政 治 大. 將 NPC 動畫參數化並撰寫至外部的 XML 腳本中,讓故事的編輯能更加方便。. 立. ‧ 國. 學. Nat. er. io. sit. 2.4 互動敘事(Interactive storytelling). y. ‧. 圖 4 角色動畫設定 XML 範例(截自[9]). 互動敘事涵蓋的領域相當廣泛,包含故事內容設計、角色動畫合成、人群模擬、. al. n. v i n 人工智慧虛擬角色、動畫語言、動作輸入設計等,都是互動敘事系統會涉獵到的 Ch engchi U. 領域。例如前面提到的 Kistler [1]讓故事體驗者透過肢體動作影響故事的發展, 或是楊奇珍 [9]利用手勢的不同來決定劇情的走向,Kipp [10]設計動畫語言讓角 色動畫能夠對應語音的時間,Funge [11]幫虛擬角色建構基本知識,讓虛擬角色 自動選擇最適合當下情況的行動,梁芳綺 [12]透過智慧型共同創作平台的設計,. 多個故事創作者能夠共同創作劇情,讓故事劇情擴展開來,蘇雅雯 [13]將 NPC 動畫回應分為三個層次,設計 NPC 與故事體驗者之間的互動,這些研究都涵蓋 於互動敘事領域。本研究主要著重在角色動畫合成與動作輸入設計的部分,希望 讓故事體驗者藉由自然的輸入方式跟 NPC 適宜的動畫回饋,增進體驗故事時的 沉浸感。 10. DOI:10.6814/NCCU201901172.

(23) 2.5 沉浸感(Immersion) 當故事體驗者可進行的互動變得更為自由,且 NPC 之回應更加靈活後,要如何 去測量判斷故事體驗者遊玩的感受,目前大部分是依靠測試完成後,請受試者填 寫問卷及訪談的方式,去調查結果的優劣,因此,問卷的內容設計便相當重要。 「沉浸感(Immersion)」常常在互動敘事的領域中被提及,但是不同的研究人員, 對於該名詞之定義可能不盡相同。像是 Brown [14]中提及,有些研究,將沉浸感 定義為完全融入生活中的過程;又有些研究,把沉浸感當作遊戲的本質;而一部. 政 治 大 相信自身處在與現實所在地不同的地方。最後,他們藉由訪談幾位玩家玩遊戲時 立 分虛擬實境的研究,更將存在的概念提升,將之定義為人的知覺與認知被引導去. 的狀態及情緒,分析結果後,將沉浸感分為三個等級,分別為:. ‧ 國. 學. 1. Engagement:玩家願意投資時間去玩該遊戲。此階段會受到玩家自身的遊. ‧. 戲偏好影響,以及遊戲的操作是否能讓玩家上手。此狀態下的玩家對於遊戲是有. sit. y. Nat. 興趣的,並且願意花時間繼續玩該遊戲。. n. al. er. io. 2. Engrossment:玩家的情緒會跟隨故事劇情而起伏,且停止遊玩時,玩家. i n U. v. 會覺得失落。要進入此階段,遊戲的結構相當重要,包含美術、有趣的任務、故. Ch. engchi. 事對話等,都是受試者所提到,願意讓他們繼續玩的要素。此狀態下的玩家對於 自身周圍環境的意識降低,全神貫注在遊戲上。 3. Total Immersion:玩家仿佛從現實中切離,忘了現實中的所有紛紛擾擾, 只關心遊戲的內容,就像自身真正處於遊戲的世界當中。要進入此階段,同理心 及氣氛是必要的,這裡的同理心並不是玩家對遊戲中的角色感到同理,而是仿佛 自身就是該名角色,對故事中的劇情有著身歷其境的感覺;而氣氛則是靠遊戲的 圖像、劇情、聲音等結合去營造出來的,且需要與遊戲角色的動作及場景相符。 Jennett [15]透過三種不同的實驗,分析統計問卷的答案以及受試者完成任務 11. DOI:10.6814/NCCU201901172.

(24) 的速度,驗證受試者在剛玩完較有沉浸感之遊戲後,回到現實世界中解答益智遊 戲的時間長度,比起剛玩完較低沉浸感之遊戲之受試者來的更久,代表受試者進 入較高的沉浸感後,要花較多的時間才能讓注意力回到現實中的事務上。另外, 這也驗證了他們設計的問卷能夠有效的測出受試者的沉浸程度。我們研究的沉浸 感調查即是利用此研究設計的問卷進行測驗,以驗證我們的系統是否能達到預期 的目標。. 2.6 小結. 政 治 大 動數位敘事的技術發展更加成熟 立 。但大部分研究著重在虛擬角色動畫的擬真度,. 上述許多研究皆已經十分完善,並實作出容易使用的平台及語言可供效法,使互. ‧ 國. 學. 或是利用高階語言來讓非程式設計師也能夠產生出自己的互動敘事劇本,僅有少 數關注依據故事體驗者輸入指令時的不同狀態,來讓 NPC 產生不同的互動反應,. ‧. 以及在同一個動畫模組上透過速度及方向等細微的調整,產生出不同動畫呈現等. sit. y. Nat. 方面。因此我們的研究希望在這兩部分上有所突破,並結合互動及動畫雙方面的. al. er. io. 成果,完成一套完整的互動敘事體驗情境,藉由穿戴式裝置的輸入以及 VR 眼鏡. v. n. 的視覺呈現,希望能夠提升故事體驗者之沉浸感,讓故事體驗者覺得自身真正處. Ch. engchi. i n U. 於該虛擬環境之中,並能用較為自然之方式互動。. 12. DOI:10.6814/NCCU201901172.

(25) 第 3 章 身體動作語言解析. 大部分的遊戲,係利用選項或是特定按鍵做出特定行動之方式,來讓故事體驗者. 政 治 大 體感偵測裝置的成本較高,另一方面當體驗者被要求做出指定動作以作為輸入時, 立. 參與故事的發展,較少有利用體感裝置進行互動敘事的應用,一方面可能是因為. 每個人的肢體模樣指定方式可能均不相同。因此我們的系統設計了幾種較容易完. ‧ 國. 學. 成且辨識率高的動作,讓故事體驗者能利用這些動作去影響故事的發展。另外,. ‧. 由於我們使用之裝置沒有震動回饋之功能,因此我們透過視覺上之動畫呈現或提. y. Nat. 示、以及聽覺上之提示音播放做為回饋,讓故事體驗者明確知道自己是否有達成. n. al. er. io. sit. 特定動作的觸發條件。. Ch. engchi. i n U. v. 圖 5 人體骨架圖 (截自 Unity) 13. DOI:10.6814/NCCU201901172.

(26) 本研究所開發之系統將人體骨架分為 56 個關節點。在圖 5 中,我們畫出了 人體中較大的 21 個節點,左右對稱部位將 Left 改為 Right,其餘名字相同。我 們將利用這些節點的動態即時資料,來判斷故事體驗者在體驗過程中,是否有滿 足特定動作的觸發。如第一章所述,為了讓體驗者表現出一些因為虛擬與現實環 境不同而難以表現的動作,我們將動作輸入分為「直接偵測輸入」與「指令輸入」 兩種模式,這些動作包含抓、揮手、走路、坐下、站起、校正等,本章中主要描 述我們的系統如何辨識出這些動作,而辨識成功後,在系統中如何運用將在第四 章節做進一步的介紹。. 政 治 大 樣所代表的意義相當不容易。我們的系統基於經驗規則(rule-based)之方式,觀察 立 如前面所述,一個指定動作可能有著無數種的肢體模樣,要如何辨識肢體模. ‧ 國. 學. 整理使用者在指定動作時,人體關節普遍會呈現怎麼樣的姿態,將該姿態的數個 關鍵節點設為比較的條件,在人體姿態達成指定條件時即觸發該指定動作。接下. ‧. 來將詳細介紹我們判斷這些動作的方式。. n. al. er. io. sit. y. Nat. (1) 抓:. Ch. engchi. i n U. v. 圖 6 人體左手骨架圖 (截自 Unity) 14. DOI:10.6814/NCCU201901172.

(27) 「抓」的動作可用來抓取物件或是其他 NPC 之手部,除了圖 5 的 LeftHand、 RightHand 手腕節點外,還會用到圖 6 中之手指節點。此動作看起來像是手部作 出握拳的動作,一般抓取東西時,大拇指與食指的距離靠近,或是手指向手掌內 縮,關節點 t 代表第 t 秒時該關節點的 position 值,D 代表一定的距離,系統內的 判斷條件為: │*ThumbDistalt - *IndexDistalt│ < D (*可填入 Left 或 Right) 或是. 政 治 大 (*可填入 Left 或 Right;@可填入 Index、Middle、Ring、Little) 立 │*Handt - *@Distalt│ <= │*Handt - *@Intermediatet│. ‧. ‧ 國. (2) 揮手:. 學. 任一項成立,即代表完成抓的動作. y. Nat. 「揮手」的動作可用來與其他 NPC 互動。揮手時,舉起手掌高過肩膀,並. er. io. sit. 左右揮動,R 關節點代表右邊的對應關節點,L 關節點代表左邊的對應關節點, 關節點.y 代表該關節點位置(position)的 y 座標值,關節點.x 代表該關節點位置. al. n. v i n (position)的 x 座標值,positionC代表用來記錄 position 值的變數,判斷條件為: hengchi U 1. step 1.. L. Handt.y > LShouldert.y , position1 = LHandt. step 2.. position1.x > LHandt.x. or. position1.x < LHandt.x step 3.. position1.x < LHandt.x. or. position1.x > LHandt.x step 4.. 如果 3 判斷成立,將發出提示音,代表完成揮手動作. 15. DOI:10.6814/NCCU201901172.

(28) (3) 走路: 「走路」動作用來讓玩家虛擬角色做較長距離的前進。因系統內可利用 VIVE 定位做較短距離之移動,用穿戴式裝置辨識做長距離的移動,為了區分兩者,走 路動作為雙腳原地踏步,且腳抬起時的高度要夠高,D1 代表較大的距離,d1 代 表較小的距離,判斷條件為: step 1. │ LFoott.y - RFoott.y │> D1 step 2. │ LFoott.y - RFoott.y │ < d1. 政 治 大. step 3. 如 2 判斷成立,代表完成走路動作,角色會朝 Hips 面對之方向前. 立. 進,並播放腳步聲音效. ‧. ‧ 國. 學. (4) 坐下:. 「坐下」動作用來讓玩家虛擬角色在可供坐下的物體上坐著。坐下時,需先. sit. y. Nat. 選擇想在哪張椅子坐下,然後彎曲膝蓋讓臀部位置降低以坐到椅子上,關節點 t0. al. n. L. er. io. 代表第 0 秒時該關節點的 position 值,d 代表一定的距離,判斷方式為:. i n U. v. Hand 或 RHand 碰觸到椅子時,Hipst0.y - Hipst.y > d. (5) 站起:. Ch. engchi. 「站起」動作用來讓坐下狀態的玩家虛擬角色站起。如欲站起,則先下蹲表 示現在是坐著的狀態,然後在起身回到站立姿態,詳細判斷為: step 1.. 在坐下狀態時,Hipst0.y - Hipst.y > d. step 2.. Hipst.y - Hipst0.y >= d. step 3.. 如 2 判斷成立,將發出提示音,代表完成站起動作. 16. DOI:10.6814/NCCU201901172.

(29) (6) 校正: 穿戴式裝置使用時間越長,越容易因為身體的活動導致穿戴式裝置之位置跑 掉,而「校正」動作是用來讓身體位置偏掉時,能夠即時作簡易的修正。一般穿 戴式裝置常見之校正動作為「T-pose」,我們也是利用此動作來當校正之辨識, 雙手往兩側平舉且雙手要高於胸部位置,d2 代表一定的距離,詳細判斷為: 1. │LHandt - RHandt│ >│LHandt - LLowerArmt│+ │LLowerArmt - LUpperArmt│ +. 政 治 大. │LUpperArmt - RUpperArmt│+. 立. ‧ 國. │RLowerArmt - RHandt│. ‧. L. Handt.y > Spinet.y. io. y. sit. Handt.y > Spinet.y. and │LHandt.y - RHandt.y│ < d2. n. al. Ch. engchi. er. R. Nat. and. 學. and. │RUpperArmt - RLowerArmt│+. i n U. v. 2. 當 1 判斷成立時,將發出三聲提示音,並在校正方向上出現一顆與眼 睛位置水平的校正點,穿戴者注視著該球 3 秒後,會發出 complete 音 效,代表完成校正動作 身體語言的動作設計上,我們希望能儘量根據現實中的情況設計動作,讓故 事體驗者在遇到劇情分支時,不是透過提供的選項進行選擇,而是能透過實際演 出該動作,讓故事體驗者不用分神去思考該按哪個按鍵,以增進沉浸感。而在完 成動作後,透過虛擬世界中物件的即時動畫回饋,我們希望能讓故事體驗者更加 沉浸到虛擬世界之中。 17. DOI:10.6814/NCCU201901172.

(30) 第 4 章 系統架構. 為了驗證自然的體感輸入及動畫參數化的可行性,我們利用 Unity 遊戲引擎實作. 政 治 大 入的偵測裝置,並搭配 HTC VIVE 眼鏡作為語音輸入及視覺方面的輸出。 立. 一個演示情境,透過 Neuron Perception 的穿戴式動作捕捉系統當作自然化體感輸. ‧ 國. 學. 4.1 系統使用之載具. ‧. 4.1.1 畫面呈現載具之介紹. y. Nat. sit. 為了增加故事體驗者之沉浸感,我們使用 HTC 之 VIVE Pro 頭盔做為視覺及聽覺. n. al. er. io. 的呈現介面,以及利用頭盔內建之麥克風,做為語音輸入的媒介。利用 Unity 的. i n U. v. assest store 中的 SteamVR 套件,將 Unity 專案跟 VR 設備做結合,讓原本透過電. Ch. engchi. 腦螢幕呈現的 2D 遊戲畫面,變成透過 VIVE Pro 頭盔呈現 3D 視覺體驗。此外, 搭配上 2018 年新推出之無線模組,能夠將原本頭盔與電腦之間的有線連接變為 無線的連接,雖然會稍微降低畫面的品質,但是能夠讓故事體驗者在體驗故事時 不受線材的干擾,可以任意的活動身體,以增進故事體驗者的體驗效果。. 18. DOI:10.6814/NCCU201901172.

(31) 圖 7 HTC VIVE PRO 及無線模組 (截自官網) 4.1.2 互動載具的介紹. 立. 政 治 大. 體感輸入部分,我們採用 Noitom 推出的 PERCEPTION NEURON 體感偵測裝置,. ‧ 國. 學. 偵測穿戴者的頭部、四肢、身體、臀部等各個節點的加速度與角速度,再透過與. ‧. 裝置相連之 HUB,以無線 WIFI 或是有線 USB 的方式,傳輸偵測到之數據至官. y. Nat. 方推出的 AXIS Neuron 程式中。該程式會將偵測到的數據轉換並套用到虛擬角色. er. io. sit. 之各個身體部位,讓虛擬人偶的姿勢跟穿戴者的姿勢同步,最後利用 live wireless Bounding Volume Hierarchy(BVH) streaming 的方式即時將資料傳輸到 Unity 平台,. al. n. v i n 將骨架數值套用至第三章的圖C5 及圖 6 所示的 56 個關節點上,讓穿戴者之身體 hengchi U. 動態能即時反應到虛擬世界當中。. 我們的系統將串流的 BVH 資料套入虛擬世界中的玩家虛擬角色的模型骨架 上,讓玩家虛擬角色的動作能跟故事體驗者的動作同步。然而,在進行指令控制 動作時,玩家角色與故事體驗者的姿態將可能不同步,而這部分的機制將在接下 來的系統架構做進一步的說明。. 19. DOI:10.6814/NCCU201901172.

(32) 圖 8 PERCEPTION NEURON(截自官網) 4.1.3 兩種載具合用時之調整. 立. 政 治 大. 如圖 7 及圖 8 所示,我們利用 HTC 之 VIVE Pro 頭盔做為畫面呈現之媒介以及. ‧ 國. 學. Noitom 所推出的 PERCEPTION NEURON 體感偵測裝置做為動作輸入之媒介。. ‧. 但也如圖 7 及圖 8 所示,兩種設備都有需要穿戴在頭上之部分,經過實際穿戴測. y. Nat. 試後,如果兩者同時配戴,會對偵測上的準確度造成影響,以及造成穿戴者穿戴. er. io. sit. 上的不適感增加。因此我們的系統最後捨棄了 PERCEPTION NEURON 頭上之節 點,改為使用 VIVE Pro 頭盔之旋轉偵測,讓玩家虛擬角色之頭部隨之旋轉,而. al. n. v i n 身體其他部位則跟原本一樣,跟著 體感偵測裝置做旋轉 C h PERCEPTION NEURON engchi U 及移動。. 4.2 系統架構 圖 9 為系統架構圖,系統主要分為三個模組:動作解析模組、故事管理模組、動 畫管理模組。. 20. DOI:10.6814/NCCU201901172.

(33) 立. 政 治 大. ‧ 國. 學 圖 9 系統架構圖. ‧ sit. y. Nat. 系統中決定劇情及動畫呈現的因素分為三種:. n. al. er. io. 1. 玩家(紅線):透過身體的動作,觸發 NPC 事件以及與環境物件互動。. i n U. v. 2. 腳本(藍線):透過腳本內容的編撰,影響 NPC 對故事體驗者之回應,以及 NPC. Ch. 原始的故事動畫。. engchi. 3. 系統(黑線):自動對前兩者傳來之數值變化或指令做出運算,安排 NPC 及玩 家角色的動畫呈現。 為了擴展系統的靈活性及維護的便利性,我們將系統分為三大模組,再搭配 動畫資料庫,實作出一套完整的穿戴式互動敘事系統。故事體驗者透過穿戴式裝 置及 VR 頭盔與虛擬世界互動;故事編輯者透過互動腳本及故事劇本來編撰故事 的初始劇情及互動的觸發條件;系統接收前兩者傳來的資料,自動判斷各種情況 下該做出怎樣的動畫呈現。接下來我們將對各個模組做詳細的介紹。 21. DOI:10.6814/NCCU201901172.

(34) 4.3 動作解析模組 動作解析模組負責管理故事體驗者的輸入與輸出。輸入為穿戴式裝置傳送之 BVH 資料,透過動作解析模組進行動作解析,輸出為玩家角色的對應動畫,或 是傳入動畫管理模組的 NPC 動作指令。 利用穿戴式動作捕捉系統,可以偵測故事體驗者從全身的大動作到手指的彎 曲等細部動作。但如果將所有的動作皆當成可供互動的輸入指令,會讓互動方式 過於複雜,造成故事發展無法收束,因此如第三章所描述的,我們利用 Unity 人. 政 治 大 物件及 NPC 互動之動作。如第一章所述,為了模擬一些故事體驗者在現實環境 立. 體骨架當作判斷依據,制定了幾項故事體驗者在虛擬環境中,可用來與環境中之. ‧ 國. 學. 中無法達成之動作,我們將動作輸入分為「直接偵測輸入」模式及「指令輸入」 模式兩種。「走路」較為特別,兩種模式都有機制控制走路,在體驗情境中,因. ‧. 為虛擬場景範圍較大,如果利用 VIVE 本身的定位功能無法完整涵蓋可移動之範. sit. y. Nat. 圍,且為了增加故事體驗者在虛擬世界中移動的擬真感,因此也不希望利用瞬間. al. er. io. 移動(teleport)功能,所以我們設計了一套移動機制,讓故事體驗者可透過 VIVE. v. n. 之定位系統做小範圍之移動,並透過走路動作機制的觸發,做長距離的移動。. Ch. engchi. i n U. 而玩家動畫呈現的部分,除了前述兩種不同輸入模式所對應的不同動畫輸出 外,我們還設計了第三種強制播放模式,以因應劇情發展,強制播放特定的動作 動畫;例如角色死亡時,將強制播放死亡動畫。 4.3.1 直接偵測輸入模式 在直接偵測輸入模式下,玩家虛擬角色會隨著偵測到之故事體驗者的身體移動而 跟著移動。當故事體驗者滿足特定動作條件時,將會觸發玩家虛擬角色進入對應 的動作狀態,而虛擬環境中可互動的物件,會根據不同的狀態而有不同的反應, 詳如表一所示。. 22. DOI:10.6814/NCCU201901172.

(35) 表一、故事體驗者在虛擬環境中之直接偵測輸入 角色動作狀態 抓. 觸發動作之步驟. 1. 玩家虛擬角色任一隻手接近物品或其他人物之手部,當靠的夠 近時,如果是可互動之物件,物件周圍會散發紅光,如圖 10 2. 接近物件的那隻手,做出「抓」的動作 3. 如果判斷成功,將發出提示音,並且該物件會在玩家虛擬角色 握拳的手之掌心位置,跟著手部移動及旋轉 4. 成功抓住後,會持續判定 2.之判斷式是否成立,如果不成立,. 政 治 大. 即代表玩家虛擬角色放開該物件,該物件會隨著物理引擎的重. 立. 力效果而向下掉落,如果該物件為其他 NPC 的手,則會讓手. ‧ 國. 學. 回到原本的位置. 1. 身體任何部位碰到可碰撞之物品,並持續同方向施力,該物品. ‧. 推. y. sit. 揮手. Nat. 會隨著施力方向移動. n. al. er. io. 1. 玩家虛擬角色任一隻手之手腕位置高於該邊之肩膀高度,並記 錄手腕超過肩膀時之位置. Ch. engchi. i n U. v. 2. 以 1 紀錄之位置為基準,判斷手腕是否有向左或向右移動 3. 如果 2 時手腕向右移動,則判斷手腕是否向左移動;反之,如 果 2 時手腕向左移動,則判斷手腕是否向右移動 4. 如果 3 判斷成立,將發出提示音,代表完成揮手動作 5. 當手腕位置低於肩膀位置,即判斷為取消揮手動作 走路. 1. 故事體驗者直接移動身體,玩家虛擬角色將隨著 VIVE Pro 頭 盔定位的位置而移動. 23. DOI:10.6814/NCCU201901172.

(36) 政 治 大. 立. ‧ 國. 學. 圖 10 上圖為右手碰到物件前,下圖為碰到時,物件周圍會散發紅光. ‧. 4.3.2 指令輸入模式. sit. y. Nat. 在指令輸入模式中,透過輸入預先設定之使用者指令動作,玩家虛擬角色會播放. al. er. io. 對應之動畫,並有可能在動畫結束後鎖定某些身體部位之行動,如表二。其中,. v. n. 走路狀態會根據故事體驗者原地踏步之速率而影響虛擬角色的前進速度。. Ch. engchi. i n U. 表二、故事體驗者在虛擬環境中之指令輸入 角色狀態. 使用者指令步驟. 角色對應動畫. 走路. 1. 玩家虛擬角色任一隻腳底節點比另 玩家虛擬角色朝 hips 節 一隻腳底節點距離地面之距離 > x. 點面對方向前進之動畫. 2. 離地面較遠的那隻腳,判斷是否與另 一隻腳回到同樣高度 3. 如 2 判斷成立,即觸發走路動作. 24. DOI:10.6814/NCCU201901172.

(37) 坐下. 1. 玩家虛擬角色手部接近能夠坐下之 1. 如果玩家虛擬角色距 椅子時,椅子如同抓取時一樣,周邊. 離椅子的距離太遠,. 會發出紅光. 會先播放走路動畫,. 2. 在椅子發出紅光之狀態下,玩家虛擬. 並讓玩家虛擬角色移. 角色做出微蹲之動作. 動到椅子的位置. 3. 如 2 判斷成立,將發出提示音,並進 2. 播放坐下動畫,並鎖 入坐下模組,播放一連串的動畫,同. 定下半身動畫. 時鎖住故事體驗者對玩家虛擬角色. 政 治 大 坐下模組結束後,發出提示音,故事 立 除了頭部旋轉以外的控制權. 4.. 體驗者此時即可控制玩家虛擬角色. ‧ 國. 學. 上半身之任何動作以及身體的旋. ‧. 轉,但下半身會維持著坐下動作之動. sit er. io. 1. 玩家虛擬角色在坐下狀態時,才能夠 起立動畫. al. n. 站起. y. Nat. 畫. i n Ch 觸發站起之動畫。玩家虛擬角色做出 engchi U. v. 微蹲之動作. 2. 如 1 判斷成立,將發出提示音,代表 觸發站起動作,播放起立動畫,動畫 播畢後,開啟坐下時被鎖定之下半身 的移動,此時故事體驗者即可控制玩 家虛擬角色全身之任何動作. 25. DOI:10.6814/NCCU201901172.

(38) 校正. 1. 當故事體驗者發現玩家虛擬角色跟 玩家虛擬角色轉向對 的 自身面向不吻合時,可透過觸發「校 方位 正」動作來重新校正方向 2. 當校正判斷成立時,空中會出現一個 目標物讓故事體驗者去注視,面對該 目標物並注視 3 秒鐘,會發出提示 音,代表校正完成. 4.3.3 強制播放模式. 政 治 大 在故事進行到尾聲或是觸發特殊狀況時,為了能順利讓劇情接續到下一個場景, 立 將進入強制播放模式,限制住故事體驗者除了頭部旋轉以外的所有行動,播放系. ‧ 國. 學. 統設定好之動畫,讓故事體驗者跟隨劇情發展進入接下來的場景。如果不設定強. ‧. 制播放並限制故事體驗者的動作,有可能發生不合理的情況,例如主角死亡了,. sit. y. Nat. 卻還是可以移動。. n. al. er. io. 在範例故事中,將有兩種狀況會觸發進入此模式:(1)故事體驗者與 NPC 互. v. 動之過程中,有可能遭受 NPC 的攻擊,當受到重點攻擊(例如心臟被子彈射中). Ch. engchi. i n U. 時,將會強制播放死亡動畫,並限制住玩家虛擬角色全身之行動,接著進入壞結 局的場景。(2)故事體驗者抓住嫌犯,並帶著嫌犯坐上警車,當故事體驗者打開 警車車門時,即進入強制播放模式,在嫌犯 NPC 上車後,玩家虛擬角色會接著 上車,接著車子會啟動,帶著嫌犯及玩家虛擬角色一同往監獄的方向移動,最後 進入好結局場景。. 4.3.4 互動腳本 為了擴展故事體驗者與 NPC 之間互動的延展性,以當故事劇情改變時,能更容 易對互動的反應進行修改,我們的系統將互動方式參數化成 XML 腳本的格式。 26. DOI:10.6814/NCCU201901172.

(39) 如圖 11,根元素為<Interaction>;<Character>元素為區分不同之 NPC 角色,tag 屬性為該 NPC 之標籤,標籤不會重覆;<InteractMovement>元素為一條條的互動 指令,一共有 6 種屬性,分別為: 1.. PlayerIdentity 為玩家目前的身分. 2.. PlayerMovement 為玩家目前的動作狀態. 3.. SelfMood 為該 NPC 目前之情緒. 4.. RespondMovement 為滿足前三項條件且故事體驗者進入 NPC 視覺觸發. 政 治 大. 範圍內時,NPC 會回應之動作. 立. Duration 為 RespondMovement 被觸發後,會持續演出之時間長度. 6.. GrabTarget 為當 PlayerMovement 為 grab 時,確定故事體驗者抓取的物. ‧ 國. 學. 5.. ‧. 品之 tag 為何. sit. y. Nat. 以圖 11 之第五行為例,代表當心情為 good 的嫌疑犯看到路人在自己旁邊坐下時,. n. al. er. io. 會開始播放 give 動作,持續時間為 20 秒。. Ch. engchi. i n U. v. 圖 11 互動 XML 腳本範例 27. DOI:10.6814/NCCU201901172.

(40) 以下表三及表四為互動腳本內可以利用之參數,包含 NPCtag、玩家身分、 玩家動作、NPC 情緒、NPC 回應動作、可抓取之目標 tag 等。根據表內之參數 撰寫互動 XML 腳本,我們的系統會在開始遊戲時自動讀入該互動腳本並存入資 料庫。在遊戲進行中,當故事體驗者滿足互動觸發條件時,NPC 回應參數會即 時傳入動畫管理模組,該模組負責 NPC 動作之排程與動畫平順化之呈現。舉例 來說,圖 11 之第五行,當故事體驗者進入 NPCtag 為”Suspect”的 NPC 之視線範 圍內,且該 NPC 之情緒為”good”時,故事體驗者目前的玩家身分為”Passerby”且 觸發”sit”動作,系統立即傳送”give”持續 20 秒的指令到動畫管理模組,動畫管理. 政 治 大 作指令,例如改為”lookat”,則在達成觸發條件時,系統立即傳送”lookat”持續 20 立. 模組會自動將該動作排入”Suspect”的動作排程中。如果將 give 參數改為其他動. 秒的指令到動畫管理模組,表示劇情從原本的玩家在嫌疑犯旁坐下時,嫌疑犯舉. ‧ 國. 學. 起酒杯向玩家勸酒,變為玩家在嫌疑犯旁坐下時,嫌疑犯將看向玩家,並注視著. sit. 表三、互動腳本內可利用之參數. al. n. 玩家身分. (PlayerIdentity). 玩家動作. Ch. er. io. NPCtag (tag). y. Nat. 性。. ‧. 玩家。變更互動腳本的內容即可對故事劇情有一定程度的修改,增進故事的可變. v ni. NPC 情緒. NPC 回應. (PlayerMovement). (SelfMood). (RespondMovement). engchi U. Waiter. Police. all. all. walk. Bartender. Passerby. grab. bad. follow. Suspect. waveHands. good. sit. Passerby1. walk. great. stand. Passerby2. sit. lookat. stand. talk waveHands shoot. 28. DOI:10.6814/NCCU201901172.

(41) give run beCaught. 表四、可抓取之目標 tag GrabTarget SuspectStrongHand SuspectOtherHand. 立. 4.4 故事管理模組. drink 政 治 大. ‧ 國. 學. 故事管理模組負責讀入外部的故事 XML 劇本並存入資料庫,在劇本中指定的時. ‧. 間到達時,將動作指令傳送到動畫管理模組。如圖 12 為 XML 故事劇本之範例 圖,一條 AnimCharacterMove 為一項動作指令,裡面包含的參數有:. sit. y. Nat. 2.. Duration:動作將播放多久的時間. 3.. ActorTag:要演出該動作的虛擬角色之標籤. 4.. Movement:要演出之動作名稱. 5.. destinationTag:如果該項動作須要有一個互動目標,則須填寫. n. al. er. StartTime:此項動作指令之開始絕對時間. io. 1.. Ch. engchi. i n U. v. 以圖 12 為例,代表相對時間為 0 時,遊戲物件標籤為嫌疑犯之虛擬人物,將走 路前往椅子的位置,維持 15 秒。. 圖 12 故事 XML 劇本範例 29. DOI:10.6814/NCCU201901172.

(42) 4.5 動畫管理模組 NPC 根據故事體驗者行為歷程,進入不同狀態,如果每位虛擬世界中的 NPC, 在面對故事體驗者相同的動作輸入但是不同的故事歷程時,都是產生一樣的回應 的話,將使體驗的擬真感及重玩性降低,因此我們希望透過賦予每位 NPC 不同 的「身分」及「情緒」,來讓回覆變得更為豐富。在演示情境中,將讓 NPC 有 good/bad/great 三種不同的情緒,好情緒時的 NPC 與壞情緒時的 NPC,將會給予 故事體驗者不同的回應,而 NPC 的情緒會隨著互動過程有不同的變化,讓故事. 政 治 大. 體驗者能對虛擬世界有更多的影響。. 4.5.1 動畫模組參數化. 立. ‧ 國. 學. 系統會根據 NPC 本身的身分及當時的情緒,調整動畫模組之參數,呈現不同的. ‧. 動畫效果,例如情緒為 good 的 NPC 在揮手回應時,揮手幅度較大且速度較快;. io. NPC 之狀態參數包含以下幾種:. n. al. i n U. (1) gameObject:該 NPC 在 Unity 中的遊戲物件. Ch. engchi. (2) CharacterTag:該名 NPC 的身分. er. sit. y. Nat. 而情緒為 bad 的 NPC 則反之。. v. (3) mood:該 NPC 當下的情緒,有 great/good/bad 三種情緒 (4) state:該 NPC 之動作狀態,有 sit/stand/dye 三種狀態 除了動畫參數的調整之外,系統將身體拆分為多個區塊,可同時對不同區塊 播放不同動畫,讓在動畫資料庫較為貧乏的狀況下,也能透過不同動畫的組合, 增加動畫回應的種類,以及呈現更加合乎狀況的動畫。如圖 13,結合坐下動畫 與說話動畫,變成下半身維持坐下動畫,上半身播放說話動畫。. 30. DOI:10.6814/NCCU201901172.

(43) 政 治 大. 圖 13 拆分身體部位來播放不同動畫之範例. 立. ‧ 國. 學. 4.5.2 動作排程. 在虛擬實境的互動敘事中,為了讓故事體驗者能夠透過參與影響劇情發展,往往. ‧. 無法像普通的動畫一樣,單純依照製作者的想法安排動畫播放的時間,而是需要. y. Nat. sit. 考慮到故事體驗者參與進來的時間,播放合適的動畫回應。但是如果僅有互動時. n. al. er. io. 才觸發動畫,所有 NPC 將都等待著故事體驗者與之互動,才會有所動作,不像. i n U. v. 現實的狀況人物會有自己的想法,做自己當下想做的事情。因此,我們希望在這. Ch. engchi. 中間取得一個平衡點,讓 NPC 照著基本的故事劇本演出,而當故事體驗者透過 故事參與以影響劇情發展時,可以藉由互動腳本的設定去演出不同的劇情。 為了合併這兩種不同的動畫觸發方式,我們的系統利用了類似 priority queue 的概念,將動作解析模組及故事管理模組傳來之動作指令依照不同的優先度,插 入或放入 queue 當中,並依序執行動作。 以圖 14 為例,遊戲時間為 0 時,嫌疑犯的動作排程中沒有任何動作。遊戲 時間為 n 時,故事管理模組傳來走路的動作指令,系統將該動作指令放入動作排 程中,並開始執行,嫌疑犯播放走路至目的地的動畫。遊戲時間為 m 時,故事 31. DOI:10.6814/NCCU201901172.

(44) 體驗者之玩家虛擬角色進入嫌疑犯的視線範圍內,動作解析模組依照當下的玩家 及 NPC 狀態,傳送 NPC 攻擊玩家虛擬角色的動作指令至動畫管理模組,因為動 作解析模組的互動為即時性的,優先度較高,因此攻擊的動作指令插入動作排程 最前端,嫌疑犯暫停原本的走路動畫,轉而開始播放攻擊動畫。遊戲時間為 k 時,攻擊動畫時間結束或是玩家虛擬角色死亡,攻擊的動作指令結束,從動作排 程中移除,並恢復尚未完成的走路動作指令,嫌疑犯由目前位置繼續向目的地前 進。. 立. 政 治 大. ‧ 國. 學 ‧. 圖 14 動作排程範例示意圖. y. Nat. sit. 以圖 15 為例,遊戲時間為 0 時,嫌疑犯的動作排程中沒有任何動作。遊戲. n. al. er. io. 時間為 n 時,故事管理模組傳來坐下的動作指令,系統將該動作指令放入動作排. i n U. v. 程中,並開始執行。遊戲時間為 m 時,動畫管理模組判斷嫌疑犯離坐下的椅子. Ch. engchi. 距離過遠,因此插入走路的動作指令,系統將該動作指令放入動作排程中,並開 始執行,嫌疑犯播放走路至目的地的動畫。遊戲時間為 k 時,故事體驗者之玩家 虛擬角色進入嫌疑犯的視線範圍內,動作解析模組依照當下的玩家及 NPC 狀態, 傳送 NPC 攻擊玩家虛擬角色的動作指令至動畫管理模組,因為動作解析模組的 互動為即時性的,優先度較高,因此攻擊的動作指令插入動作排程最前端,嫌疑 犯暫停原本的走路動畫,轉而開始播放攻擊動畫。遊戲時間為 l 時,攻擊動畫時 間結束或是玩家虛擬角色死亡,攻擊的動作指令結束,從動作排程中移除,並恢 復尚未完成的走路動作指令,嫌疑犯由目前位置繼續向目的地前進。遊戲時間為 j 時,動畫管理模組判斷嫌疑犯離椅子的距離夠近,走路的動作指令結束,從動 32. DOI:10.6814/NCCU201901172.

(45) 作排程中移除,並接著執行坐下的動作指令,播放坐下動畫。遊戲時間為 h 時, 坐下的動作指令結束,嫌疑犯維持坐在椅子上的動畫。. 圖 15 動作排程範例示意圖二. 學. ‧ 國. 立. 政 治 大. ‧. 4.5.3 互動式動畫. y. Nat. sit. 除了根據故事體驗者不同的輸入及故事歷程,NPC 會有不同的對應動作外,我. n. al. er. io. 們的系統亦能依照玩家虛擬角色目前的位置,決定 NPC 面對的方向。例如 NPC. i n U. v. 對玩家虛擬角色說話時,會面向玩家虛擬角色的方向,讓故事體驗者擁有 NPC. Ch. engchi. 是在跟自己說話的感覺,如圖 16,左圖為坐在 NPC 右邊,右圖為坐在 NPC 左 邊。. 圖 16 NPC 面對玩家方向 33. DOI:10.6814/NCCU201901172.

(46) 當動作排程中的動作指令被執行時,某些指令會根據當下虛擬世界的狀況改 變,例如根據動作執行者與目標物體的距離,改變播放的動畫,讓動作的動畫演 出更加合乎邏輯,如圖 17 至圖 20 為「shoot」動作之範例,圖 17 時玩家進入 NPC 視線範圍內,開始朝玩家射擊;圖 18 時玩家向右移動,NPC 追逐玩家;圖 19 時玩家與 NPC 距離過遠,NPC 播放左右查看的動畫,並停止 shoot 動作;圖 20 時 NPC 恢復原本的動作排程,走向酒吧。. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 17 shoot 範例-玩家與 NPC 距離近,NPC 開槍射擊. 34. DOI:10.6814/NCCU201901172.

(47) 政 治 大. 圖 18 shoot 範例-玩家與 NPC 距離中,NPC 追逐玩家. 立. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 19 shoot 範例-玩家與 NPC 距離遠,NPC 左右查看,停止 shoot. 35. DOI:10.6814/NCCU201901172.

(48) 政 治 大. 圖 20 shoot 範例-NPC 停止 shoot 後,繼續原本的動作,走向酒吧. 立. ‧ 國. 學. 表五列出了所有動作指令及其會根據哪些情況做出改變,條件式中的. ‧. distance 皆是指動作執行者與目標物之距離,f 為 Unity 中之單位。. n. al. er. io 動作指令 walk. sit. y. Nat 表五、動作指令清單. Ch. i n U. 狀況判斷. engchi. v. if distance > 0.5f,則 walk else 停止 walk. run. if distance > 0.5f,則 run else 停止 run. follow. if distance > 2f,則跟著目標物移動 else 停止. sit. if distance > 2f,則先走至目標椅子的位置 else 坐下 36. DOI:10.6814/NCCU201901172.

(49) stand. 站起. lookat. 注視目標物. talk. if distance < 2f,才會開始對話 else 先走至目標物的位置. waveHands. 面對目標物揮手. shoot. if distance > 10f ,則取消 shoot else if distance > 3f,則走至目標物的位置 else 朝著目標物射出子彈. 政 治 大. if distance > 2f,則先走至目標物的位置. give. else 朝著目標物利用 IK 系統伸出酒杯. 立. if distance > 1f,被抓的手回到原始位置. 學. else 被抓的手利用 IK 系統隨著目標物移動. ‧. ‧ 國. beCaught. y. Nat. sit. 最後畫面繪圖輸出的部分,本系統採用 unity 遊戲引擎之 animator 系統,利. n. al. er. io. 用參數變更動畫的播放與快慢的調整,再搭配 Inverse Kinematics (IK)系統,在特. i n U. v. 殊動作時控制手部節點的位置,如圖 21,玩家抓住 NPC 的左手並站在原地,NPC. Ch. engchi. 隨著玩家左手的位置變化而跟著移動;而路徑規劃的部分,是利用 unity 遊戲引 擎之 Navigation 系統,讓虛擬人物能自動規劃從現在位置到目標地點的路線,並 自行避開障礙物及禁止行走的地區。. 37. DOI:10.6814/NCCU201901172.

(50) 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 21 IK 範例. 38. DOI:10.6814/NCCU201901172.

(51) 4.6 提示系統 故事體驗者在體驗故事時,要如何理解故事的劇情,以及可能會影響劇情的行動, 是不容易的。以我們的範例故事為例,故事開始時會有故事內設定之輔助系統的 虛擬角色,利用聲音與字幕來讓故事體驗者了解故事及任務內容。但是如果故事 體驗者對系統不夠熟悉時,或是剛好恍神沒注意到系統說了什麼時,可能會導致 體驗過程中因為不知道如何去行動,而使故事無法往下發展。 為了減少這些狀況導致的難易度提升,我們的系統設置了提示的系統,在滿. 政 治 大 選項。以範例故事為例,一開始會有輔助系統提醒玩家可以去服飾店換衣服,以 立. 足特定條件時,利用字幕與語音的方式,引導故事體驗者能夠達成劇情上的分支. ‧ 國. 學. 免被嫌疑犯認出主角是警察,如果此時故事體驗者沒有去換衣服,直接往酒吧的 方向前進,輔助提示系統將會利用字幕搭配語音,提示故事體驗者服飾店在哪個. ‧. 方位;但如果故事體驗者原本就有去換衣服,再往酒吧的方向前進,就不會出現. sit. y. Nat. 該提示,如圖 22。. n. al. er. io. 對於不同熟練度的故事體驗者而言,系統會判斷是否要給出提示,且不會馬. i n U. v. 上就出現提示,留給故事體驗者自行探索、嘗試的樂趣。. Ch. engchi. 圖 22 提示系統 – 換衣服提示. 39. DOI:10.6814/NCCU201901172.

參考文獻

相關文件

推理論證 批判思辨 探究能力-問題解決 分析與發現 4-3 分析文本、數據等資料以解決問題 探究能力-問題解決 分析與發現 4-4

學生收集聲效, 擬訂場景、 道具、 服裝等 進行拍攝, 完成後運用Ul ead Vi deo St udi o 進行剪輯, 加入劇目標題、 特別效果及製作 人員名單,

進而能自行分析、設計與裝配各 種控制電路,並能應用本班已符 合機電整合術科技能檢定的實習 設備進行實務上的實習。本課程 可習得習得氣壓-機構連結控制

在師生的互 動下,結合 描述、分 析、詮釋及 評價,補充 先前的補 充、更正先 前的更正

本章將對 WDPA 演算法進行實驗與結果分析,藉由改變實驗的支持度或資料 量來驗證我們所提出演算法的效率。實驗資料是以 IBM synthetic data generator

在軟體的使用方面,使用 Simulink 來進行。Simulink 是一種分析與模擬動態

樹、與隨機森林等三種機器學習的分析方法,比較探討模型之預測效果,並獲得以隨機森林

本研究採用的方法是將階層式與非階層式集群法結合。第一步先運用