程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2ME >> 2D游戲動畫播放程序設計的一些想法

2D游戲動畫播放程序設計的一些想法

編輯:J2ME
如果說一個游戲程序的表現力在於美術的話,那麼動畫就是美術的靈魂,沒有好的動畫控制就沒有好的游戲表現力。我所寫的文章都是針對小軟件公司,或者說游戲工作室的並不適合大型的軟件公司,如果是大型的軟件公司必須有非常好的游戲引擎開發專門針對自己公司游戲開發的游戲引擎。我所寫的這些經驗或者說啟迪性的文章都是針對小規模的游戲開發者,他們需要較為方面的工具,有沒有非常空閒的人力去開發成熟的游戲引擎(比如一套成熟的地圖編輯器,一個成熟的動畫設計器,成熟的RPG腳本系統,等等).這寫都是我寫什麼loading管理,地圖的設計一些初衷,小游戲公司要有小游戲公司的開發方法,如果按照大游戲公司的開發方法開發會因為投入不夠的原因導致很多的問題。出於成本的考慮我們不得不找一些適合小游戲公司的開發手段和經驗。不多說了,主要說明我設計的動畫控制程序的思想吧。

           世界上有這麼多的動畫播放和制作軟件,為什麼我們不擇其優而學之呢?對就是因為這個原因,我選擇了FLASH作為動畫播放程序的設計方案.為什麼我強調公司的規模呢?因為小公司需要小的能用的好用的工具,這個可能不是gui的,可能僅僅是腳本的,還需要用我們的紙幣記錄的東西,但是開發效率比較高,大公司就不一樣了,可以用gui的,非常強大的工具.我們是小的,所以我選擇用最簡單最好用的方法來做動畫控制的程序,而不是花好幾個人力幾個月去做.我吸收了一些Flash方面的思想來處理動畫方面的東西。也就是說你可以按照我的思想開發出更加強大的東西,我只是起一個拋磚引玉的作用,如果你們公司規模大就開發的完整度高,使用范圍廣,像我們一樣的小公司就開發出能用稍微好用一點就滿足使用的規模就可以了。

          具體思想:首先我們提取動畫的一切必要元素:圖片,時間,這就是最基本的,更高級的是圖層,場景,視角,以及動作,甚至動作列表轉換等等。我們工作室的主要的需求主要是一群動作列表,我就只完成到了圖層那部分,有實力的應該完成的更高。我的設計思想簡單的表述如下:動作拆分如下:
1、圖層0 (最底層塗層)
2、動作1(id標號)
3、圖片序列(一些圖片id標號)
4、FRAME數記錄
5、動作2(id標號)
6、圖片序列
7、FRAME數記錄
。。。。。。。
N、圖層1(比0高一級)
。。。。。

          這樣我們的動畫播放程序可以直觀的用程序表現出來,按照圖層由低到高,按照動作id,根據時隙按照圖片序列進行繪制,一個非常好用的動畫播放程序就出來了,想象一下,你可以畫一個太陽作為圖層0,然後給太陽外面帶個墨鏡作為圖層1,再畫個嘴作為圖層3,每個圖層有不同的動作,你的太陽就會根據你的每個動作id做出不同的搞笑動作.

   這就是我做的動畫播放,動畫設計的一些小方法,希望可以引出更多的牛X人物來寫一寫他們的思想,比如gameloft的波斯王子的作者,寫一寫他們的思想可能比我的要有價值的多,希望更多人來多寫寫思想,因為思想比代碼更為重要。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved