青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

colorful

zc qq:1337220912

 

自定義路徑創建Cocos2d-x項目

http://www.cnblogs.com/skynet/archive/2013/11/17/3428369.html


--------------------------------------------------

自定義路徑創建Cocos2d-x項目

本文介紹windows下面如何優雅的創建Cocos2d-x項目。為何稱之為優雅,是因為現在網上流傳的一些創建方法有一些問題。大致內容如下:

使用VS向導創建Cocos2d-x項目(廢棄,不建議使用)

使用create_project.py

問題1:工程名等替換不完全

問題2:創建項目不能指定路徑

使用VS向導創建Cocos2d-x項目(廢棄,不建議使用)

Cocos2d-x 2.1.3及之前官方使用“install-template-msvc.bat”文件,安裝VS創建Cocos2d-x項目向導,然后可以按照向導創建Cocos2d-x項目。注意默認情況下,新建項目的存放的位置應該設置在Cocos2d-x引擎的安裝目錄下面,否則可能因為找不到庫文件而不能通過編譯。不過可以在設置項目屬性,頭文件和庫文件的搜索路徑來解決。可以參考我之前的一篇博文《C++靜態庫與動態庫》,里面介紹如何設置vs項目屬性使用靜態庫和動態庫。

Cocos2d-x 2.1.4,官方建議使用“create_project.py”來創建Cocos2d-x項目,并將在版本廢棄了“install-template-msvc.bat”

We recommend you use multi-platform creating tools named create_project.py, which lies in tools/project-creator, to create a new project. This tool can create a project has the same folder structure as HelloCpp. Other tools such as create-android-project.sh will be removed in future.

Note: VS template was deprecated in this release, please use 'tools/project-creator' instead.

——來自官網:http://goo.gl/yVAjMr

我入手Cocos2d-x的時候,剛發布Cocos2d-x 2.1.4,就被這個坑了。Cocos2d-x 2.1.4廢棄了“install-template-msvc.bat”,但是下載壓縮包里面又有,可惡的是不能用的,各種報錯。同時網上流傳的就是使用這種方法,讓我繞了不少路。

使用create_project.py

create_project.pycocos2d-x/tools/project-creator/目錄下)使用方法比較簡單:

Usage: create_project.py -project PROJECT_NAME -package PACKAGE_NAME -language PROGRAMING_LANGUAGE

Options:

 -project   PROJECT_NAMEProject name, for example: MyGame

 -package   PACKAGE_NAMEPackage name, for example: com.MyCompany.MyAwesomeGame

 -language PROGRAMING_LANGUAGEMajor programing lanauge you want to used, should be [cpp | lua | javascript]

Sample 1: ./create_project.py -project MyGame -package com.MyCompany.AwesomeGame

Sample 2: ./create_project.py -project MyGame -package com.MyCompany.AwesomeGame –language javascript

注意:

官方建議python使用2.7.3

安裝python之后需要設置環境變量,或者使用該腳本時指定python路徑,如C:\python27\python.exe create_project.py …

使用該方法創建項目之后,項目位于cocos2d-x/projects目錄下面。windows平臺進入proj.win32,打開工程文件即可。

使用create_project.py創建項目的原理,即簡單地將cocos2d-x\template目錄下的三種語言模板multi-platform-cppmulti-platform-luamulti-platform-js復制到對應的新建工程目錄下,然后用PROJECT_NAMEPACKAGE_NAME替換模板中的HelloCpp/ HelloLua/ HelloJavascript

問題1:工程名等替換不完全

下面是我用towergame做為工程名創建的lua項目,目錄如下:

clip_image001[4]

雖然可以正常編譯,但發現工程名未替換為towergame,這比較坑爹。一位日本開發者lettas已經有人提交了修復請求https://github.com/cocos2d/cocos2d-x/pull/3943,不過正式發布的版本中還沒有修改。急著用可以去github checkout下來用。

問題2:創建項目不能指定路徑

使用create_project.py不能自定義路徑,必須放在cocos2d-x/projects目錄下面,這個設定我認為非常不合理!這樣將自己的項目放到cocos2d-x引擎目錄中,不方便管理,即庫與項目耦合到一起了,如果cocos2d-x升級也不方便。

比較合理的方案是:

cocos2d-x獨立安裝,這樣對cocos2d-x升級也相對簡單。

新建cocos2d-x項目獨立于cocos2d-x安裝路徑。通過設置搜索或引用路徑,讓項目能夠找到cocos2d-x安裝路徑。

幸運的是,完全可以做到這樣。熟悉VS的同學應該知道,VS工程設置是支持環境變量的。通過下面的一些改造,可以讓新建的cocos2d-x項目獨立于cocos2d-x引擎目錄:

1)     將通過create_project.py創建的項目剪切到你希望放置的目錄;

