對對象進行建模的方法和設(shè)備的制造方法
【專利說明】對對象進行建模的方法和設(shè)備
[0001]本申請要求于2014年8月26日提交到韓國知識產(chǎn)權(quán)局的第10-2014-0111467號韓國專利申請以及于2015年4月28日提交到韓國知識產(chǎn)權(quán)局的第10-2015-0059496號韓國專利申請的優(yōu)先權(quán)權(quán)益,所述韓國專利申請的公開通過引用包含于此。
技術(shù)領(lǐng)域
[0002]以下描述的示例實施例涉及一種用于對對象進行建模的方法和設(shè)備。
【背景技術(shù)】
[0003]關(guān)于計算機圖形(CG)領(lǐng)域中(尤其是視覺效果(VFX)領(lǐng)域中)的流體仿真,正在對數(shù)值求解流體流動進行研究。納維-斯托克斯方程將流體視為微小粒子的總和,并表現(xiàn)粒子之間的相互作用和運動。當(dāng)假定相對理想的情況時,納維-斯托克斯方程可被改變?yōu)椴怼榱嘶诩{維-斯托克斯方程進行流體建模的真實再現(xiàn),將滿足不可壓縮條件。
[0004]此外,將保證對于人眼足夠自然的可變形對象的仿真、實時模型響應(yīng)和計算的精確性。因此,可使用考慮可變形對象的物理特性、邊界條件和施加的外力的模型。
[0005]在CG領(lǐng)域中,可分開執(zhí)行流體的仿真和可變形對象的仿真。然而,在一般環(huán)境中,流體和可變形對象共存并互相影響。
【發(fā)明內(nèi)容】
[0006]通過提供一種對對象進行建模的方法來實現(xiàn)前述和/或其它方面,所述方法包括:檢測使用粒子建模的第一對象與使用粒子建模的第二對象之間的相鄰區(qū)域;針對相鄰區(qū)域定義網(wǎng)格;基于存儲在網(wǎng)格的網(wǎng)格點中的信息,計算相鄰區(qū)域中的第一對象與第二對象之間的作用力;基于計算出的作用力對第一對象和第二對象進行建模。
[0007]所述定義的步驟可包括:提取相鄰區(qū)域中的第一對象或第二對象的輪廓與網(wǎng)格的和所述輪廓相鄰的網(wǎng)格點之間的距離值;將提取的距離值存儲在網(wǎng)格點中。
[0008]所述計算的步驟可包括:驗證在相鄰區(qū)域中第一對象的粒子與第二對象的粒子之間是否發(fā)生碰撞;基于驗證的結(jié)果計算第一對象的粒子與第二對象的粒子之間的作用力。
[0009]所述驗證的步驟可包括:基于存儲在與第一對象的粒子的位置相鄰的網(wǎng)格點中的距離值驗證是否發(fā)生碰撞。
[0010]所述驗證的步驟還可包括:驗證第一對象的粒子是否滿足體積保持條件。
[0011]所述計算第一對象的粒子與第二對象的粒子之間的作用力的步驟可包括:當(dāng)驗證發(fā)生了碰撞時,檢測在相鄰區(qū)域中的第一對象的粒子和第二對象的粒子之中的第一對象的碰撞粒子;重新定義檢測到的第一對象的碰撞粒子的位置;基于第一對象的碰撞粒子的重新定義的位置,計算響應(yīng)于碰撞而施加到第二對象的作用力。
[0012]所述重新定義的步驟可包括:將檢測到的第一對象的碰撞粒子的位置重新定義為第一對象的碰撞粒子不穿透第二對象的位置。
[0013]所述將檢測到的第一對象的碰撞粒子的位置重新定義的步驟可包括:基于存儲在與包括檢測到的第一對象的碰撞粒子的單元對應(yīng)的網(wǎng)格點中的梯度和距離值,計算第一對象的碰撞粒子的運動方向和最短運動距離,使得第一對象的碰撞粒子不會穿透第二對象;基于計算出的運動方向和計算出的最短運動距離,重新定位第一對象的碰撞粒子。
[0014]所述方法還可包括:基于存儲在網(wǎng)格點中的距離值和計算出的最短運動距離計算第一對象的碰撞粒子的運動速度;將計算出的運動速度存儲在與包括檢測到的第一對象的碰撞粒子的單元對應(yīng)的網(wǎng)格點中。
[0015]所述計算響應(yīng)于碰撞而施加到第二對象的作用力的步驟可包括:計算估計的在第一對象的碰撞粒子的重新定義的位置由第二對象施加到第一對象的碰撞粒子的力;基于計算出的力計算響應(yīng)于碰撞而施加到第二對象的作用力。
[0016]所述方法還可包括:將計算出的作用力存儲在網(wǎng)格的與第一對象的碰撞粒子的重新定義的位置對應(yīng)的網(wǎng)格點中。
[0017]第一對象和第二對象可以是同質(zhì)的或異質(zhì)的。
[0018]第一對象可對應(yīng)于流體,第二對象可對應(yīng)于可變形對象。
[0019]通過提供一種用于對對象進行建模的設(shè)備來實現(xiàn)前述和/或其它方面,所述設(shè)備包括:網(wǎng)格轉(zhuǎn)換模塊,被配置為檢測使用粒子建模的第一對象與使用粒子建模的第二對象之間的相鄰區(qū)域,并針對相鄰區(qū)域定義網(wǎng)格;對象建模模塊,被配置為基于存儲在網(wǎng)格的網(wǎng)格點中的信息計算相鄰區(qū)域中的第一對象與第二對象之間的作用力,并基于計算出的作用力對第一對象和第二對象進行建模。
[0020]網(wǎng)格轉(zhuǎn)換模塊可被配置為提取相鄰區(qū)域中的第一對象或第二對象的輪廓與網(wǎng)格的和所述輪廓相鄰的網(wǎng)格點之間的距離值,并將提取的距離值存儲在網(wǎng)格的網(wǎng)格點中。
[0021]對象建模模塊可包括:驗證器,被配置為驗證在相鄰區(qū)域中第一對象的粒子與第二對象的粒子之間是否發(fā)生碰撞;檢測器,被配置為基于驗證的結(jié)果檢測在相鄰區(qū)域中的第一對象的粒子和第二對象的粒子之中的第一對象的碰撞粒子;重新定義器,被配置為重新定義檢測到的第一對象的碰撞粒子的位置;計算器,被配置為基于第一對象的碰撞粒子的重新定義的位置,計算響應(yīng)于碰撞而施加到第二對象的作用力。
[0022]重新定義器可被配置為:基于存儲在與包括檢測到的第一對象的碰撞粒子的單元對應(yīng)的網(wǎng)格點中的梯度和距離值,計算第一對象的碰撞粒子的運動方向和最短運動距離,使得第一對象的碰撞粒子不會穿透第二對象,并且基于計算出的運動方向和計算出的最短運動距離,重新定位第一對象的碰撞粒子。
[0023]計算器可被配置為計算估計的在第一對象的碰撞粒子的重新定義的位置由第二對象施加到第一對象的碰撞粒子的力,基于計算出的力計算響應(yīng)于碰撞而施加到第二對象的作用力,并將計算出的作用力存儲在網(wǎng)格的與包括檢測到的第一對象的碰撞粒子的單元對應(yīng)的網(wǎng)格點中。
[0024]通過提供一種用于對對象進行建模的設(shè)備來實現(xiàn)前述和/或其它方面,所述設(shè)備包括:存儲器,被配置為記錄用于控制所述設(shè)備的操作的程序;至少一個處理器,被配置為執(zhí)行所述程序。所述程序可被配置為檢測使用粒子建模的第一對象與使用粒子建模的第二對象之間的相鄰區(qū)域,針對相鄰區(qū)域定義包括多個單元的網(wǎng)格,并基于相鄰區(qū)域中的第一對象與第二對象之間的作用力來對第一對象和第二對象進行建模,可基于存儲在網(wǎng)格的網(wǎng)格點中的信息計算所述作用力。
[0025]示例實施例的其它方面將在下面的描述中部分地闡明,并且從所述描述部分地將是清楚的,或者可通過本公開的實施被了解。
【附圖說明】
[0026]從以下結(jié)合附圖對示例實施例的描述,這些和/或其它方面將變得清楚且更容易理解,在附圖中:
[0027]圖1示出根據(jù)示例實施例的在對對象進行建模的方法中使用的相鄰區(qū)域;
[0028]圖2示出根據(jù)示例實施例的對對象進行建模的方法;
[0029]圖3示出根據(jù)示例實施例的在對對象進行建模的方法中針對相鄰區(qū)域定義網(wǎng)格的操作;
[0030]圖4示出根據(jù)示例實施例的在對對象進行建模的方法中計算第一對象與第二對象之間的作用力的操作;
[0031]圖5示出根據(jù)示例實施例的在對對象進行建模的方法中計算第一對象與第二對象之間的作用力的操作;
[0032]圖6示出根據(jù)示例實施例的用于對對象進行建模的設(shè)備;
[0033]圖7示出根據(jù)示例實施例的用于對對象進行建模的設(shè)備;
[0034]圖8示出根據(jù)示例實施例的對對象進行建模的方法;
[0035]圖9示出根據(jù)示例實施例的基于每個模塊的操作順序在用于對對象進行建模的設(shè)備中處理相鄰區(qū)域和作用力的處理;
[0036]圖10示出根據(jù)示例實施例的在用于對對象進行建模的設(shè)備中通過網(wǎng)格模塊的中繼處理流體與可變形對象之間的相互作用的處理;
[0037]圖11示出根據(jù)示例實施例的用于對對象進行建模的設(shè)備的操作方法;
[0038]圖12示出根據(jù)示例實施例的在用于對對象進行建模的設(shè)備中的流體建模模塊的操作方法;
[0039]圖13示出根據(jù)示例實施例的在用于對對象進行建模的設(shè)備中的可變形對象建模模塊的操作方法;
[0040]圖14示出根據(jù)示例實施例的在用于對對象進行建模的設(shè)備中的網(wǎng)格模塊的操作方法。
【具體實施方式】
[0041 ] 現(xiàn)在將詳細描述實施例,實施例的示例在附圖中被示出,其中,相似的標(biāo)號始終表示相似的元件。以下通過參照附圖來描述示例實施例以解釋本公開。
[0042]雖然本公開可進行各種修改并具有若干實施例,但是特定實施例將在附圖中被示出并被詳細解釋。然而,本公開不意圖被限制,而意在各種修改、等同物和替代物也包含在權(quán)利要求的范圍內(nèi)。
[0043]這里使用的術(shù)語僅用于解釋特定實施例,因此不意圖進行限制。單數(shù)表達包括復(fù)數(shù)表達,除了這兩種表達在上下文彼此不同之外。這里,術(shù)語“包括”或“具有”意圖指示存在說明書中公開的特征、數(shù)字、步驟、操作、組件、元件或者它們的組合。相反,術(shù)語“包括”或“具有”應(yīng)被理解為不預(yù)先排除存在一個或更多個其它特征、數(shù)字、步驟、操作、組件、元件或它們的組合,或者另外的可能性。
[0044]除非被不同地定義,否則這里使用的所有術(shù)語(包括技術(shù)術(shù)語或科學(xué)術(shù)語)具有與和本公開的領(lǐng)域相關(guān)的技術(shù)領(lǐng)域的技術(shù)人員通常理解的含義相同的含義。與在通用的字典中定義的術(shù)語相同的術(shù)語應(yīng)該被理解為術(shù)語具有與現(xiàn)有技術(shù)的上下文含義相同的含義。并且,只要術(shù)語沒有在本公開中被明確定義,術(shù)語就不應(yīng)被解釋為理想化或過于正式的含義。
[0045]在下文中,將參照附圖更詳細地解釋特定實施例。相同的組件或彼此對應(yīng)的組件將被提供相同的標(biāo)號,并將省略