国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用

這篇具有很好參考價值的文章主要介紹了CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。


我們通過Dashboard 創(chuàng)建一個2d項目,來演示CocosCreator 的項目結(jié)構(gòu)。


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


等待創(chuàng)建完成后,會得到以下項目工程:

CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


一、assets文件夾


assets文件夾:為資源目錄,用來存儲所有的本地資源,如各種圖片,腳本資源。

只有在這個目錄下的內(nèi)容才會顯示在cocos編輯器的資源管理器中。


其中非常重要的一點,assets 中每個文件在導(dǎo)入后都會生成一個和文件同名的.meta 文件。


1、meta 文件的作用

理解 meta 文件的作用和更新時機,對于我們在解決資源沖突、文件丟失、組件屬性丟失等問題時,有非常重要的意義。


例如,我們在cocos 編輯器的資源管理器中,創(chuàng)建一個名字為script 的文件夾, 用于存儲腳本文件。


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


創(chuàng)建完成后得到會生成一個和文件同名的script.meta 文件:

CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


script.meta 文件內(nèi)容:

包含 ver (版本)、 uuid(唯一id) 、importer (資源類型)等參數(shù)。


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


我們再來導(dǎo)入一張圖片資源:

CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


圖片資源生成的meta文件內(nèi)容比較多,除了基本的 veruuid 等信息外,還記錄了圖片的尺寸、偏移、九宮格等數(shù)據(jù)。

如下:

{
  "ver": "1.0.26",
  "importer": "image",
  "imported": true,
  "uuid": "dadcda60-4fe7-4bdb-86cd-46dbf91c97d4",
  "files": [
    ".jpg",
    ".json"
  ],
  "subMetas": {
    "6c48a": {
      "importer": "texture",
      "uuid": "dadcda60-4fe7-4bdb-86cd-46dbf91c97d4@6c48a",
      "displayName": "20230816090210",
      "id": "6c48a",
      "name": "texture",
      "userData": {
        "wrapModeS": "clamp-to-edge",
        "wrapModeT": "clamp-to-edge",
        "imageUuidOrDatabaseUri": "dadcda60-4fe7-4bdb-86cd-46dbf91c97d4",
        "isUuid": true,
        "visible": false,
        "minfilter": "linear",
        "magfilter": "linear",
        "mipfilter": "none",
        "anisotropy": 0
      },
      "ver": "1.0.22",
      "imported": true,
      "files": [
        ".json"
      ],
      "subMetas": {}
    },
    "f9941": {
      "importer": "sprite-frame",
      "uuid": "dadcda60-4fe7-4bdb-86cd-46dbf91c97d4@f9941",
      "displayName": "20230816090210",
      "id": "f9941",
      "name": "spriteFrame",
      "userData": {
        "trimType": "auto",
        "trimThreshold": 1,
        "rotated": false,
        "offsetX": 0,
        "offsetY": 0,
        "trimX": 0,
        "trimY": 0,
        "width": 900,
        "height": 1100,
        "rawWidth": 900,
        "rawHeight": 1100,
        "borderTop": 0,
        "borderBottom": 0,
        "borderLeft": 0,
        "borderRight": 0,
        "packable": true,
        "pixelsToUnit": 100,
        "pivotX": 0.5,
        "pivotY": 0.5,
        "meshType": 0,
        "vertices": {
          "rawPosition": [
            -450,
            -550,
            0,
            450,
            -550,
            0,
            -450,
            550,
            0,
            450,
            550,
            0
          ],
          "indexes": [
            0,
            1,
            2,
            2,
            1,
            3
          ],
          "uv": [
            0,
            1100,
            900,
            1100,
            0,
            0,
            900,
            0
          ],
          "nuv": [
            0,
            0,
            1,
            0,
            0,
            1,
            1,
            1
          ],
          "minPos": [
            -450,
            -550,
            0
          ],
          "maxPos": [
            450,
            550,
            0
          ]
        },
        "isUuid": true,
        "imageUuidOrDatabaseUri": "dadcda60-4fe7-4bdb-86cd-46dbf91c97d4@6c48a",
        "atlasUuid": ""
      },
      "ver": "1.0.12",
      "imported": true,
      "files": [
        ".json"
      ],
      "subMetas": {}
    }
  },
  "userData": {
    "type": "sprite-frame",
    "fixAlphaTransparencyArtifacts": true,
    "hasAlpha": false,
    "redirect": "dadcda60-4fe7-4bdb-86cd-46dbf91c97d4@f9941"
  }
}