2)     創建環境變量COCOS2DX_HOME,指向cocos2d-x安裝目錄;

3)     *.sln文件使用文本方式打開,將里面的所有相對路徑“..\..\..”都替換為環境變量%COCOS2DX_HOME%,如“..\..\..\cocos2dx\proj.win32\cocos2d.vcxproj”替換為“%COCOS2DX_HOME%\cocos2dx\proj.win32\cocos2d.vcxproj”

4)     *.vcxproj文件使用文本方式打開,將里面debugrelease 2種模式下<AdditionalIncludeDirectories>節點定義的引用路徑中包含”$(ProjectDir)..\..\..\”都替換為環境變量“$(COCOS2DX_HOME)\”;注意這里使用環境變量的方式與*.sln中不一樣,是$(COCOS2DX_HOME)而非%COCOS2DX_HOME%

至此,大工告成!看下面的運行起來的vs工程:

clip_image003[4]

圖中依賴的工程跟將新建的項目放在cocos2d-x/projects目錄下面一樣可以鏈接到。

上面的替換工作可以用文本的查找替換功能,可以輕松搞定。但是為了能夠與create_project.py集成,我提供下面一段代碼能夠自動替換.sln.vcxproj文件中對于內容:

 #!/usr/bin/python   

復制代碼
#-*- encoding:utf-8 -*-   

import sys, os

def checkOption():
    argLen = len(sys.argv)
    targetPath = "./"
    if argLen == 2:
        targetPath = sys.argv[1]
        if not targetPath.endswith("/"):
            targetPath += "/"
    return targetPath
    
def replaceCocos2dxPath(path):
    filelists = os.listdir(path)
    for item in filelists:
        suffix = (os.path.splitext(item))[1]
        print(suffix)
        if suffix == ".sln":
            print('replace "..\..\..\" with %COCOS2DX_HOME% in *.sln')
            #replace "..\..\..\" with %COCOS2DX_HOME% in *.sln 
            content = open(path + item, 'r').read().replace("..\\..\\..\\""%COCOS2DX_HOME%\\")
            file = open(path + item, 'w')
            file.write(content)
            file.close()
        if suffix == ".vcxproj":
            print('replace "$(ProjectDir)..\..\..\" with $(COCOS2DX_HOME)\ in *.vcxproj')
            #replace "$(ProjectDir)..\..\..\" with $(COCOS2DX_HOME)\ in *.vcxproj
            content = open(path + item, 'r').read().replace("$(ProjectDir)..\\..\\..\\""$(COCOS2DX_HOME)\\")
            file = open(path + item, 'w')
            file.write(content)
            file.close()

if  __name__ == '__main__':
    targetPath = checkOption()
    replaceCocos2dxPath(targetPath)
復制代碼

posted on 2014-06-04 16:09 多彩人生 閱讀(716) 評論(0)  編輯 收藏 引用 所屬分類: android cocos2dx

導航

統計

常用鏈接

留言簿(3)

隨筆分類

