自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mike.G

我有梦想,所以我在奋斗!-- I have a dream, so I struggle!

  • 博客(19)
  • 资源 (3)
  • 收藏
  • 关注

原创 cocos2d-x中的碰撞检测

今天在csdn看到一篇文章,写矩形与圆形的碰撞检测,借鉴了作者的检测思路,我把它用到了cocos2d-x中。原文章的地址:http://blog.csdn.net/yorhomwang/article/details/18195993在cocos2d-x中已经提供了矩形与矩形的碰撞检测以及点与矩形的碰撞检测,如下:检测矩形与矩形碰撞的函数:bool intersectsRect(c

2014-01-16 11:46:43 3625

原创 关于位运算的一道试题校招笔试题

之前参加某公司的比试有一道题至今还记得,一直在寻找最优解法,今天又看到了一个更好的方法。题目具体的不记得了,大概就是输入一个char类型的数,然后统计二进制表示的1的个数。我当时的解法很二逼,从n = 0~7,算2的n次幂,然后拿输入的数与2的n次幂做“与”运算,结果不等于0就计数+1.很明显,这么写是不会拿到offer的。后来我想了想,问题出在求2的n次幂上,于是就定义了一个新的变量

2014-01-12 16:45:39 1438

原创 STL-泛型算法

使用泛型算法需包含 algorithm头文件 numeric头文件 //find操作 vector ivec = {1, 15, 3, 16, 92, 29, 37, 31}; int search_value = 26; vector::const_iterator iter0 = find(ivec.begin(), ivec.end(), search_valu

2014-01-11 13:07:45 1254

原创 STL-vector与list的区别

标准库定义了三种顺序容器类型:vector、list和deque(双端队列double-end-queue),他们的差别在于访问元素的方式以及对容器进行插入、删除等相关操作的运行代价不同。       vector      支持快速随机访问       list           支持快速插入、删除       deque     双端队列       vector是顺序存储,

2014-01-11 09:27:39 1792

原创 cocos2d-x 动作 Spawn(CCSpawn)

首先Spawn是同时动作,Sequence是顺序动作。。看到有人问写了两个动作,为什么Spawn时只调用了第二个?代码如下://CCAnimation *animation1 = CCAnimation::createWithSpriteFrames(animFrames, 0.10f);//CCAnimation *animation2 = CCAnimation::createWi

2014-01-06 13:37:27 6149

原创 C++生成不重复的随机数

在做洗牌算法的时候用到了随机数,并且产生的随机数中不能有重复的元素,因为是用C语言实现的,就把值赋给数组,然后用随机数产生数组的下标,每产生一个就删除对应的元素,然后随机数的生成范围减一,但是这样做每次都要循环去移动数组元素,从时间复杂度上来说这样并不好。于是,后来用C++重新实现:实现的思路并没有变,只是把数组换成了容器,因为STL有删除元素的操作,所以就减少了循环的使用vector g

2013-12-26 09:14:57 5314 1

原创 iOS 中SQLite3的使用(Demo)

