[發明專利]一種在三維動畫引擎底層實現人機交互的方法有效
| 申請號: | 201210042044.1 | 申請日: | 2012-02-22 |
| 公開(公告)號: | CN102637073A | 公開(公告)日: | 2012-08-15 |
| 發明(設計)人: | 任雁鵬;趙淳;羅漢青;梁利平 | 申請(專利權)人: | 中國科學院微電子研究所 |
| 主分類號: | G06F3/01 | 分類號: | G06F3/01;G06T19/00 |
| 代理公司: | 中科專利商標代理有限責任公司 11021 | 代理人: | 宋焰琴 |
| 地址: | 100083 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 三維動畫 引擎 底層 實現 人機交互 方法 | ||
1.一種在三維動畫引擎底層實現人機交互的方法,其特征在于,包括:
使用事件處理對象對拾取、平移、旋轉和縮放操作進行了統一封裝,分別構成事件響應函數;
基于有限狀態機,使用枚舉變量定義事件處理對象的對應不同類型操作的工作狀態,該工作狀態與事件響應函數具有對應關系;
接收用戶觸發的交互事件,有限狀態機跳轉至該交互對應的工作狀態,并執行對應的事件響應函數。
2.根據權利要求1所述的在三維動畫引擎底層實現人機交互的方法,其特征在于,所述的工作狀態包括:拾取狀態、平移狀態、旋轉狀態和縮放狀態。
3.根據權利要求2所述的在三維動畫引擎底層實現人機交互的方法,其特征在于,所述接收用戶觸發的交互事件,有限狀態機跳轉至該交互對應的工作狀態,并執行對應的事件響應函數的步驟包括:
當用戶觸發的拾取指令時,有限狀態機跳轉至拾取狀態,與拾取狀態對應的事件響應函數響應用戶通過鼠標輸入的點擊、釋放事件對場景中的節點進行拾取,并使用刻線將被拾取到的節點突出出來;
當用戶觸發的平移指令時,有限狀態機跳轉至平移狀態,與平移狀態對應的事件響應函數除了要完成拾取任務外,還要為被拾取到的節點添加平移功能,并在隨后的操作中完成對選中三維對象的平移;
當用戶觸發的旋轉指令時,有限狀態機跳轉至旋轉狀態,與旋轉狀態對應的事件響應函數除了要完成拾取任務外,還要為被拾取到的節點添加旋轉功能,并在隨后的操作中完成對選中三維對象的旋轉;或
當用戶觸發的縮放指令時,有限狀態機跳轉至縮放狀態,與縮放狀態對應的事件響應函數除了要完成拾取任務外,還要為被拾取到的節點添加縮放功能,并在隨后的操作中完成對選中三維對象的縮放。
4.根據權利要求3所述的在三維動畫引擎底層實現人機交互的方法,其特征在于,所述工作狀態還包括:空閑狀態;
所述接收用戶觸發的交互事件,有限狀態機跳轉至該交互對應的工作狀態,并執行對應的事件響應函數的步驟之后還包括:接收用戶觸發的交互事件結束的指令,有限狀態機跳轉至空閑狀態。
5.根據權利要求1至4中任一項所述的在三維動畫引擎底層實現人機交互的方法,其特征在于,所述接收用戶觸發的交互事件,有限狀態機跳轉至該交互對應的工作狀態,并執行對應的事件響應函數的步驟之后還包括:
對三維角色進行動畫功能的編輯操作。
6.根據權利要求5所述的在三維動畫引擎底層實現人機交互的方法,其特征在于,對于關鍵路徑動畫,所述對三維角色進行動畫功能的編輯操作的步驟包括:
對于自身附帶動作信息的角色節點,在此節點的上層綁定一個幾何節點;
通過在時間軸上對幾何節點安插多個關鍵控制點,每個關鍵控制點包含此時刻被編輯節點的狀態信息,包括位置或旋轉信息;
各個時間點之間采用均勻差值的方式進行實時計算,以達到連續的效果;
將幾何節點附帶的關鍵點信息與角色自帶的動作信息進行算法疊加,以再現整個角色動畫,實現角色的路徑動畫效果。
7.根據權利要求5所述的在三維動畫引擎底層實現人機交互的方法,其特征在于,對于角色動畫,所述對三維角色進行動畫功能的編輯操作的步驟包括:
拾取被操控角色節點并為其綁定一個“矩陣變換”的幾何節點;
當通過鼠標/鍵盤外部設備對角色進行操作時,實時修改并記錄幾何節點的變換矩陣的值;
每一個操作都與下一次動作進行疊加運算,人機交互底層實時記錄并保存所有幾何節點的坐標值;
協同呈現幾何節點與三維對象,以顯示角色的動畫狀態,產生實時動畫的目的。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院微電子研究所,未經中國科學院微電子研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210042044.1/1.html,轉載請聲明來源鉆瓜專利網。





