站内搜索

Rpg游戏中常用到的角色摇杆控制Cocos2d-x实现

Rpg游戏中常用到的角色摇杆控制Cocos2d-x实现

 头文件
#ifndef RockerPro_HRocker_h
#define RockerPro_HRocker_h

#ifndef HRocker_H
#define HRocker_H
#include "cocos2d.h"

using namespace cocos2d;

class HRocker : public CCLayer {

public :
	/* 使用方法
	*    第一个参数aPoint:摇杆中心点的坐标
	*    第二个参数aRadius: 摇杆的半径
	*    第三个...

        

cocos2d-x自动导入所有cpp文件到android.mk

只有Classes文件夹的情况下用下面这个足以
LOCAL_PATH := $(call my-dir)
 
include $(CLEAR_VARS)
 
LOCAL_MODULE := hellocpp_shared
 
LOCAL_MODULE_FILENAME := libhellocpp
 
FILE_LIST := hellocpp/main.cpp
FILE_LIST += $(wildcard $(LOCAL_PATH)/../../Classes/*.cpp)
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
 
LOCAL...

        

cocos2d-x 创建项目,安装,打包,无需cygwin



  前期准备
1.下载cocos2d-x(http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Download),这里选择
cocos2d-x-2.1.5,解压在: E:\cocos2d-x-2.1.5
2.下载已配置好安卓开发环境的工具(http://developer.android.com/sdk/index.html
这里选择http://dl.google.com/android/adt/adt-bundle-windows-x86_64-20130729.zip
这个工具...

Android开发入门学习

一、Android环境的JDK安装与配置
1、首先得安装Java ,
进行java开发,首先要安装jdk,安装了jdk后还要进行环境变量配置:
(1)、下载jdk(http://java.sun.com/javase/downloads/index.jsp),我下载的版本是:jdk-6u14-windows-i586.exe
(2)、安装jdk-6u14-windows-i586.exe
(3)、配置环境变量:右击“我的电脑”-->"高级"-->"环境变量"
1)在系统变量里新建JAVA_HOME变量,变量值为:C:\Program Fil...

Win7环境下VS2010配置Cocos2d-x-2.1.4最新版本的开发环境(亲测)

  很久以前使用博客园博主子龙山人的一篇博文《Cocos2d-x win7+vs2010配置图文详解
(亲测)》成功配置过cocos2d-1.01-x-0.9.1版本,链接为:Cocos2d-x win7 + vs2010 配置图文详解(亲测)-来自子龙山人的博客,他写的博客图文并茂,很是详细。现在想要使用最新版本cocos2d-x-2.1.4,于是需要把之前安装到VS2010中cocos2d-1.01-x-0.9.1项目模板删除掉,不过很郁闷的是重装VS2010后原来的cocos2d-1.01-x-0.9.1项目模板还在。上网找到了方法,原文链接为:cocos...

      cocos2dx内存优化

      cocos2dx里面,sprite本身不消耗多少内存,只是关联的材质文件消耗内存。假设有10个sprite关联同一个材质,也不会有10倍消耗。


      关于图片占用的材质内存,我觉得还有好几种优化手段:
      1、对于背景图,因为不需要考虑透明问题。载入材质时可以使用 RGB565 格式(5位红色,6位绿色,5位蓝色),每一个像素消耗的内存是16bit = 2byte。比默认的 RGBA8888 消耗的内存少一半。
      2、大尺寸的图可以适当缩小,显示时拉伸放大。比如960x640的图可以缩小为768x512,消耗的内存减少一半。
      3、有些sprite不需要那么多的色彩,可以用 RGBA4444 格式载...

      rapidxml,一个快速的xml库


      近来找到一个快速的xml库,试用了一下,方法和现在使用的tinyxml差不多,很容易上手,如果有机会可以移植到项目里面试试
       
      自从用了xml后对他是又爱又恨,他的确能代替配置文件,但是当文件容量大到一定量的时候灾难就降临了,比如读取一个50M的xml文件,往往读取花上10秒,解析再花上20秒,还要占用大量内存空间,十分头痛.所以实际项目中都会将xml再转为二进制文件来处理,但是xml的灵活性的确很方便,如果rapidxml能接近二进制的速度,当然就太好啦,还没有测试过,下面是一些介绍.
      貌似tinyxml会遇到unicode障碍...


          精灵加亮及变灰效果

          ocos2d-x好像没有实现原生的加亮和变灰的效果,所以自己研究了一番,实现起来也不难,要同时用到CCImage、CCTexture、CCSprite。

          主要的思路是通过CCImage先载入图片,然后getData()获取图片数据,接着逐一获取各像素的RGB值(代码基于jpg,若是png则需要获取RGBA值),通过相应方法修改各像素点的值。之后将该CCImange加载到CCTexture2D中,再由CCSprite载入,然后即可自由操作CCSprite。

          以上相当于是在生成CCSprite时载入已加亮或变灰了的图片,至于如何将已有的CCSprite加亮或变灰,尚等研究。

          希望对大家有帮助...

          cocos2d-x 动画特效集合

          bool HelloWorld::init()
          {
              //////////////////////////////
              // 1. super init first
              if ( !CCLayer::init() )
              {
                  return false;
              }
              CCSize size =CCDirector::sharedDirector()->getWinSize();//获取屏幕大小  
              
              CCSprite * sp = CCSprite::create("Icon.png");
              sp->setPositio...