2.5d 游戲開發引擎 IndieLib

fmms 12年前發布 | 31K 次閱讀 游戲 游戲開發

IndieLib是一個 2.5d引擎,使用它可以簡化游戲開發的難度,提高游戲開發的速度。內部它使用Direct3d做硬件加速,但它并沒有使用DirectDraw或者 ID3DXSprite,而是直接將材質渲染在多邊形上。它的設計重點是快速2d渲染,但同時也可以渲染3d模型。

2.5d 游戲開發引擎 IndieLib

IndieLib的主要特點是:

  1. 簡單的接口和超強的易用性:使用entities來代表圖形實例,可以調用簡單的函數來設置它們的屬性。如"SetPos", "SetCollisionArea", "SetFade", "SetTransparency",等 等
  2. sprites移位、旋轉、鏡像和縮放
  3. sprites Alpha blending, transparency, tinting and fading
  4. 渲染任何尺寸的圖片(不一定非要是2的次方)。你可以載入10000x10000像素或更大的圖片,IndieLib在內部會自動將它們分割成小的區塊。 還有,IndieLib可以自動丟棄顯示窗 口以外的區塊,提高渲染速度。在IndieLib中,還可以使用攝像機(camera),當使用攝像機時(如旋轉,拉遠拉近等)只有你看到的會被渲染。
  5. SetGrid函數可以給sprites設定grids,所以當移動grid上的點時,可以得到如波浪等的特殊效果
  6. 2d和3d攝像機(camera)概念,完全獨立于圖形。可以方便的移位、旋轉和拉遠拉近
  7. 可以方便的創建多個視角(viewport),方便創建大屏幕分屏游戲
  8. 隨意縮放,引擎會自動決定是否顯示圖形
  9. 動畫系統,使用XML文件定義動畫文件
  10. 高級碰撞檢測系統,使用xml文件定義碰撞區域。區域類型可以是圓圈、矩形和三角形。還可以將多個碰撞區域定義為組,從而方便檢測組成員的所有碰撞。定義 碰撞區域后, 你不用擔心移位、縮放等操作會導致碰撞失效。引擎會自動重新計算碰撞區域。(非常適合于街頭霸王類型的打斗游戲)
  11. 位圖文字系統
  12. 渲染3d Mesh(你可以方便的將2d與3d圖形混合起來顯示)。也可以對3d模型進行方便的移位、旋轉、鏡像和縮放操作。這個特性可以是你制作"New Super Mario Bros"這樣角色 是3d,而場景是2d的游戲
  13. 燈光系統,可以為3d模型加入燈光效果
  14. 定時器(Timer),開始、結束、暫停,可以方便的控制時間
  15. 實體(Entity)類,用于2d或3d圖形,可以方便的控制圖形。
  16. Image類,用于載入、保存不同格式的圖片文件,還可以實現gaussian, noise, equalize, saturation等特效
  17. 直接blit基本圖形(矩形、圓圈、多邊形、直線等)
  18. 鼠標、鍵盤輸入支持

IndieLib是一個開源引擎,它的License是LGPL,這就是說你可以將它用于商業項目。

項目主頁:http://www.baiduhome.net/lib/view/home/1333167229186

 本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!