上面這么多信息中,我們只需要關(guān)心:UUID

UUID 是每個文件唯一的 id,Creator 引擎通過 UUID 來引用文件, 實現(xiàn)游戲資源管理。


2、.meta 文件更新時機


(1)、打開工程時

打開工程時,Creator 會先掃描 assets 目錄,如果哪個文件還沒有 meta 文件,此時就會生成。


(2)、更新資源時

  • 在資源管理器中對資源進(jìn)行文件名修改、改變目錄、添加文件、刪除文件時。
  • 在操作系統(tǒng)的文件管理器中對 assets 目錄中的文件進(jìn)行增、刪、改后,切換到編輯器界面時。

? 如果一個文件或者目錄的 meta 文件不存在,上面兩種情況都會觸發(fā)引擎去生成新的meta 文件。


3、.meta 文件出錯時的解決辦法


(1)、UUID 發(fā)生變化問題


這種情況,一般在多人協(xié)作時,經(jīng)常會出現(xiàn)。 當(dāng)UUID 發(fā)生變化,會使舊的 UUID 對應(yīng)的資源無法找到, 編輯的界面會出現(xiàn)資源、圖片丟失,還可能出現(xiàn)組件屬性丟失的情況。


如圖:

CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


UUID 發(fā)生變化原因:

前面一個人將新資源添加進(jìn)項目,忘記切換到編輯器界面使其生成 meta 文件,同時又將新增的文件提交到了版本管理中(不包含 meta 文件)。

后面另一個人,去更新了前面一個人所提交的資源,同時切換到了編輯器界面進(jìn)行編輯, Creator 會檢查到新資源沒有 meta 文件便會立即生成。

當(dāng)?shù)谝粋€人切換到編輯器的時候也會生成 meta 文件,這樣兩個人的電腦上為同一個文件,但是生成的 meta 文件中的 UUID 都不相同。

這樣后面進(jìn)行資源提交或更新的人,肯定也會遇到?jīng)_突。


UUID 發(fā)生變化的解決辦法和注意事項:

  • 提交前檢查是否有新增文件,有新增文件時,注意是否有 meta 文件,沒有meta 文件 一定要重新打開cocos 編輯器,生成新的meta文件,然后再一起提交。

  • 提交時如果發(fā)現(xiàn)只有新增的 meta 文件,那這個 meta 文件肯定是自己生成的,需要查看是否使用過這個 meta 文件對應(yīng)的資源。如果沒用過,那請最早提交者把 meta 文件提交了。此時千萬不能將這個 meta 文件提交上去。**

  • 拉取文件時,注意是否有新增文件,并且是有 meta 文件成對,如果沒有的話,提醒之前文件提交者,把 meta 文件一并提交。

(2)、UUID 沖突問題


UUID 是全局唯一的,產(chǎn)生沖突肯定是有不同的文件的 UUID 相同了,一旦出現(xiàn)這個問題,會導(dǎo)致 Cocos Creator 資源管理器目錄結(jié)構(gòu)加載不完整。


UUID 沖突問題原因:UUID 沖突一般是誤操作引起。


比如在操作系統(tǒng)的文件管理器中移動文件時,將剪切、粘貼不小心操作成了復(fù)制、粘貼,同時也把 meta 文件復(fù)制過去了。導(dǎo)致項目中同時出現(xiàn)兩個相同的 meta 文件。


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8

?

從上圖提示中可以看到?jīng)_突的 UUID 字符串。

UUID 沖突解決辦法:

第一步,打開操作系統(tǒng)文件管理或代碼編輯器,搜索沖突的UUID,如圖:


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


第二步,關(guān)閉Cocos Creator 編輯器,然后任意刪除其中一個 meta 文件。


第三步,再重新打開 Creator 編輯器即可解決。


第四步,雖然通過上面三步,解決了目錄結(jié)構(gòu)加載不完整的問題。但是編輯器引用到這個資源的地方就會出現(xiàn)資源丟失,所以還得需要重新編輯或者重新配置一次資源。


為了避免 UUID 沖突發(fā)生,最好在引擎資源管理工具中進(jìn)行添加、移動文件。


二、library文件夾


library 是將 assets 中的資源導(dǎo)入后生成的,這里文件的結(jié)構(gòu)和資源的格式將被處理成最終游戲發(fā)布時需要的形式。


