- 博客(61)
- 资源 (12)
- 收藏
- 关注
原创 Cocos2dx3.x使用socket创建服务端和客户端改进
由于一个网友使用笔者写的SocketClient作为游戏客户端网络数据接收类,出现了一些问题 这个问题就是因为当执行onRecv时创建了一个Sprite(Sprite::create(“1.png”)),而创建完成后sprite的数据混乱,或者MoveTo时返回的也是混乱数据。原因在于在多线程申请内存,在主线程使用就会出现问题。为了解决这个问题,特意看了cocos2dx的WebSocket的实现方
2015-02-20 11:27:15
8432
原创 cocos2dx实现自定义2D地形
先来看看效果:对于2D地形的生成,可以采用2种方法,1.使用建模软件将2D的地形模型构建好直接使用Sprite3D导入 优点:不需要太多程序控制,只是简单的导入缺点:需要建模,而且还要转换成2D坐标,很难使用chipmunk加入物理特性 2.根据自定义数据使用顶点数据和shader。下面来讲解如何实现,之后分析优缺点。推荐一篇博客如何制作
2015-02-12 17:57:31
3760
1
原创 Cocos(V2.1) 引擎windows及android开发环境搭建
配置windows开发环境首先去官网下载Cocos 引擎 v2.1 For Win下载完毕后安装,假设安装在D:/Cocos, 安装完成后现在是不能新建一个空白完整项目的,点击,只会出现那么就要到商店下载下载完成后,进入下载->已下载,找到Cocos Framework,点击安装,可以安装到D:/Cocos.安装完成后就可以新建,新建完成后,就可以进入proj.
2015-02-06 15:56:27
1400
原创 Bullet(cocos2dx)学习制作桌球游戏之前期准备
使用cocos2dx结合bullet设计一款简陋的桌球游戏,就是为了回顾前期学过的bullet。首先要把桌球游戏需要的基本资源准备好,15个球,1个白球,1张台球桌,球杆可有可无。先看看目前实现的效果至于这张台球桌的模型,我是随便设计一下当然这个模型只是为了加载raw文件(静态网格数据),为了使模型的贴图显示出来,我使用Blender直接创建了一个P
2015-01-31 15:31:24
5039
原创 qt+creator 轻松搭建cocos2dx开发环境
一、安转cocos2dx1.下载cocos2dx3.3final复制到home并解压得到cocos2d-x-3.3文件夹,2.进入cocos2d-x-3.3/build/,为install-deps-linux.sh添加运行权限chmod+x install-deps-linux.sh,然后执行这个文件sudo./install-deps-linux.sh3.最终安装完可能会出
2015-01-25 22:53:13
6601
原创 Bullet(Cocos2dx)之凸多面体形状和组合形状
接高度地形图和三角形网格,同样是复杂图形的创建。先来看看效果左边通过提供的顶点生成的多面体,右边创建一个由球体与长方体组成的组合形状 首先来了解凸多面体根据提供的顶点创建一个凸多面体形状,无论给定的顶点顺序是怎样的,都是创建一个由这些顶点组成的凸多面体。先来看看btConvexHullShape的解释及构造函数///this constructor opti
2015-01-21 19:58:20
2866
原创 Bullet之了解Force Torque Impulse
在了解Force Impulse Torque 之前,先来看看setLinearVelocity,setAngularVelocity一个是线速度,一个是角速度理解起来是很简单的设置body的线速度和角速度// 线速度const btVector3 & getLinearVelocity () constvoid setLinearVelocity (const btVecto
2015-01-14 00:01:05
2563
原创 Bullet(Cocos2dx)之创建地形
Bullet提供了几个类btBvhTriangleMeshShape,btHeightfieldTerrainShape去创建一些网格图形,首先了解btHeightfieldTerrainShape,通过高度图数据创建一个3D地形。A static mesh that is optimised for and described by the surface of a height map.
2015-01-09 19:45:12
3155
原创 Bullet(Cocos2dx)之分析刚体创建与销毁(Primitives)
相关链接:http://bulletphysics.org/mediawiki-1.5.8/index.php/Collision_ShapesBullet基本图形简介Bullet提供的基本图形包括球体、长方体、圆柱体、胶囊体、圆锥体、多球体当然还有一个Plane,一个无限的平面 1.球体是个很简单的形状:btSphereShape (btScalar radius) 提供
2015-01-07 16:36:36
2019
原创 Bullet(Cocos2dx)之内存泄露检测
编写的程序难免会有内存泄露,为了检测内存泄露,可以采取各种各样的措施,今天向大家介绍一款windows下的内存检测工具Visual Leak Detector for Visual C++去官网下载最新版本安装。用VS建立一个C++控制台项目,1.将vld安装目录下的include的头文件copy到c++目录下2.把lib/win32(如果vs版本为64的,则选择win64)c
2015-01-07 14:46:18
2119
原创 Bullet(Cocos2dx)之优化PhysicsDraw3D
为了测试bullet物体的大小,匆匆写完的PhysicsDraw3D的效率低的要命,这也是为什么cocos2dx弃用了DrawPrimitives,而去使用DrawNodeDrawPrimitives每次绘制都去调用glDrawElements,假如每帧绘制10000条线段,那么就要调用10000次glDrawElements,可见效率之低。而DrawNode采取的是批处理的方式,当dra
2015-01-06 20:01:31
1656
原创 Bullet(Cocos2dx)之增加调试绘制PhysicsDraw3D
由于刚开始学的时候不知道Bullet的单位1.0代表多大,所以制作出的模型的大小也无法判断。不用担心,Bullet提供了一个类btIDebugDraw,这个泪已经实现了很多绘制功能,我们要做的就是实现几个虚函数。我们继承btIDebugDraw,实现虚函数class PhysicsDraw3D : public btIDebugDraw{public: void drawLine
2015-01-06 15:50:35
1943
原创 Bullet(Cocos2dx)之使用cocos2dx测试PhysicsWorld3D
1.使用Cocos引擎建立工程,打开cocos studio 修改分辨率为960*640,删掉背景图片发布到vs工程1.打开AppDelegate设置分辨率,并运行 director->getOpenGLView()->setDesignResolutionSize(960, 640, ResolutionPolicy::EXACT_FIT);2.配置Bullet(
2015-01-04 19:55:06
1770
原创 Bullet(Cocos2dx)之封装PhysicsWorld3D
Bullet3之封装PhysicsWorld3D根据bullet3 HelloWorld程序去封装一个PhysicsWorld3D,首先应该去创建一个物理世界,而对于一个物理世界,默认都有重力,提供一个创建世界的静态方法(重力默认为(0, -10, 0))static PhysicsWorld3D* create(const btVector3& gravity = btVecto
2015-01-04 13:17:10
1545
原创 Bullet(Cocos2dx)之交叉编译Android,集成到cocos2dx3.x
首先将src文件夹复制到jni文件夹,没有可以新建一个新建两个文件Android.mk, Application.mkApplication.mk内容如下:APP_ABI := armeabi armeabi-v7a x86APP_PLATFORM := android-8APP_STL := stlport_static Android.mk 内容如下: LO
2014-12-30 20:17:52
2193
原创 Bullet(Cocos2dx)之Hello World(vs2012)
Bullet3之Hello World(vs2012)参考http://bulletphysics.org/mediawiki-1.5.8/index.php/Creating_a_project_from_scratch第一步、生成vs2010工程文件解压github下载的bullet3-master,进入目录build3,运行vs2010.bat会在当前目录生成vs2010
2014-12-20 20:21:37
2097
原创 cocos2dx3.x利用sokcet创建客户端和服务端 (三)
客户端:连接服务端bool connectServer(const char* serverIP, unsigned short port);向服务端发送消息void sendMessage(const char* data, int count);接受服务端数据的回调函数std::functionvoid(const char* data, int count)> onR
2014-12-19 22:58:25
1534
1
原创 cocos2dx3.x利用sokcet创建客户端和服务端 (二)
服务端:初始化服务端向指定客户端发送消息void sendMessage(HSocket socket, const std::string& data);向所有客户端发送消息void sendMessage(const std::string& data);当服务端开启后的回调函数std::functionvoid(const char* ip)> onStart;
2014-12-19 22:30:31
2323
原创 cocos2dx3.x利用sokcet创建客户端和服务端(一)
Socke基类:包括Socket的初始化,主要是windows上,在android上就不需要了如果平台为windows,则需要初始化SocketBase::SocketBase(){_bInitSuccess = false;#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)WORD wVersionRequested;wVersion
2014-12-19 21:47:28
3131
原创 Vs2012加载项目失败
第一步,通过命令提示行工具进入VS安装目录下的%VS2012home%Common7\IDE第二部,执行devenv.exe /setup /resetuserdata /resetsettings第三步,重新加载sln文件
2014-08-07 19:18:49
1106
原创 蓝桥杯 k好数
问题描述如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。由于这个数目很大,请你输出它对1000000007取模后的值。输入格式输入包含两个正整数,K和L。输出格式输出一个整数
2014-05-15 21:18:44
939
原创 tyvj1114 等差数列
描述 Description等差数列的定义是一个数列S,它满足了(S[i]-S[i-1]) = d (i>1)。显然的一个单独的数字或者两个数字也可以形成一个等差数列。经过一定的学习小C发现这个问题太简单了,等差数列的和不就是(Sn+S1)*n/2?因为这个问题实在是太简单了,小C不屑于去解决它。这让小C的老师愤怒了,他就找了另外一个问题来问他。小C的老师给了他一个长度为N的数字序列,
2014-05-15 14:07:38
1239
原创 tyvj1114 双塔问题
描述 Description 2001年9月11日,一场突发的灾难将纽约世界贸易中心大厦夷为平地,Mr. F曾亲眼目睹了这次灾难。为了纪念“9?11”事件,Mr. F决定自己用水晶来搭建一座双塔。 Mr. F有N块水晶,每块水晶有一个高度,他想用这N块水晶搭建两座有同样高度的塔,使他们成为一座双塔,Mr. F可以从这N块水晶中任取M(1≤M≤N)块来搭建。但是他不知道能否使两座
2014-05-15 12:56:40
2688
原创 poj1850 Code
CodeTime Limit: 1000MS Memory Limit: 30000KTotal Submissions: 7638 Accepted: 3591DescriptionTransmitting and memorizing information is a task that requires differ
2014-04-25 19:38:46
761
原创 poj 2531 Network Saboteur
Network SaboteurTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 8822 Accepted: 4106DescriptionA university network is composed of N computers. System ad
2014-04-24 14:20:37
893
原创 poj 1691 Painting A Board
参考:http://blog.csdn.net/tsaid/article/details/6841823
2014-04-23 16:24:59
819
原创 poj1324 Holedox Moving
参考:http://www.cnblogs.com/kedebug/archive/2013/03/26/2983143.html大致题意: 给定一个地图和一条蛇,问蛇需要最少走多少步才能走到出口(1,1),如果无法到达则-1大体思路: 因为蛇最多有7个身体那么每个身体都有上下左右4种状态(00-11二进制),可以用2^(7*2) = 1 后一个身体的状态可以根据前一个身体决定, 有
2014-04-23 16:20:52
1168
原创 poj2449 Remmarguts' Date
Remmarguts' DateTime Limit: 4000MS Memory Limit: 65536KTotal Submissions: 19745 Accepted: 5374Description"Good man never makes girls wait or breaks an appointment
2014-04-14 21:11:57
1089
原创 poj2367 Genealogical tree
Genealogical treeTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 2600 Accepted: 1743 Special JudgeDescriptionThe system of Martians' blood relations
2014-04-14 20:51:18
705
原创 poj2184 Cow Exhibition
Cow ExhibitionTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 8534 Accepted: 3181Description"Fat and docile, big and dumb, they look so stupid, they are
2014-04-11 20:12:47
725
原创 poj1947 Rebuilding Roads
Rebuilding RoadsTime Limit: 1000MS Memory Limit: 30000KTotal Submissions: 8687 Accepted: 3911DescriptionThe cows have reconstructed Farmer John's farm, with its N b
2014-04-10 17:36:38
689
原创 hdu4308 Saving Princess claire_
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4308Saving Princess claire_Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2189
2014-04-04 19:16:18
646
原创 关于ubuntu下Android工作空间出现android-support-v7-appcompat
ubuntu新建Android工程默认Activity继承ActionBarActivity所以会引入import android.support.v7.app.ActionBarActivity;工程需要依赖android.support.v7.appcompat.jar包,所以要将这个包引入工程如果不小心删除自动生成的那个工程,就要再次引入,右键-->import选择当前工作空
2014-04-03 22:55:27
1584
原创 Cocos2dx3.0 rc 导入CocosStudio1.3.0.0场景方法
1.在CocosStudio导出FightScene示例的资源,如图2.找到新建的场景项目文件夹将Resources所有的文件夹复制到建立的cocos2dx项目Resources目录下,如下图3.右键项目,选择现有项目在当前工程目录下,(1).找到(工程目录)cocos2d\cocos\editor-support\cocostudio\proj
2014-03-26 23:37:54
1223
原创 Cocos2dx3.0 rc 导入cocosStudio1.3.0.0示例场景
1.在CocosStudio导出FightScene示例的资源,如图2.找到新建的场景项目文件夹将Resources所有的文件夹复制到建立的cocos2dx项目Resources目录下,如下图3.右键项目,选择现有项目在当前工程目录下,(1).找到(工程目录)cocos2d\cocos\editor-support\cocostudio\proj
2014-03-26 23:32:40
1061
原创 Cocos2d-X 2.1.4 安卓环境搭建
首先列出要下载的文件.Cocos2d-X 2.1.4eclipse(java)Android_NDK r9c这是我下载的版本,我放在 D:\JAVA\android-ndk-r9)Android_SDK(我放在D:\java\Android_SDK)Cygwin(具体安装请查看网上)当然还要配置环境变量win7->计算机->属性(右键)->高级系统设置->环境变
2014-02-01 20:17:14
1086
原创 QT OpenGL 配置问题解决
直接去官网下载 Qt 5.2.0 for Windows 64-bit (VS 2012, OpenGL, 589 MB)安装后,建立工程,选择Qt Widgets Application, 点击选择然后输入名字,完成.更改widget.h 文件为:#ifndef WIDGET_H#define WIDGET_H#include #include #include
2013-12-23 23:43:02
4304
原创 hdu1172猜数字
猜数字Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2212 Accepted Submission(s): 1278Problem Description猜数字游戏是gameboy最喜欢的游戏之
2013-12-17 20:21:24
969
Bullet(Cocos2dx)之创建地形
2015-01-09
Bullet3之测试cocos2dx PhysicsWorld3D代码资源
2015-01-05
Bullet预编译库cocos2dx
2015-01-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人