標籤:cocos2d-x3.0 c++ 跑酷 移植android
說明:這裡是借鑒:曉風殘月前輩的部落格,他是將泰然網的跑酷教程,用cocos2d-x 2.X 版本重寫的,目前我正在學習cocos2d-X3.0 於是就用cocos2d-X 3.0重寫,並做相關筆記
好吧,自從上次《跑酷》完結之後,就什麼沒做什麼的,主要是修複了一點點bug ,也在相應的文章裡面做出了相應的改動。不過,只能在window上看著玩又有什麼太大意思呢!!!於是乎又嘗試著弄到手機上試試--OK,初生牛犢不要臉,哦不!不怕噴。這裡記錄一下我的移植過程。(這裡會用到新的大小的資源。待會也會全部打包給出)。。。
這裡主要講幾個事:
1,一點點麻煩
2,簡單粗暴的移植方式
3,移植需要的準備-----就是怎麼樣才能移植成功
先看看My Phone上的:
那麼看看我們現在的問題:。。我們原來運行在win32上的那些資源,不通過螢幕適應的相關知識,放到手機上肯定是不合適的,才640*320,現在許多手機差不多都是4.0寸的螢幕以上啦,解析度也很多都是 1200(左右)*800(左右)。。可是對於螢幕自適應的相關知識的匱乏,讓我不得不找捷徑,看看原來從前輩那裡下載的工程中,還有一份資源是用於ipad ,查看了一下那些圖片的大小。。。。哈哈哈哈,居然大小也差不到那裡去。。。於是乎,簡單粗暴的方式就來啦:
1,下載新的資源替換原來的資源:這裡包括:新資源,新代碼(也就為移植修改了一些Size),產生的Apk http://pan.baidu.com/s/1gd5TzPL不知道是不是今天百度雲有點問題。。。上傳好幾次都失敗,如果有人下不了,可以在這裡留郵箱,我發種子,哦不。。發給你2,我們需要做的就是修改一些基本的Size,以適應你的手機3,第三也沒啥好說的,反正都在代碼裡面,和之前的代碼的差別沒多大。主要是吐槽一下,親.....你能想象這是有多麻煩嗎?這種簡單粗暴的方式就是,改了一個地方的Size,我就重新編譯android一次,然後串連手機,安裝apk,測試,發現問題,修改Size,編譯android-----迴圈N次。。。。編譯過android的小夥伴應該知道,編譯是有多慢,多卡....好吧,這裡就來看看我們怎麼才能移植成功:首先,我們用到了按鈕,也就是用到了libExtensions.lib 的東東,這裡應該叫做 加入第三方庫吧!!這麼高大上的東西我們先不瞭解,簡單的跟我做:1.開啟【項目目錄】\proj.android\jni 裡面的Android.mk。。。修改為:紅色部分是需要添加的代碼
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := cocos2dcpp_sharedLOCAL_MODULE_FILENAME := libcocos2dcppLOCAL_SRC_FILES := hellocpp/main.cpp \<span style="color:#ff0000;"> ../../Classes/AppDelegate.cpp ../../Classes/Base.cpp ../../Classes/BaseManager.cpp ../../Classes/Coin.cpp ../../Classes/GameOver.cpp ../../Classes/MainScene.cpp ../../Classes/PlayScene.cpp ../../Classes/Rock.cpp ../../Classes/Runner.cpp</span>LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes\<span style="color:#ff0000;"> $(LOCAL_PATH)/../../cocos2d/cocos/2d/../../extensions \</span>LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_staticLOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_staticLOCAL_WHOLE_STATIC_LIBRARIES += box2d_static<span style="color:#ff0000;">LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static</span>include $(BUILD_SHARED_LIBRARY)$(call import-module,2d)$(call import-module,audio/android)$(call import-module,Box2D)<span style="color:#ff0000;">$(call import-module,extensions)</span>
注意這裡添加相應的代碼就是的,別多弄了一些換行什麼的。。關於這個東西,我也不熟悉,但是之前好像因為多的 一些換行,編譯過程中出錯啦2,然後 cmd 到項目目錄下,輸入 cocos compile -p android -j 10
OK。。。。就這麼簡單。。。。。然後,你就洗洗睡吧。。。這東西編譯得那麼十幾二十分鐘然後出現類似於下面的: (這裡是我以前留下來的) 主要是看到:BUILD SUCCESSFUL 那麼恭喜,你編譯成功啦
然後,你就可以到 工程目錄下 \proj.android\bin 裡面看到有一個 Run-Debug.apk。。。你就可以把它拷貝到手機上啦。。。。
OK,這裡主要想說的是,一般遊戲中用不到別的第三方庫或者別的什麼的。。。你是不需要修改Android.mk的。。就比如這裡,我們遊戲中用到了Extension庫,(是不是第三方庫我也不知道)...那麼就要修改Android.mk 添加一些東西。。這些東西大多網上都有。。。。
好吧。。到這裡又結束啦個人愚昧觀點,歡迎指正與討論!