當(dāng) library 丟失或損壞的時候,只要刪除整個 library 文件夾再打開項目,就會重新生成資源庫。


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


三、構(gòu)建目標(biāo)(build)


在使用編輯器主菜單中的 項目 -> 構(gòu)建發(fā)布 使用默認(rèn)發(fā)布路徑發(fā)布項目后,編輯器會在項目路徑下創(chuàng)建 build 目錄,并存放所有目標(biāo)平臺的構(gòu)建工程。


例如,我們構(gòu)建一個 web手機端的工程。

CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


四、編輯器配置目錄(profiles)


profiles 文件夾中包含編輯器的配置信息,包括各目標(biāo)平臺的構(gòu)建配置信息、場景配置信息等


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8

CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


五、項目設(shè)置目錄(settings)


settings 文件夾保存項目相關(guān)的設(shè)置,如項目設(shè)置面板中的配置信息。


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


六、臨時文件夾(temp)


temp 顧名思義,是臨時文件夾,用于緩存 Cocos Creator 在本地的臨時數(shù)據(jù)文件,可在關(guān)閉 Cocos Creator 后手動刪除。


七、package.json


package.json 文件和 assets 文件夾一起,是驗證 Cocos Creator 項目合法性的標(biāo)志,只有包括了這兩個內(nèi)容的文件夾才能作為 Cocos Creator 項目打開。


八、tsconfig.json


tsconfig.json 文件,我們在前面在介紹vs code 配置api 智能提示時已經(jīng)接觸過了。


九、擴展插件文件夾(extensions)


extensions 文件夾用于存放項目的自定義擴展插件。如需卸載擴展插件,在 extensions 中刪除對應(yīng)的文件夾即可。


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8


CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用,CocosCreator3.8,筆記,編輯器,CocosCreator,CocosCreator3.8文章來源地址http://www.zghlxwxcb.cn/news/detail-694242.html

