Thursday, April 24, 2008

重新認識 Newton Game Dynamics

我在製作「 Final Spike 」的時候,因為自己一直做的 Collision Detect 做得不好,所以後來用了一個可以在 C Compiler 下使用的 Newton Game Dynamics (NGD),那時候對她的認知真的是不足夠,很多時候用一些比較奇怪的方法來達到效果。

近來有機會再細研一下 NGD,有關於不使用 Dynamic 部份,而只用其 Collision Detection 的功能,對她的認識多了,便開始發覺她確實是越來越易用,而且比起其他 Physics engine 更容易理解。對我來說,Physics engine 都是很難理解的,因為對於當中牽涉到的數學技術,我完全不明白,我只懂得一個最基本的認知:萬有引力。

自己在五、六年前也試過做 3D Collision Detection,難度真的很高,而且我的數學根底不好,所以特別吃力,就是因為做了一段時間也沒有進展,才會選擇用 Physics engine 來代勞。到了現在用多了 NGD,就覺得她的 Collision Detection 部份其實也很簡單易明,所以看來自己往後的 Ogng'3D 的遊戲引擎,也會用上 NGD 的這個部份了。

2 comments:

以手代口 said...

您好,初次留言,小弟目前在針對一篇遊戲方面的演講做翻譯,演講中不斷出現"game dynamics",由於鮮少接觸這領域,因此讓我不知道該如何翻譯;而意外搜尋到您的網誌講到Newton game dynamics,文章第二段"有關於不使用 Dynamic 部份",好奇請問這是什麼樣的功能?
若您對此篇演講有興趣,可至http://www.ted.com/talks/seth_priebatsch_the_game_layer_on_top_of_the_world.html聆聽。

Ngan Lo ( 顏佬 ) said...

"game dynamics" 簡單一點, 就是遊戲專用的物理模擬 (physics simulation), 因為遊戲是一種需求速度的電腦程式, 所以便衍生了這種快速的物理模擬 "game dynamics" 了.

而我文中所說的, 不使用 Dynamics 部份, 就是說我只用了 Newton game dynamics 中的 collision detection 部份 (collision detection 都是每個 physics simulation 中的基本功能), 即是說不使用它的物理模擬, 只用了它的基本功能.