根据前两篇的文章和网上的一些资料写了一个ios中SQLite3的使用示例,下面直接贴出代码,code中会有必要的注释实现了数据库表的创建 插入 查询 删除等功能- (void)viewDidLoad{ [super viewDidLoad]; [self createStudentTable]; [self insertTable]; [self inqu

2013-12-19 11:41:43 1833

转载 SQLite3基础教程(二)

[接上篇 http://blog.csdn.net/guochuanqi/article/details/17410545](2)操作二进制sqlite 操作二进制数据需要用一个辅助的数据类型:sqlite3_stmt * 。这个数据类型记录了一个“sql语句”。为什么我把 “sql语句” 用双引号引起来?因为你可以把 sqlite3_stmt * 所表示的内容看成是 sql语句,但是实际

2013-12-19 10:13:11 1178

转载 SQLite3基础教程(一)

sqlite常量的定义:  const  SQLITE_OK           = 0;  返回成功  SQLITE_ERROR        = 1;  SQL错误或错误的数据库  SQLITE_INTERNAL     = 2;  An internal logic error in SQLite  SQLITE_PERM         = 3;  拒绝访问  SQ

2013-12-19 10:09:12 1471

原创 xcode中使用git管理code

1.要使用git首先要在创建项目的时候为项目添加git支持,如下图所示:如果是为已有项目添加git可以使用命令行,如下:cd PROJECT_ROOT //这里PROJECT_ROOT指的是工程的根目录git init
git commit -a -m "init commit"git add git commit -a -m "initial add"2.工程目录中:

2013-12-17 19:01:25 1459

原创 cocos2d-x线程通信<STL>

上一篇博客中讲到用msg实现多线程之间的消息传递,因为我只是把网络接收的数据发给主线程,或者主线程有数据需要负责网络的子线程去发送,主城看了我的代码后说我是“杀鸡用了个宰牛的刀”,于是,我并没有使用msg,跨平台不太方便也是一方面的原因。实现这个功能用STL也是可以的。非常简单,说一下做法,就不写具体的代码了,如果我说的不清楚请评论里留言啦~假设是主线程要给子线程发送数据(反过来也是一样的

2013-12-09 19:54:37 2216

原创 cocos2d-x线程通信(msg)

上次说到了多线程,这次来说说线程之间的消息传递~ios中有通知中心NSNotificationCenter,在cocos2dx中也做了相应的封装CCNotificationCenter,但是它不是线程安全的,在多线程中用起来就不合适了,不过再《捕鱼达人》这本书中又封装了另一个类MTNotificationCenter用来实现消息传递,这个是线程安全的,网上有很多实现可以找的到,但是这个子线程给

2013-12-09 11:23:30 2543

原创 cocos2d-x中使用多线程--pthread

在cocos2d-x中多线程一般是使用pthread,下面先来说一下pthread中比较常用的几个方法,后面再给出一个简单的创建多线程的例子。创建一个线程:int pthread_create(pthread_t *restrict thread,                                                  const pthread_attr_t *

2013-12-08 12:53:50 2129

原创 【数据加密】使用XXTEA对NSData进行加密

最近做的项目中数据传输要加密,开始使用的是AES加密算法,这个是本来就有高手封装好了的,在ios中对NSData进行加密,拿来直接用就ok了。但是考虑到传输数据大,频率高,服务器每秒可能要跟N多的用户交互,于是另寻它径。后来了解到XXTEA效率挺高的,测试了一下加密解密可以保证在1毫秒之内完成。ok,就是它了。XXTEA加密算法是对TEA加密算法的升级,仍然是用128位(16字节)的密钥对64

2013-12-08 12:18:32 3179 1

原创 cocos2d-x使用OpenGL获取屏幕截图

今天就来说说cocos2d-x中使用OpenGL获取屏幕截图吧,因为网上关于cocos2d-x的入门教程非常多,所以我就只写一些用cocos2d-x实现具体功能的文章跟大家分享啦~截图在游戏中经常会用到的,像社交分享中啊什么的分享的时候都会带截图的。OpenGL是通过读取屏幕像素来保存图像的,下面说具体实现(代码中会有必要的注释):void glReadPixels(GLint x,

2013-12-07 20:06:42 3840 1

原创 cocos2d-x按钮回调方法的参数

制作一个菜单,有时候每个菜单项的功能都大同小异,只有一点区别。。以前都是给每一个item定义一个回调方法,但是这样会显得代码有点乱,因为很多代码都是重复的。终于找到了解决办法,通过item的tag值来做不同的处理,相同的代码只写一遍就可以了。item->setTag();举个例子://创建菜单项CCMenuItem *item1 = CCMenuItemImage::create

2013-12-02 16:30:51 2623

原创 隐藏CCTextFieldTTF的键盘

前几天把手头的项目给做完了,最近不是特别忙,有时间来谢谢博客,把我在项目中遇到的问题记录下来 最终怎么解决的跟大家分享一下,共同进步~想实现这么一种文本输入框,用户点击到输入框是弹出键盘,如果要关闭键盘,触摸其他的空白区域就可以了。打开和关闭键盘很简单,调用attachIME和deattachIME。但是发现键盘代开后再触摸界面,layer就不响应触摸了,这样就没法判断何时关闭键盘~看了一

2013-11-29 21:13:06 1307

原创 cocos2d-x 3.0创建新项目

前几天cocos2d-x 3.0刚刚更新了alpha1,正好手头的项目刚做完,我也下载来看看。我一直还用2.1.3的变化很大,现在都不用安装模版了,直接命令行就可以创建项目~打开终端,找到create_project.py的路径,该文件在tools/project-creator目录下,直接在终端输入  ~/cocos2d-x-3.0alpha1/tools/project-creator

2013-11-27 16:24:51 1419

原创 ios开发历程系列--《我与ios编程的相遇与相识》

第一次接触游戏开发是大一暑假的时候,也就是两年前。那时候对游戏也没有什么特别大的热情,因为大一实在闲得无聊,就报名参加了一个软件比赛,做了我们的第一个ios项目。当时没有编程经验,对游戏开发也不是很了解,我们有两个同学学过flash,那时我们是四个人一起做,我连flash也没有接触过,于是暑假之前我就努力的学as3,现学现做,游戏里需要用到什么我就学什么,暑假里用了一段时间我们没回家,在学校一起做

2013-03-29 10:01:38 2216

山东科技大学C++实训项目 飞机大战 附带实训报告

山东科技大学C++实训项目—飞机大战:附带实训报告

2013-01-19

山东科技大学C语言实训项目 万年历 附带实训报告

山东科技大学C语言实训项目—万年历:附带实训报告

2013-01-19

Cocos2d滑屏效果

该方法在cocos2d开源引擎下实现了滑屏效果,就像愤怒的小鸟选择关卡页面那样的效果

2012-11-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除