如果你是一個前端工程師,擅長JavaScript編程,有做一個小遊戲的需求,那麼強烈的推薦你使用create.js遊戲開發框架。相比cocos和egret,create.js可以直接用js的思路來操作畫布,完成小遊戲的製作。
Create.js有以下四個主要的模塊:EASELJS、TWEENJS、SOUNDJS、PRELOADJS。EASELJS提供了一套完整的方案用來進行canvas畫布操作;TWEENJS提供了一系列的動畫接口,可以實現漸變等效果;SOUNDJS用來處理音頻;PRELOADJS是一個用來管理和協調相關資源加載的類庫,可以對資源進行預加載。有了以上四個主要模塊的支持,create.js基本上可以滿足大部分小遊戲的開發需求。
本篇文章將介紹兩種遊戲效果的製作過程:
重力感應和射擊躲避。
利用重力感應遊戲場景的思路如下:
利用HTML5的DeviceOrientation,它將底層的方向和運動傳感器進行了高級封裝,可以用來實現重力感應,指南針等功能。我們需要用到DeviceOrientationEvent中的角度參數:alpha,beta,gemma。
判斷重力感應的對象移動的坐標,如果進入和一定的坐標範圍,可視為成功,跳轉場景。
具體代碼如下:
加載完成後,開始進行重力感應位置的檢測。如果精靈的位置,x和y坐標小於100px,就默認通關。切換至下一場景。
這個場景將會用到create.js的精靈圖及點擊事件相關的API。
主要有以下幾個:createjs.Stage、createjs.Bitmap、createjs.SpriteSheet、createjs.Sprite,具體用法移步create.js官網。
素材如下:
首先,獲取畫布,創建舞臺,顯示出上圖的人物效果。
當點擊時,人物做出反應。
當點擊的坐標x值小於人物所在位置的x值,則向左移動;
當點擊的坐標x值大於人物所在位置的x值,則向右移動。
最終效果如下: