游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3150|回复: 1

暗黑世界 客户端 配置文档

[复制链接]

119

主题

119

帖子

694

积分

版主

Rank: 7Rank: 7Rank: 7

积分
694
发表于 2013-8-19 11:51:45 | 显示全部楼层 |阅读模式
                暗黑世界————客户端文档

iOS:

1、配置注意事项:
  • 当提示找不到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
    [[img]file:///C:\Users\ADMINI~1\AppData\Local\Temp\)A[Y)I~](ZC9Z[3Y)IDK7LK.gif[/img]st]

    2、资源注意事项:
    • 图片资源都在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,该第三方库支持多平台编译。
      [[img]file:///C:\Users\ADMINI~1\AppData\Local\Temp\)A[Y)I~](ZC9Z[3Y)IDK7LK.gif[/img]st]

      3、代码注意事项:

      资源加载方式采用分批加载的方式,用到哪个界面就加载哪个界面。但该界面释放之后,其资源也随之释放。通常在其析构函数中或者onExit方法中进行资源释放。

      查看内存使用情况:
      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);
      复制代码
      释放语句:
      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、配置注意事项:
      (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=$PATH:$ANDROID_SDK_ROOT

      该步骤是设置目录
      完成上述步骤之后我们需要编译android project 进入终端进入projects目录下的proj.android文件夹里然后运行.file:///C:\Users\ADMINI~1\AppData\Local\Temp\OOY5$4OW5H`8`9%(9$)T67M.giflid_native.sh
      把资源文件导入到projects里的resource文件夹下,如若有文件夹需要加上相对应的目录
      第三方库在LOCAL_C_INCLUDE后面加上其对应的路径。
      (3)把建好的project导入eclipse里面。然后运行。


0

主题

3

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2013-8-20 20:41:18 | 显示全部楼层
linux 跟 windows的在那里
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2024-4-26 10:23

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表