日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

【cocos2d-x从c++到js】16:使用cocos2d-console工具转换脚本为字节码

發(fā)布時間:2025/5/22 c/c++ 123 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【cocos2d-x从c++到js】16:使用cocos2d-console工具转换脚本为字节码 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

從Cocos2D-X v2.1.4版本開始,增加了Cocos2D-console命令行工具,該工具的其中一個功能是:把.js文件轉(zhuǎn)換為.jsc文件,該文件是字節(jié)碼格式,可以提高代碼的安全性。


使用這個工具的方式很簡單。以引擎自帶的TestJavaScript項目為例:

首先我們cd到Cocos2D-console的目錄

goldliontekiMacBook-Pro:~ goldlion$ cd /Users/goldlion/Documents/developer/cocos2d-x-3.0beta/tools/cocos2d-console/console


然后可以看到里面有很多.py腳本

cocos2d_jscompile.py

cocos2d_version.py

cocos2d.py

cocos2d_new.py


其中cocos2d.py是我們要使用的主腳本文件。使用命令./cocos2d.py jscompile --help查看編譯字節(jié)碼的命令格式


goldliontekiMacBook-Pro:console goldlion$ ./cocos2d.py jscompile --help Usage: cocos2d.py jscompile -s src_dir -d dst_dir [-c -o COMPRESSED_FILENAME -j COMPILER_CONFIG] Options:-h, --help show this help message and exit-s SRC_DIR_ARR, --src=SRC_DIR_ARRsource directory of js files needed to be compiled,supports mutiple source directory-d DST_DIR, --dst=DST_DIRdestination directory of js bytecode files to bestored-c, --use_closure_compilerWhether to use closure compiler to compress all jsfiles into just a big file-o COMPRESSED_FILENAME, --output_compressed_filename=COMPRESSED_FILENAMEOnly available when '-c' option was True-j COMPILER_CONFIG, --compiler_config=COMPILER_CONFIGThe configuration for closure compiler by using JSON,please refer to compiler_config_sample.json


參數(shù)非常簡單,一個輸入目錄,一個輸出目錄,后面加一組可選參數(shù)。該工具在遍歷.js文件時支持文件夾遞歸訪問,在輸出.jsc文件時支持按照源文件夾的結(jié)構(gòu)全部新建文件夾。易用性還是不錯的。


TestJavaScript其中一個文件夾ExtensionsTest使用Cocos2D-console工具進行加密來測試。輸出路徑設(shè)置為桌面

./cocos2d.py jscompile -s /Users/goldlion/Documents/developer/cocos2d-x-3.0beta/samples/Javascript/Shared/tests/ExtensionsTest -d /Users/goldlion/Desktop/ExtensionsTest


打開輸出的ExtensionsTest文件夾看到,所有.js都變成了.jsc,并且體積都大幅度減小。


下面說一下可選參數(shù),可選參數(shù)的意思是使用closure compiler工具壓縮代碼為一個文件。

COMPRESSED_FILENAME是壓縮后的文件名,最好使用xxx.js,因為工具會自動再后面加個c

COMPILER_CONFIG是壓縮時調(diào)用的配置文件,需要根據(jù)項目需求自己填寫,在bin目錄下有一個做好的缺省例子可以使用,compiler_config_sample.json


我并不建議使用這種做法,因為:

1.如果將所有腳本都壓縮為一個文件,那么每次更新都要重新下載這個文件,對于一些對省流量要求很高的公司不適合。

2.壓縮的目的是隱藏文件目錄結(jié)構(gòu),但是這個工具只壓縮了腳本部分,對于圖片,動畫,數(shù)據(jù),音頻視頻等等都是不考慮的。而一般開發(fā)的方式需要把所有資源都壓縮成一個文件,然后在游戲在線更新時只下載更新檔,通過程序?qū)⒏聶n中的文件打入到大文件中。注意這涉及到二進制級別的比較刪除以及合并,需要做非常仔細的設(shè)計,




《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的【cocos2d-x从c++到js】16:使用cocos2d-console工具转换脚本为字节码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。