微信小遊戲-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 元件例項