[官方教程] 暗黑世界 客戶端 配置文檔

原地址:http://blog.csdn.net/uxqclm/article/details/11970565html

歡迎來到9秒:www.9miao.comandroid

 

暗黑世界————客戶端文檔ios


iOS:

一、配置注意事項:json

  • 當提示找不到include/json/json.h等其餘在include/json/目錄下出現的問題時,須要在工程下的target的裏找到buildsetting選項,而後選擇all 找到 Header Search Pahts選項添加"$(SRCROOT)/../Classes/json/include",則該問題能夠解決。
  • 在target中的Deployment Target的版本號要與Project裏面的iOS Deployment Target的版本號一致。
  • 如若在編譯的過程當中找不到文件,確認一下看是否添加入文件。或者將Classes文件夾從目錄中刪除(不是move to trash),而後再添加一次。
  • 修改工程名稱在Target 裏的packaging選項卡里面有一個字段叫作Product Name



二、資源注意事項:bash

  • 圖片資源都在resource文件夾下面。圖片的格式採用png格式 pvr格式 pvr.czz格式。
  • 將同一界面的圖片進行打包,打包以後生成一個plist文件和一張擁有小圖的大png圖(此處不必定會採用png格式 還有多是pvr格式的圖片,該圖片格式只能在cocos2dx 2.0以上版本使用,還有多是pvr的壓縮格式。Pvr.czz)。正常的png圖片都是32位的。可是32位的圖片在加載的過程當中須要自身幾倍的內存來進行圖片渲染。因此32位的會很佔內存。咱們的遊戲中採用16位圖,16位圖經過texturepackge進行大圖整合,最後輸出16位圖片。16位圖在內存中加載的大小就是自身的大小。不少閃退都是因爲內存爆表而致使的,這裏很重要。(注PVR格式在安卓下面的兼容性不是很好。在安卓下面能夠採用PNG格式)。
  • 音頻格式咱們採用mp3格式一樣也但是使用wav格式等其餘的音頻格式。音頻管理類:soundscontrol.h。
  • 配置文件該項目統一採用json格式,json的解析咱們採用第三方庫jsoncpp,該第三方庫支持多平臺編譯。



三、代碼注意事項:

資源加載方式採用分批加載的方式,用到哪一個界面就加載哪一個界面。但該界面釋放以後,其資源也隨之釋放。一般在其析構函數中或者onExit方法中進行資源釋放。

查看內存使用狀況:eclipse

  1. CCTextureCache::sharedTextureCache()->dumpCachedTextureInfo()
複製代碼

資源加載:編輯器

  1. CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("login.plist");
複製代碼

資源釋放:函數

  1. CCSpriteFrameCache::sharedSpriteFrameCache()->removeSpriteFramesWithFile("login.plist");
  2. CCTextureCache::sharedTextureCache()->removeUnusedTextures();
  3. CCLayer::onExit();
複製代碼

加載序列幀動畫 咱們是將幀圖經過動畫編輯器進行編輯和時間的調整,最後生成一個XML 文件,此處動畫的加載就是將該XML進行加載。此處咱們用AnimatePacker動畫編輯器  

加載語句:動畫

  1. AnimatePacker :: getInstance()->loadAnimations(animation);
複製代碼

釋放語句:ui

  1. AnimatePacker :: getInstance()->freeAnimations(animation);
複製代碼

執行系統動畫 此處咱們要注意的是當一個精靈執行

  1. CCSequence * seq=CCSequence::create(a,b,c,NULL);  
複製代碼

後面必須加NULL空指針,若是不加NULL 當給系統打包成ipa的時候運行會出現閃退。
加載文件  在沒有進行android平臺編譯以前,該程序採用ifstream 字節流的方式進行文件讀寫。可是在android平臺下會出現閃退的狀況,此處改成

  1. CCString * str= CCString::createWithContentsOfFile("item.json");
複製代碼

這樣在多平臺下就能夠經過編譯。
在android平臺下只能#include<fstream> 而不能#include<fstream.h>,在android平臺下

  1. std::numeric_limits<int>::min()
複製代碼

這個函數也會報錯。該函數是取int型的最小值。
iOS下面修改橫豎屏在ios文件下的

  1. RootViewController.mm
  2. -(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
  3.   return !UIInterfaceOrientationIsLandscape( interfaceOrientation );
  4. }
複製代碼

在UIInterfaceOrientationIsLandscape在這以前加上非!

android平臺:

一、配置注意事項:
(1)下載Mac版ADT Bundle,這個Bundle包含了配置好了的IDE-eclipse和android sdk 最好用eclipse更新下android sdk,這樣纔會有低版本的Sandroid sdk 。進入window->android SDK Manager 在裏面選擇更新的Android SDK。

下載地址:http://developer.android.com/sdk/index.html

NDK下載地址:http://developer.android.com/tools/sdk/ndk/index.html

(2)若是最初沒有在多平臺下進行編寫,那麼就須要將全部的類移植到Classes文件夾下。在proj.android 裏的jni文件夾中找到找到list.sh 在終端下運行,該文件能夠獲取相應目錄下的cpp文件,咱們須要獲取Classes文件夾下的目錄。獲取目錄以後須要在jni文件夾下找到android.mk文件而後右鍵以文本文檔格式打開或者直接在eclipse下打開。將獲取的路徑複製到LOCAL_SRC_FILES後面 以下圖所示:

在終端輸入pico .bash_profile.在文件中添加
export COCOS2DX_ROOT=cocos2d-x的根目錄。
export ANDROID_SDK_ROOT=android sdk根目錄
export ANDROID_NDK_ROOT=android ndk根目錄
export NDK_ROOT=android NDK根目錄
export PATH=$PATHANDROID_NDK_ROOT
export PATH=$PATHANDROID_SDK_ROOT該步驟是設置目錄完成上述步驟以後咱們須要編譯android project 進入終端進入projects目錄下的proj.android文件夾裏而後運行./bulid_native.sh把資源文件導入到projects裏的resource文件夾下,如如有文件夾須要加上相對應的目錄第三方庫在LOCAL_C_INCLUDE後面加上其對應的路徑。(3)把建好的project導入eclipse裏面。而後運行。

相關文章
相關標籤/搜索