隨筆檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲电影免费| 中国成人黄色视屏| 欧美阿v一级看视频| 久久亚洲电影| 久久久久久久激情视频| 玖玖综合伊人| 欧美日韩不卡一区| 国产精品入口尤物| 好吊成人免视频| 亚洲精品久久久久| 亚洲小视频在线观看| 亚洲欧美日韩精品久久| 久久久久久久久久久久久女国产乱| 久久久久一本一区二区青青蜜月| 麻豆精品视频在线| 亚洲精品一二区| 翔田千里一区二区| 欧美成人福利视频| 国产精品一区二区三区免费观看 | 欧美日韩精品系列| 国产女主播视频一区二区| 尤物九九久久国产精品的特点 | 久久综合伊人77777| 欧美日韩欧美一区二区| 国产在线一区二区三区四区| 亚洲久久一区| 久久久久久久综合色一本| 欧美激情精品久久久久久黑人| av成人激情| 国产目拍亚洲精品99久久精品| 亚洲深夜福利网站| 美脚丝袜一区二区三区在线观看 | 欧美久久电影| 韩国三级电影久久久久久| 99精品视频一区| 久热精品视频在线| 亚洲免费一在线| 欧美日韩国产综合视频在线观看| 99国产精品久久久久久久久久| 国产欧美日韩专区发布| 在线播放日韩专区| 亚洲欧美激情视频在线观看一区二区三区| 久久综合给合久久狠狠色 | 亚洲美女尤物影院| 久久先锋资源| 国产一级揄自揄精品视频| 一区二区三区视频免费在线观看| 久久久久久久999精品视频| 亚洲午夜免费福利视频| 欧美日韩国产精品| 99热这里只有精品8| 欧美成人69| 久久久久一区二区| 国产一区二区三区在线观看视频 | 亚洲全部视频| 欧美一级久久久| 国产精品系列在线| 午夜视频在线观看一区| 亚洲一区二区三区四区中文| 日韩小视频在线观看| 欧美精品一区二区三| 91久久综合| 亚洲国产你懂的| 欧美激情偷拍| 在线一区二区三区四区| 999在线观看精品免费不卡网站| 欧美日韩不卡合集视频| 亚洲一区二区三区国产| 一区二区黄色| 国产精品资源在线观看| 久久精品亚洲精品| 久久一区二区三区四区五区| 亚洲国产经典视频| 亚洲欧洲一区二区在线播放| 欧美日韩免费观看一区二区三区| 亚洲午夜一二三区视频| 亚洲一区制服诱惑| 国产亚洲成av人片在线观看桃| 久久精品国产亚洲一区二区| 久久经典综合| 91久久中文字幕| 一区二区激情视频| 国产亚洲福利社区一区| 欧美a级一区二区| 欧美www视频| 亚洲免费在线视频| 欧美与黑人午夜性猛交久久久| 激情综合色综合久久综合| 欧美激情精品久久久久久黑人 | 久久国产精品久久久| 久久国产精品久久久| 亚洲国产日韩在线| 中国av一区| 亚洲精品国偷自产在线99热| 亚洲一区二区三区精品在线| 国产精品视频999| 久久影音先锋| 欧美肉体xxxx裸体137大胆| 午夜精品亚洲| 免费在线亚洲| 久久大香伊蕉在人线观看热2| 另类天堂视频在线观看| 亚洲欧美国产三级| 国产真实乱子伦精品视频| 亚洲第一在线| 亚洲中午字幕| 99国产精品久久久久久久| 久久精品国产99精品国产亚洲性色| 日韩视频永久免费| 欧美在线你懂的| 亚洲永久视频| 欧美岛国在线观看| 美女黄网久久| 国产性天天综合网| 一区二区三区免费在线观看| 亚洲区在线播放| 久久久久久久网站| 欧美一区永久视频免费观看| 欧美日韩国产首页在线观看| 久久成人免费电影| 欧美日韩在线亚洲一区蜜芽| 欧美激情精品久久久久久久变态| 国产日韩欧美在线| 亚洲综合电影| 亚洲欧美久久久| 欧美日韩专区| 日韩午夜精品视频| 9久re热视频在线精品| 蜜桃av噜噜一区二区三区| 亚洲欧美综合一区| 国产精品久久二区| 一区二区激情小说| 亚洲自拍电影| 国产精品亚洲综合天堂夜夜 | 亚洲欧洲日产国码二区| 在线国产精品播放| 欧美自拍丝袜亚洲| 快射av在线播放一区| 一区在线免费| 久久亚洲精品伦理| 欧美成人综合| 亚洲人成77777在线观看网| 美日韩在线观看| 亚洲大胆av| 亚洲蜜桃精久久久久久久| 另类亚洲自拍| 亚洲黄色在线视频| 亚洲国内自拍| 理论片一区二区在线| 久久综合一区二区| 激情成人在线视频| 久久综合伊人77777尤物| 美国十次成人| 亚洲人成人一区二区在线观看| 久久综合色婷婷| 亚洲国产裸拍裸体视频在线观看乱了中文 | 欧美在线影院在线视频| 久久久久久久精| 国产欧美日韩不卡| 久久国产精品电影| 亚洲国产欧美另类丝袜| 宅男66日本亚洲欧美视频| 国产精品久久久久久久久借妻| 亚洲欧美成人一区二区三区| 久久精品国产在热久久| 欧美亚洲系列| 蜜臀a∨国产成人精品 | 久久精品人人| 亚洲欧洲一区二区三区| 欧美精选在线| 欧美一区二区三区在线播放| 欧美黄色aaaa| 香蕉视频成人在线观看| 亚洲福利专区| 国产精品久久久久久模特| 久久久国产亚洲精品| 99精品久久久| 免费成年人欧美视频| 亚洲免费伊人电影在线观看av| 国内精品久久久久国产盗摄免费观看完整版| 久久中文久久字幕| 亚洲欧美日韩在线综合| 欧美电影免费| 欧美一级午夜免费电影| 亚洲黄色尤物视频| 国产精品女主播在线观看| 一区二区精品国产| 久久夜色精品一区| 亚洲视频在线免费观看| 在线电影欧美日韩一区二区私密| 欧美—级a级欧美特级ar全黄| 亚洲午夜在线观看| 亚洲日本国产| 免费观看国产成人| 久久国产夜色精品鲁鲁99| 中国成人黄色视屏| 亚洲美女黄色片| 亚洲黄色av一区| 狠狠色狠色综合曰曰| 国产精品日韩欧美|