cocos2d-x杂项

创建项目

目录:cocos2d-x/tools/project-creator

命令:./create_project.py -project path_test -package com.yiwanzu.test -language cpp

拷贝:cocos2d-x/tools/lua_project_generator/template/android/src的org文件夹

设置:见下文

右键Package Explorer里的SimpleGame->Properties->C/C++ Build->Tool Chain Editor

Display compatible toolchains only:不选

Current toolchain:Android GCC

Current builder:Android Builer

点击C/C++ Build

Build command:添加 NDK_DEBUG=1

Generate MakeFiles automatically:不勾选

Bulid directory:${ProjDirPath}

 

tolua++

目录:cocos2d-x/tools/tolua++/tolua++.Mac.zip

命令:./tolua++ -n tolua_test -o ltolua_test.cpp tolua_test.pkg

 

填坑

析构函数不能调用任何cocos2d-x里面的东西。

播放空字符串的声音会导致句柄泄漏。

修改项目名称:Bulid Settings->Product Name

修改项目名称:build.xml <projectname="test"default="help">

安卓只认扩展名为小写ttf的字体文件。

void AppDelegate::applicationWillEnterForeground()里面不能创建对象。

安卓某些机型创建size为0的ttf label会导致下一次创建label崩溃。

安卓某些情况下直接在touchend里面卸载场景会崩溃。

 

// 修正android字体位置和ios一致

// final int h = (int) Math.ceil(fm.bottom - fm.top);

final int h = (int) Math.ceil(fm.descent - fm.ascent);

 

安卓自动添加cpp文件(属于坑)

define walk

$(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))

endef

ALLFILES = $(call walk, $(LOCAL_PATH)/../../Classes)

 

FILE_LIST := hellocpp/main.cpp

FILE_LIST += $(filter %.cpp, $(ALLFILES))

FILE_LIST += $(filter %.c, $(ALLFILES))

$(info $(ALLFILES))

 

LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)

 

安卓class文件夹下的所有头文件都能被找到(又一个坑)

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes

LOCAL_C_INCLUDES += $(shell ls -FR $(LOCAL_C_INCLUDES) | grep $(LOCAL_PATH)/$ )

LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES:$(LOCAL_PATH)/%:=$(LOCAL_PATH)/%)

 


define walk
 $(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))
endef

define walkDir
  $(1) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))
endef

ALL_DIR = $(call walkDir, $(LOCAL_PATH)/../../Classes)
LOCAL_C_INCLUDES := $(filter-out %.c %.cc %.cpp %.mm %.m %.h %.pkg, $(ALL_DIR))

 

glGetError 0x0502(坑王啊)

第一从出现是因为把CCLabelBMFont强转成CCSprite调用setOpacity后,在之后加载文件的时候出现这个错误。

第二次出现在使用CCClippingNode后,在之后加载文件的时候出现这个错误。

 

 

posted on 2014-06-05 12:31  the seal  阅读(205)  评论(0编辑  收藏  举报