到了這里,關(guān)于CocosCreator3.8研究筆記(三)CocosCreator 項目結(jié)構(gòu)說明及編輯器的簡單使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • CocosCreator3.8研究筆記(十九)CocosCreator UI組件(三)

    CocosCreator3.8研究筆記(十九)CocosCreator UI組件(三)

    前面的文章已經(jīng)介紹了Layout 組件 、ScrollView 組件 、PageView 組件 。 想了解的朋友,請查看 CocosCreator3.8研究筆記(十八)CocosCreator UI組件(二)。 今天我們主要介紹CocosCreator 常用組件:Button 組件 、EditBox 組件 、ProgressBar 組件、Toggle 組件。 一、Button 組件 Button 組件可以響應(yīng)

    2024年02月04日
    瀏覽(19)
  • CocosCreator3.8研究筆記(六)CocosCreator 腳本裝飾器的理解

    CocosCreator3.8研究筆記(六)CocosCreator 腳本裝飾器的理解

    一、什么是裝飾器? 裝飾器是TypeScript腳本語言中的概念。 TypeScript的解釋:在一些場景下,我們需要額外的特性來支持標(biāo)注或修改類及其成員。裝飾器(Decorators)為我們在類的聲明及成員上通過元編程語法添加標(biāo)注提供了一種方式。 在TypeScript中,裝飾器分為:類裝飾器、屬

    2024年02月09日
    瀏覽(20)
  • CocosCreator3.4.2源碼渲染流程解讀

    CocosCreator3.4.2源碼渲染流程解讀

    ?首先上一張腦圖鎮(zhèn)樓,有些流程還有待后續(xù)補充,但是整個刷新過程差不多都完成了。 在上一個xmind文件地址 https://download.csdn.net/download/m0_37609239/87254684 接下來就正式開始講代碼: 每幀刷新渲染還是從mainloop開始講,前面的流程可以看 ??????????????CocosC

    2023年04月08日
    瀏覽(19)
  • 【03Eclipse 窗口說明】對每個窗口和視圖的功能和用途的詳細(xì)說明導(dǎo)航欄編輯器窗口項目資源管理器

    【03Eclipse 窗口說明】對每個窗口和視圖的功能和用途的詳細(xì)說明導(dǎo)航欄編輯器窗口項目資源管理器

    Eclipse 是一款功能強大的集成開發(fā)環(huán)境(IDE),提供了豐富的窗口和視圖來支持開發(fā)工作。本教程將詳細(xì)介紹 Eclipse 主要窗口和常見視圖的功能和用途。 1. 導(dǎo)航欄 導(dǎo)航欄位于 Eclipse 窗口的頂部,包含了各種菜單和工具欄,用于導(dǎo)航和執(zhí)行操作。 2. 編輯器窗口 編輯器窗口是您

    2024年02月08日
    瀏覽(22)
  • 【絕對清楚】Flask項目結(jié)構(gòu)(有項目文件夾詳細(xì)對照說明)

    【絕對清楚】Flask項目結(jié)構(gòu)(有項目文件夾詳細(xì)對照說明)

    插個目前實現(xiàn)的登錄頁面~?? 之前看了很多很多的Flask框架的項目結(jié)構(gòu),了解到它是一個高度靈活的輕量級web框架,意思就是項目的結(jié)構(gòu)不像Django那樣有著固定的模式,而是可以根據(jù)開發(fā)者的愛好進(jìn)行設(shè)計。這也就給想用正兒八經(jīng)的一種結(jié)構(gòu)寫一個網(wǎng)站帶來了困擾。好在看了

    2024年02月02日
    瀏覽(16)
  • ROS小車研究筆記1/31/2023 小車硬件結(jié)構(gòu)及鍵盤移動控制節(jié)點

    ROS小車研究筆記1/31/2023 小車硬件結(jié)構(gòu)及鍵盤移動控制節(jié)點

    1 小車硬件結(jié)構(gòu) 1 中控設(shè)備 上方的單片機用于控制電機運動,搭載wifi模塊和電量顯示屏。下方為樹莓派,安裝了ROS系統(tǒng)和Ubuntu系統(tǒng),用于整個小車控制。顯示屏和樹莓派相連 2 傳感器系統(tǒng) 激光雷達(dá)及轉(zhuǎn)換器。激光雷達(dá)和轉(zhuǎn)換器相連,再由轉(zhuǎn)換器連接樹莓派以控制激光雷達(dá) 攝

    2024年02月09日
    瀏覽(24)
  • Python界面編輯器Tkinter布局助手使用說明

    Python界面編輯器Tkinter布局助手使用說明

    Tkinter布局助手是一款為Tkinter打造,僅需拖拽組件進(jìn)行布局,所見即所得,非常方便就能做出一個GUI界面,再配合 pyinstaller 庫將程序打包成exe,簡直是開發(fā)小工具的利器。 當(dāng)?shù)谝淮谓佑|到Tkinter,覺得它很方便,兼容性也挺不錯,而且是Python自帶的。 后來為了方便布局,我開

    2024年03月15日
    瀏覽(21)
  • uni-app使用HBuilder X編輯器本地打包apk步驟說明

    uni-app使用HBuilder X編輯器本地打包apk步驟說明

    下載地址官方地址:Android Studio 下載文件歸檔 ?|? Android 開發(fā)者 ?|? Android Developers 安裝Android SDK和Google USB Driver即可,后者主要是為了后期使用USB設(shè)置的,如果不需要可以不點。 下載地址:Android 離線SDK - 正式版 | uni小程序SDK 注意:Android離線SDK的版本一定注意和HBuilder X的版

    2024年02月04日
    瀏覽(21)
  • 【2022級研究生人工智能高級語言程序設(shè)計考試說明】

    考試題共包括4道大題: 第一大題:分類和回歸----(7選1) 第二大題:降維和聚類----(6選1) 第三大題:API調(diào)用(課程中學(xué)習(xí)過的所有云平臺)----(11選1) 第四大題:深度學(xué)習(xí)項目----(10選1) 題目采取隨機分配方式,請查閱 人工智能高級語言程序設(shè)計考試-題目分配表 ,

    2024年02月11日
    瀏覽(99)
  • 技術(shù)文檔指南:版本說明、網(wǎng)站文案、FAQ、案例研究與內(nèi)容優(yōu)化

    Release Notes 通常是軟件文檔的一部分,是在新產(chǎn)品發(fā)布時提供給用戶的簡短、高級摘要。它們包含有關(guān)更新的重要信息,包括新功能、增強功能、錯誤修復(fù),通常還包括已知問題。每個版本說明與特定軟件版本相關(guān)聯(lián),并幫助用戶了解該特定版本中可以期待的哪些更改或改進(jìn)

    2024年02月03日
    瀏覽(17)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包