- 博客(48)
- 资源 (38)
- 收藏
- 关注
原创 自己的PHP实践项目:开源电子商城系统
最近学php写的一个实验型电子商城系统,大部分功能仿的天猫和京东,现在已开源,欢迎交流: github: https://github.com/DoldrumsSky/ThinkEMall 码云: https://git.oschina.net/langweaver/thinkemall交流群:1950562
2017-06-07 13:25:34 4554 2
原创 使用wxsqlite3后多表联合查询无数据的问题解决方法
这段时间做移动项目需要加密数据库,所以把wxsqlite3顺便搬到android上了,项目里唯一一个四表联合查询在编译后的测试里却没起作用,一条数据也没查出来,在本机上用测试工具能正常查询数据,代码审查了几遍,也没发现任何错误,最后在优化数据库时添加了两条索引,在数据查询速度快了一倍的同时,问题也一并被奇迹般地解决了……没时间调查原因,暂且记录下吧……希望有同样问题的也试试正确优化,因为有可能建立
2015-04-27 19:41:45 1196
原创 cocos2d-x 网络编程三(线程的应用)
基本上,只要是和网络挂上钩的话,就跑不了“线程”这个东西,今天写自己的项目也总算是用上了,其实也没什么难的,和其它操作系统的使用方式大同小异……为什么说和网络挂上钩就跑不了“线程”呢,因为网络这东西其实是不稳定的,需要单独控制,并且,像我们在使用阻塞型功能时如:前面说的使用curl的基本使用方法中使用的代码,那就会造成界面卡住,甚至是假死……阻塞这东西的意思可以理解为“独占”,所以其它的资源什
2014-01-20 23:16:14 1832
原创 cocos2d-x 界面编程三(cocos2d-x2.22版本中cocostudio GUI的控件事件响应)
cocos2d-x2.21版本都还没捂热,这新的2.22版本又出来了,出来就算了吧,结果连cocostudioGUI的代码也改了,不过已经支持到最新的cocostudio1.2版本了。本来想把这东西补进上一篇的博客里算了,不过可能有些人不会回头再去看上一篇文章,所以就重新写一篇把新版本的改过的封装代码及使用方法分享下吧……其实只要不是超级菜鸟应该都能在源代码中找到答案重新使用的。最新版本把事件
2014-01-11 14:33:51 2472
原创 cocos2d-x 界面编程二(cocostudio GUI的控件事件响应)
上篇说了cocostudioGUI的UI工程加载方法,这里接着继续说说控件的事件响应方法。其实添加方法和以前的类似,只是在最新的cocos2d-x版本中,添加的方式稍微有些改变,就是直接从加载的UIWidget中取出对应控件,然后为其添加事件响应即可,看下面的代码: //这里有两种方式获取widget中包含的UI控件,一种是通过tag,一种是通过name m_pUiLayer->getWid
2013-12-28 11:41:29 8776
原创 cocos2d-x 界面编程一(cocostudio GUI的初级使用)
本来想写点网络的东西,但是好像网络的东西还是服务端要求学习的内容比较多,所以最近也开始学习使用thinkPHP框架,因此网络这块暂时也就写到这两篇吧。现在开始也要学习cocostudio了,这东西经过一段时间的发展,终于已经可以真正放心运用到项目中了,里面的UI相当强大,所以不学的话,界面设计这块的效率会低很多。在最近的cocos2d-x版本中已经嵌入了cocostudio GUI,在工程里可
2013-12-26 22:18:49 8891 2
原创 cocos2d-x 网络编程二(cURL简单模拟登录的实现)
一个网游的话,“登录功能”是客户端最基本的一个功能,这是客户端与服务端产生交互的第一步,那cURL这样的东西也不是浏览器,所以说只能是利用其内具的功能进行模拟登录服务器……所谓“模拟”:就是利用cURL直接发送或者说是提交一些相关的信息到服务器端特定的页面,然后通过接收服务端返回的数据,将一些特定的信息记录下来,比如登录后返回的数据里面会有header中包含的sessionID,这个session
2013-12-07 22:45:10 3849
原创 cocos2d-x 网络编程一(cURL初级使用)
最近打算做个网络项目,所以开始学习网络这块,不过自己的基础和理解力太差了,很多东西感觉太抽象……学一点是一点吧,能做出来就行……通过查阅大虾们写的博客,知道了cocos2d-x里同样可以用两类网络通信方式:http和socket,http的主要用的是cURL,socket看上去要高端一些,用于更复杂的网络交互。所以先从cURL开始学起吧……思考了下,感觉cURL用来制作游戏的话主要是用在简
2013-11-30 23:11:44 4725 1
原创 cocos2d-x在android下添加多盟插屏广告
好吧,经过仔细研究,我发现其实在cocos2d-x的应用下添加的插屏广告,当用Jin调用代码时是在子线程中对UI进行操作,所以显然是不可能控制得了广告UI的,所以上一篇说的“无法添加”就当是屁话好了……反正我确实是只菜鸟……接下来把添加过程写出来,好让后继的菜鸟们能不费力的添加这类广告,甚至以自定义的方式来展示广告……上面说过了用JIN调用插屏时是在子线程中操作UI,主线程UI不是安全线程,所
2013-08-13 19:26:45 5587
原创 cocos2d-x在android下添加插屏广告
最近完成了自己的一个小项目,理所当然地准备在应用里加些广告……不幸的是,我想要加的有着良好用户体验的插屏广告在android的支持并不是很好,支持好的填充率估计又跟不上。多盟的插屏在android下可以强行加入,但试过是没法正常点击的。然后是艾德思奇,他的示例里没正常展示出插屏广告,但我在芒果聚合里可以看到正常显示一个广告的框架,admob不太适用于国内,有米和易传媒的插屏广告可以正常添加,但填充
2013-08-08 13:31:40 7525 7
原创 cocos2d-x 使用Jin调用java层代码的问题
Jin这个东西是在android中用于.so链接库与java层交互用的,常用于游戏中调用支付和广告代码……不过使用后在编译时可能会引起一些小问题,比如使用java SDK下的jin.h是不一定能顺利完成编译的,至少我是没成功,结果还是用了NDK目录下platforms里对应android版本的Jin.h、和log.h才编译成功,理所当然地在编译时也需要在Android.mk里加上对cocos2dx
2013-07-27 19:58:44 1781
原创 CCSpriteBatchNode中设置zOrder的问题
CCSpriteBatchNode用于批处理绘制精灵,效率颇高!但今天在使用时需要动态处理精灵的zOrder属性,发现动态修改CCSpriteBatchNode中对应精灵的属性无效,结果测试了下是需要先移除要修改的精灵所对应的node,再把修改过属性的精灵再添加回去才能生效……至于原因:估计是它有自己的独立的处理机制,随便看了下源码,看到它是有自己的排序处理机制的,现在只优先开发,懒得看源代码找原
2013-07-15 09:47:50 2781 1
原创 cocos2d-x 菜鸟学习笔记十七(简单的碰撞检测 实践篇 下)
最后这一节记录一下cloudBomb中冲击力影响的实现和碰撞过滤。利用chipmunk中的冲击力函数可以在导弹爆炸时弹飞附近的刚体,达到最真实的爆炸所产生的物理影响,其实在游戏中也可以用来做释放技能之类的影响区域,下面是代码:首先需要拿到导弹爆炸后,在影响范围内的刚体坐标: cpSpaceNearestPointQuery(space,shape->body->p,100,12,CP_
2013-06-10 14:25:21 2138
原创 cocos2d-x 菜鸟学习笔记十六(简单的碰撞检测 实践篇 中)
这一篇就说说导弹发射与碰撞部分的代码,总体来说就和一个微型的飞行射击游戏差不多,但是在这部分内容里,游戏运用了一些碰撞后的特效代码如:背景闪烁、地面出现弹坑……不过貌似cocos2d-x没有完全封装chipmunk,所以示例中有些功能实现起来过于麻烦,如地面的碰撞线段按边缘附加本来可用的marchAllWithBorder,这样的方法就得替换成手动设置……因此像弹坑这样的效果就不打算再做了,反正弹
2013-06-09 15:38:27 8759
原创 cocos2d-x 菜鸟学习笔记十五(简单的碰撞检测 实践篇 上)
这里以chipmunk官方的一个例子来展示一下物理引擎在游戏中的具体应用,例子名称是Cloud Bomber,虽然只有obj-c的源码,但还是本着看看编程思想的心态学习了一下。掌握这个例子核心的内容也就能证明自己算是正式入门了……这里只按实现逻辑将核心部分代码转换成C++代码,因为时间有限,所以分三篇来写吧……首先是第一部分的内容,在例子里用到了自定义的精灵,这种自定义的精灵可以用来定制精灵的
2013-06-07 22:37:11 2040
原创 cocos2d-x 菜鸟学习笔记十四(简单的碰撞检测 进阶篇)
上一篇记录了chipmunk的使用流程,其实还算不上是碰撞检测,但在游戏中需要利用这些碰撞事件来执行对应的动作,这就涉及到另一部分的内容了,即怎样在发生碰撞事件的时候调用对应的工作代码。首先是为碰撞事件设定回调函数:在chipmunk中有两种设定碰撞回调函数的方法,一种是cpSpaceSetDefaultCollisionHandler,另一种是cpSpaceAddCollisionHan
2013-06-05 11:44:28 4404
原创 cocos2d-x 菜鸟学习笔记十三(简单的碰撞检测)
cocos2d-x里有两个物理引擎分别是box2d和chipmunk(金花鼠,不知道为什么叫这名字……),如果想看看基础的常识及这两个物理引擎的区别请到以下网址:http://bsr1983.iteye.com/blog/1672032 其实本人的物理知识也都快忘记光了……只能一点点补了……这两个物理引擎可以构建一个属于自己的物理世界,而这个物理世界是基于现实中的物理特性建立的,所以能赋予在这
2013-06-03 13:40:48 5846 5
原创 cocos2d-x 菜鸟学习笔记十二(粒子系统的研究初接触)
我也是第一次玩粒子系统,感觉很多参数,然后这些参数能组合出的效果也异常地多,所以学起来的时候,大脑的脑细胞也消耗得异常地多……粒子系统是一个非常酷的东西,都知道物质是由分子组成的,这粒子就可以看成是组成物质的分子,使用粒子系统可以把粒子按照不同的属性(位置,数量,大小,速度……)组合起来形成一种对应的视觉效果比如:天在下雨就是老天爷在玩雨粒子的特效……很多有大有小的雨滴粒子从天而降便形成了雨景……
2013-05-31 22:00:50 2876
原创 cocos2d-x 菜鸟学习笔记十一(触摸控制精灵)
在游戏的时候总会涉及到的用户操作就是通过触摸点击来控制精灵,在官方原例中已经有两例关于触摸的实例,不过都是多点触摸的案例,分别是clickAndMoved和muiltyTouch,这两例都是通过层做为代理来实现触摸事件的,这也应该算是cocos2d的标准用法了,也已经有大虾对ClickAndMoveTest一例进行了分析:http://blog.csdn.net/honghaier/article
2013-05-30 00:04:41 2683 1
原创 cocos2d-x 菜鸟学习笔记十(计时器-CCScheduler)
CCScheduler可以算是个计时器,可以根据需要通过此类下的各种方法设定计时来执行回调函数,达到计时控制精灵、动画的作用。官方原例中已经演示了这个类的具体使用方法,这里就记录一下使用方法:1.setTimeScale用于减慢或者快进动画,其默认参数值为1.0,低于此值时计时器会放慢,否则加快,下面是代码:class SchedulerTimeScale : public coc
2013-05-28 17:14:52 15984
原创 cocos2d-x 菜鸟学习笔记九(引用plist快速生成动画精灵)
前面说过,在绘制精灵时最好使用CCSpriteBatchNode和CCSpriteFrameCache,前面只说过可以通过图片合并后使用.plist文件在程序内部进行引用,这回就具体说说这些文件是如何生成并使用的。这样的纹理图片打包工具应该是不只一个的,我常用的就是Texture packerGUI,好东西总会有盗版,用之……要说为什么要打包使用纹理图片的话,那是因为可以节省载入次数,这样加载
2013-05-27 23:19:49 4517 1
原创 cocos2d-x 菜鸟学习笔记八(界面控件之CCControl控件)
CCControl控件也是cocos2d-x扩展控件中的一部分,包含了九宫格(nine pacth)按钮、滑动条、开关按钮、电位计按钮、步进器和颜色选择控件,这些也算是常用的控件了,下面是各个控件的使用方法及流程:1.九宫格按钮这是一种为了方便不失真缩放而诞生出的简洁型按钮,具体说来就是这种按钮使用的是纹理相对比较规则的图片,然后将图片划分为九个显示区域,在缩放按钮的时候,根据需要将这九个
2013-05-27 15:23:05 9143
原创 cocos2d-x 菜鸟学习笔记七(界面控件之scrollView与tableView)
在cocos2d-x中集成了一些扩展插件,这些引用文件都可以在cocos2d-x目录下的extentions下找到,其中常用的scrollView和tableView的引用文件在GUI目录下。scrollView常用于大尺寸图片或者大区域无限制地显示内容(也就是说不需要对齐内容),tableView常用于大量数据的排列展示,特别是需要一些对齐格式的内容,其中scrollView只在cocosbui
2013-05-25 18:53:29 24077 25
原创 cocos2d-x 菜鸟学习笔记六(界面控件之MenuItem)
无论是PC应用还是移动应用,必不可少的元素之一就是控件,对用户来说它们被用于用户与应用的交互,对应用本身来说它们被用于应用各个功能框架的交互。cocos2d-x里的控件包含的种类很多,这里记录的是最常用的控件类CCMenuItem。对于为什么将一个看上去更像是按钮控件的东西被命名为Menu,我是着实纠结了一小会儿,现在看来也许是因为cocos2d-x用的是节点(Node)来存储控制各个对象,所以更
2013-05-24 14:49:01 5341
原创 cocos2d-x 菜鸟学习笔记五(精灵与动画)
精灵可以看作是演员、角色,在游戏中,精灵可以是一张图片,一个控件(比如label也是继承了精灵类)……在场景中,精灵会根据需要进行相关的“表演”,这个“表演”可以是待在某个坐标,也可以是一组动画……游戏中的动画效果是很多的,可以是动态变换位置、大小的菜单按钮,也可以是个游戏人物的行为动画……这里先推荐两篇不错的文章,里面详细介绍了各种动画效果和实现的原理:http://blog.csdn.ne
2013-05-23 15:52:37 3315
原创 cocos2d-x 菜鸟学习笔记四(游戏场景与场景切换)
首先是一些常识的介绍,这里有篇文章:http://article.ityran.com/archives/3283简单的说来,一个游戏中包含的主要元素就是导演,场景,层,精灵,其实就是和拍戏一样,导演负责按“剧本”控制场景、层和精灵(演员),这“剧本”当然是我们自己设计的,比如:有什么角色演员,什么样的场景下演员可以或者应该做什么动作……而导演负责执行和控制这些元素将“剧本”以动态可视化的表现
2013-05-22 20:40:37 8280
原创 cocos2d-x 菜鸟学习笔记三(图片预加载与进度条)
在做游戏时,会用于很多和图片资源,包括角色,动画,纹理贴图……为了减少GPU和CPU的缓存占用以及图片的重复利用,在游戏开始时,都会预加载这些资源进入缓存,在cocos2d-x里用的是CCTextureCache这个类。其实,在cocos2d-x自带的TestCpp里有对应的例子,在里面用的是: addImageAsync(const char *path, CCObject *targe
2013-05-21 21:40:17 7005
原创 cocos2d-x 菜鸟学习笔记二(自适应屏幕分辨率)
在android中,适应各种分辨率是个很头疼的事,特别是对于游戏来说……网上教程介绍得已经很详细了,下面是个人认为写得比较全的文章链接:1.http://codingnow.cn/cocos2d-x/975.html 或者http://blog.csdn.net/gg137608987/article/details/83026992.http://article.ityran.com/a
2013-05-21 12:43:08 2555
原创 cocos2d-x 菜鸟学习笔记一(跨平台编译)
移动应用编程我学得比较晚,这些天看了不少cocos2d-x的教程,趁着编译的空闲记录下学习过程和其中碰到的问题。个人认为学习任何游戏框架和引擎都必需掌握的基础知识之一就是“跨平台编译”,这样就可以同时发布多个平台的应用,有利于推广。所以两天都没打代码,直接找教程学习cocos2d-x的跨平台编译方法及过程(网络上的资料包括编译时可能碰到的问题,大多很零散,所以这里整合一下)。我自己的搭建的
2013-05-18 14:57:10 4132
原创 android中的sqlite数据库加密
说到android的数据安全又不得不说这sqlite的加密了,sqlite的加密现在用得比较爽的估计还是wxsqlite扩展了,但在android中要使用这个扩展还得用NDK重新编译一次成为.so的适用于android动态链接库,就是无奈地还要修改各个接口名,否则无法正常调用。还好,已经有人做过了,详细使用例程在http://www.eoeandroid.com/thread-180140-1-1
2013-04-28 11:25:19 12030
原创 使用NDK编译时出现cannot execute binary file的问题
最近开始玩Android了,因为其apk本身的安全问题如:容易被反编译,资源容易被盗用……所以大多人会用NDK封装一些自己定制的功能到so这样的动态链接库里进行调用,于是下载了cygwin安装了NDK-r8b版本,但是编译时出现了arm-linux-androideabi-gcc: cannot execute binary file这样的错误,查资料有说是权限问题的,设置了下,没解决!(乱七八糟
2013-04-27 17:09:28 4515
原创 判断TTS语音朗读是否结束
最近玩语音朗读的时候比较多,也在两个软件中应用过。其实大多语音朗读的代码还是很好写的,只是像判断TTS语音朗读是否结束或者当前语音引擎的状态稍微要查找一下参数。这里记录一下:原本在网上查到的一条关于判断TTS朗读完成事件的代码WaitForSingleObject(spvoice.SpeakCompleteEvent, 200);在delphi 中使用时并没有达到原本看似应该有的功效,测试时发
2013-02-04 14:38:29 5645
原创 XP下运行使用delphi XE2 皮肤编译的程序的小问题
也许不只是delphi XE2 ,但是现在我基本只用这个了,因为设计程序界面方便了很多。这次记录这个小问题,免得以后忘记。这段时间写的一个软件,里面用了webBrowser控件和分割窗口的界面,在XP下测试编译后的程序界面时,webBrowser的显示会少显示出一截,另一截对齐到窗口边框上去了,只有在鼠标移动到系统按钮上时显示出来,其实这个问题一开始在win7和xp下都会出现,查了下资料,说是
2013-01-04 16:27:02 1621
原创 dedeCms恢复数据库后乱码
好久没做网站了,最近看到不少模板源码,于是下了些来玩。找了个免费无任何限制只带广告的国外空间,但是在dedeCMS恢复数据乱码时出现了问题,都是知道这玩意就是编码的问题,不过不细心的人在使用dedeCMS可能会由于恢复数据时勾上了“还原表结构信息”这一条(这个是默认勾选的)而出现意外的情况,比如原本数据是utf或者latin的编码,而当前空间安装的dedeCMS使用的数据是GBK编码,尤其是当前数
2012-11-19 21:24:49 4783
原创 DBGridEH中使用checkBox的副作用
为了方便使用了DBGridEH控件,并且配合触发器使用,想根据更新的boolean字段值来更新其它表中对应的数据。可是搞了半天死活激活不了其中的一个触发器,后来神经地设定为布尔字段值为-1和0时激活触发器居然成功了,真是哭笑不得……
2012-04-02 16:30:51 2143
翻译 AS2 中替换字符串的方法
在国外网站看到了一个AS2中替换字符串的方法,这个方法不需要自己写完整的函数,只需要简单几步即可完成此功能:1. 新建一个文档,F9打开动作脚本面板,在里面输入:String.prototype.replace = function(strFind, strRepla
2011-07-29 17:43:04 2692
原创 Flash动态文本里中英字体混用产生的BUG
Flash动态文本是在写脚本时经常用到的对象,其内容也经常会使用中英文混合。但是今天发现了一个BUG:当字体设置为英文字体时,如果里面添加了中文,并在动态改变文本内容时引用了多个变量,那么这些变量将无法正常的文本化,如:arial字体的动态文本在动态设置其文本内容时引入一段中文textContent=“汉字”+变量a+“abc”+变量b ,这样后面的变量将无法绝对地正常显示,要解决此问题就必须
2011-06-21 15:03:00 1547
JScrollPane2.0 beta10
2012-03-25
Unidac 4.14 standard Edition fullsource
2012-03-19
f-in-box 3.56 DelphiCbuilder edition demo
2012-03-10
ZeosLib7.0 rev8.78
2011-05-11
delphi 加密sqlite的简单例程
2011-04-24
wxsqlite3.2.1 sqlite加密扩展
2011-04-22
UniDAC 3.60 full source for Delphi CB
2011-04-21
UniDAC3.60 for Delphi XE
2011-04-21
UniDAC 3.6.16 Pro for delphi2010
2011-04-20
微软TTS语音SAPI for Delphi控件安装包
2011-04-18
UniDAC控件操作sqlite的简单例程
2011-04-18
amcharts_2.0.5 分析统计类Flash图表
2011-03-26
UniDAC3.0.6 for delphi and CB数据库控件
2011-03-09
BCGControlBar.Professional.v9.56分卷二
2011-03-04
ZEOSDBO-7.0.0-alpha.rar
2011-03-03
BCGControlBar.Professional.v9.56
2009-06-10
ThinkEMall思亿电子商城系统源代码
2017-06-08
cocos2d-x3.2与Firefly服务端信息交互(protobuf版本)
2014-11-08
cocos2d-x3.2与Firefly服务端信息交互
2014-10-05
cocostudio GUI的控件事件响应示例
2013-12-28
聚语网日语词汇MP3生成器
2012-09-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人