1. 程式人生 > >微信小遊戲-CocosCreator 基礎(一)

微信小遊戲-CocosCreator 基礎(一)

路徑:不中文
設定IDE=》偏好設定=》資料編輯=》外部指令碼編輯器

cocosCreator:
resources: cocos2d-x引擎 :C++
engine :H5引擎:js
模擬器 :resources=》cocos2d-x=》simulator=》win32=》simulator.exe

擴充套件安裝包:c=》使用者=》user=》cocosCreator=>packages
cocosCreator自身編譯日誌 : c=》使用者=》user=》cocosCreator=>logs
模擬器儲存本地資料 =>c=》使用者=》user=》appData=>Roaming=>cocosCreator=>Local Storage (cache快取,GPUCache GPU快取)

瀏覽器=》F12=》檢視列印資訊

Anchor和Position=》
Anchor是 錨點相對節點左下角原點的值
Position是錨點相對螢幕左下角原點的值

Opacity :透明度
Skew:扭曲角度
Group :新增分組對節點進行管理

======================================
assets資料夾:
resources :程式碼載入檔案
res :普通資源
scenes :場景檔案
scripts ;程式碼

臨時資料夾 :除了assets

.gitgnore :為提交到git的忽略檔案
creator.d.ts:智慧提醒生成檔案,更新:開發者=》vsc工作流 =》更新vsc智慧提示資料
jsconfig.json:專案配置檔案
project.json:專案配置檔案

專案設定=》模組設定=》可根據實際情況勾選需要的模組,獲得最小的打包

專案預覽=》設定測試預覽的開始場景
佈局

為何能跨平臺=》


構建釋出=》設定平臺,開始場景
======================================================

元件式開發
新增指令碼至節點上 :自動new例項化指令碼

疑問=》ccc上指令碼start沒有key

不能在Update 裡面加wait,複雜演算法,載入大資源。解決方法=>(佇列,非同步)

fps越高,重新整理間隔越少,系統的fps一般設定為60fps,到達60系統會控制範圍,dt越小, 少數機子fps偏低

組建類:必須繼承自cc.compont
meta :
作用:儲存檔案屬性以及根據uuid繫結指令碼,無論改變資源管理器路徑都能指定出檔案
 注意:不能刪除meta,也必須提交版本管理

儲存指令碼,白光閃=》指令碼解析完成
=======================================================================

開發模式
   
   面向物件得開發模式:
        龐大的繼承體系,和多型;

        Java:   ball--> 籃球--> SPORTS的籃球 -->  歷史包袱;


   
   全新的開發模式:
       包含體系:
     節點開始的: {
        完成某個功能的模組1  --> 元件類的例項
        完成某個功能的模組2  --> --> 元件類的例項
        完成某個功能的模組3  --> --> 元件類的例項
        完成某個功能的模組5  --> 元件類的例項
     }

    
     節點2 {
        完成某個功能的模組3  --> 元件類的例項
        完成某個功能的模組5  --> 元件類的例項
      }


      節點3 {
           完成某個功能的模組2
           完成某個功能的模組3
       }


    開發模式:
      1: 通過編輯器/程式碼,來建立一個節點,節點是遊戲裡面的元素的最小單位;
      2: 開發一個類: 元件類, 元件類完成不同功能的類; 分為兩大類:  
        系統自帶的元件類:
        自己開發的元件類:
      3: 例項化 new 類  --> 節點容器上面


      1: 建立一個節點;  編輯器建立,程式碼建立;
      2: 定義一個類, javascript 建構函式--> 元件類; 
      3: new 類--> 元件例項, --> 節點容器裡面;  --> 類的方法;

       
   介面上新增元件:
      1: var instance = new 元件類;
      2: isntance --> 放到節點這個容器裡面 --》 把這個元件掛到這個節點上;

   執行的時候:
     1:遊戲引擎會去載入整個場景的,new 場景裡面的每個節點,new場景裡面的每個元件,,, 完成;
     
載入機制:
     2: 元件類的例項.onLoad方法,會再場景載入的時候都被遊戲引擎呼叫;
       元件類的例項.onLoad --> 進入到onLoad --> this --> 元件類的例項
      
  
     3:當場景裡面所有的節點上面所有的元件都被呼叫onLoad, 
     
     4: 再遍歷一次場景,然後遍歷節點容器裡面的每個元件例項,  元件例項.start方法();


   當遊戲場景的onload, start都呼叫完後,
   我們的遊戲引擎會 每隔一段時間重新整理一次,
   每隔一段時間重新整理一次;

     1: 隔多久繪製一次???
        FPS: frames per second: 1秒鐘繪製多少次??
        FPS越高 動畫就越流暢, CPU就會消耗的更多: 1:其他的APP,使用CPU緊張了,系統卡起來了; 2: CPU長期處於高負荷運轉,耗電;
        到底設定多少合適呢?60FPS, 如果CPU可以又能力繪製超過60, 我們也不繪製了,讓CPU休息一會,留給其他的應用,或者省電;
        不是說有的手機的CPU,能夠繪製到60FPS,又時候,它只能到30FPS--》低;

        假設CPU很厲害, 不是永遠不超過60FPS,又時候,60FPS上下;  1 / 60FPS = 0.016s;

    元件例項.update(dt) { }   --> this 元件例項