cc.rectContainsPoint(rect, point);此中rect常用node.getBoundingBox()方法取得,而这个方法通过node的x,y和width,height算得.也就带来了此中rect常用node和point在不同parent下时,坐标系不同.当使用时,应统一坐标系或将point换算为node的坐标系.…
在学习ajax的过程中,我曾经遇到过这样的一个问题,为了得到一个详情列表,我要先向服务器去请求得到索引表,简单描述就是ajax中的success中的for循环中再次嵌套了ajax,结果第二层success中的ajax的success并不能取得上层ajax的success中的值. 我先使用ajax发送请求获得索引表,再使用for循环去依次使用索引目录去获得详情列表中想要的数据.当时因为水平有限,用了一个最不合理的方式,于是产生了这么一个莫名其妙的问题. 但是很奇怪的是每次传入的参数都是undefi…
c#参数传递使用中发现的一个问题 写了3个重载方法,把 对象.int .(int直接封入object) 传入SWAP方法进行数据操作结果对象内的数据发生了改变,其他2个没有:…
var self = this; this.touchListener = cc.EventListener.create({ event: cc.EventListener.TOUCH_ONE_BY_ONE, /* 可选event类型列表: cc.EventListener.TOUCH_ONE_BY_ONE (单点触摸) cc.EventListener.TOUCH_ALL_AT_ONCE (多点触摸) cc.EventListener.KEYBOARD (键盘) cc.EventListen…
更新: 后来在实际使用中发现,与其使用zabbix自动注册,不如直接调用zabbix的api主动发起添加服务器的请求,这样就不需要在zabbixserver上配置host信息了.实现全自动.具体调用方式见 https://www.zabbix.com/documentation/3.2/manual/api/reference/host/create 前言: zabbix监控在小规模的时候,可以使用手动一台台添加服务器,到了大规模以后,就不合适了,这时候需要使用zabbix的自动发现或者自动注册…
问题描述 在正常使用Azure Redis的服务中,突然发现Redis 的CPU达到了100%, 正常的使用中发现性能问题严重.从Redis的门户图表中,观察到CPU, Connection,Lentency,Server Load都出现高的情况 CPU Server Load Lentency(Redis处理请求的延迟情况) Connection(客户端连接数情况) 问题分析 根据以上的图表发现,在Connection高的情况下导致了CPU上升并持续到100%, 引起了Server Load比…
当我在工作中使用lua进行开发时,发现在lua中有4种方式遍历一个table,当然,从本质上来说其实都一样,只是形式不同,这四种方式分别是: for key, value in pairs(tbtest) do XXX end for key, value in ipairs(tbtest) do XXX end for i=1, #(tbtest) do XXX end for i=1, table.maxn(tbtest) do XXX end 前两种是泛型遍历,后两种是数值型遍历.当然你还…
注意:本节代码基于<第七章 企业项目开发--本地缓存guava cache> 1.本地缓存的问题 本地缓存速度一开始高于分布式缓存,但是随着其缓存数量的增加,所占内存越来越大,系统运行内存越来越小,最后系统会被拖慢(这一点与第二点联系起来) 本地缓存存于本机,其缓存数量与大小受本机内存大小限制 本地缓存存于本机,其他机器的访问不到这样的缓存 解决方案:分布式缓存 Jboss cache:缓存还存于本机,但是会同步更新到其他机器(解决了第三个问题,解决不了第一和第二个问题),如果缓存机器数量很多…
原文总结的非常好,都是我们学cocos2d-x以来摸索过的东西,如果早有这篇文章就能少走不少弯路了,特此截屏保存.原文链接:http://shahdza.blog.51cto.com/2410787/1569003 (原文中说的getPosition()那个大坑幸好我没踩上,我每次都是偷懒用getPositionX()和getPositionY()的,当时还奇怪为啥cocos2d-x要封装这个奇怪的两个方法,哈哈) CC3.2+Lua(9) ——从C++过渡到Lua 2014-10-28 22:…
首先,表明我的态度:采用 Flash 才是最优方案,不建议使用 HTML 5 的 Canvas 做一些生产/工业级的网页应用. Flash的优势一是浏览器支持好,二是代码成熟稳定.而HTML5 的 Canvas 不利用网络上开源的 JS 绘图库,你是不可能做出复制的 Canvas 应用的.而网络中的 JS 绘图库目前杂且乱,部分库没更新几个月项目就被废弃了,现在还没有像 JQuery 之于 JS一样那么流行的 Canvas 绘图库.我看好的就是 Createjs   和 Fabric.js. 其…
一.写在前面的话 最近在学习cocos2d-html5方面的知识,一直想从事游戏方面的工作,自己也找了好多资料.网上关于cocos2d-html5的教程真的不多,也只有自己摸索,慢慢看示例代码.由于本人没有mac,所以呢就用不了cocosbuild来制作动画相关的啦,不过今天又发现一个东西就是可以采用虚拟机来转mac系统,呵呵,明天继续试试.如果你也在学习或从事cocos2d-html5方面东西,希望大家都相互交流,共同进步啊. 二.橡皮筋制作 这部分的主要内容是制作橡皮筋,石头放在弹弓上,用手…
简单介绍 游戏开发中一个非常重要的功能就是交互,假设没有与用户的交互.那么游戏将变成动画,而处理用户交互就须要使用事件监听器了. 总概: 事件监听器(cc.EventListener) 封装用户的事件处理逻辑 事件管理器(cc.eventManager) 管理用户注冊的事件监听器,依据触发的事件类型分发给对应的事件监听器 事件对象(cc.Event) 包括事件相关信息的对象 怎样使用呢? 首先须要创建一个事件监听器.事件监听器包括下面几种类型: 触摸事件监听器 (cc.EventListener…
游戏中的碰撞还是比較多的,比方角色与角色的碰撞,角色与墙壁的碰撞,角色与怪物的碰撞等,都须要 进行碰撞的检測,来触发一定的事件 近期在尝试制作一个小游戏的时候须要用到碰撞检測,然后就查了下资料,并在论坛进行提问等算是找到了比較惬意的碰撞检測方法,这里记录下来 如今自己知道的方法算是有了三种了,以下一一记录并分析下他们各自的优缺点 1.就是官方提供的,依据getBoundingBox();方法获取要检測的碰撞物体的范围,然后再依据rectIntersectsRect();方法进行推断须要检測的两个…
最近准备做一个聊天系统,开始准备使用cocos2dx的UIRichText控制显示屏聊天,在使用中发现的结果,cocos2dx的RichText很有限.全然不具备实现聊天的功能.仅仅实现了增加文本.图像和自己定义控件的功能.支持不同字体.颜色.字号. 我个人觉得.一个RichText控件应该具备下面基本功能: 1.多样化的文本显示功能,包含字体.颜色.字号的设置. 2.能显示图片以及一些特殊元素. 3.应该支持图片文字的超链接功能. 4.可以支持滚动的效果. 5.可以有非常方便的换行功能,最好能…
cocos2d-js3.0实用语法 /*初始化继承类*/ var Enemy = cc.Sprite.extend({ hp: 0, fileName: "enemy.png", ctor: function (arg) { this._super(arg.pic); this.hp = arg.hp; } }); var enemy1 = new Enemy(100); /*动作*/ var anAction = cc.sequence( cc.moveBy(2,cc.p(100,5…
Event背景 最近,接到一个需求,优化房间内设置界面: 表面问题:用户在按钮表面,滑动界面的时候,总会误触到界面上的按钮或者复选框 根本问题:由于ListView的事件具有传递性,导致双重事件触发,既滑动又选中了按钮 解决方案:在listView上,addChild一个Layout,加以触摸事件监听,阻止和传递事件 聪明的我一下子就想到了~ 具体方案: 1. 在onTouchMoved的时候,判断用户点击位置是Layout,还是ListView的子节点(按钮和复选框) a: 如果触摸的是Lay…
游戏中的碰撞还是比较多的,比如角色与角色的碰撞,角色与墙壁的碰撞,角色与怪物的碰撞等,都需要进行碰撞的检测,来触发一定的事件 最近在尝试制作一个小游戏的时候需要用到碰撞检测,然后就查了下资料,并在论坛进行提问等算是找到了比较满意的碰撞检测方法,这里记录下来 现在自己知道的方法算是有了三种了,下面一一记录并分析下他们各自的优缺点1.就是官方提供的,根据getBoundingBox();方法获取要检测的碰撞物体的范围,然后再根据rectIntersectsRect();方法进行判断需要检测的两个精灵…
概述 最近使用golang开发项目时, 发现有时需要同时进行多个golang项目. 在这种情况下, 如果把所有的项目都放在 GOPATH 之下, 不仅管理麻烦(因为各个项目需要提交到不同的代码库), 而且编译的时候也不方便(如果不指定项目, 就会编译所有的项目). 于是, 就想如何将各个项目在物理上就隔离开. 我是用emacs开发golang项目的, 所以隔离之后, 还要考虑如何让emacs的golang插件能够正常工作. 使用 gb 隔离各个 golang 项目 gb 是用来管理golang项…
今天来接着写这个系列的文章,这一篇主要是用来介绍关于C#中的XML序列化的问题,这个相信大家一定会经常使用它,特别是在WPF中,有时候我们需要将我们后台的数据保存在数据库中,从而在软件下一次启动的时候能够自动去加载这些数据,由于我们的这些Model中字段众多,如果单独进行保存那是不太现实的,这个时候将这些字段序列化成xml字符串并保存在数据库中就是一个不错的选择,当我们需要这些数据的时候我们也可以反过来将其序列化为一些字段,最终达到我们的效果,首先我们来看看是如何实现的? public clas…
1.本地存储数据显示不出问题 问题细节: 本地使用如下语句存储成绩,"ScoreDisplay"为键,值为this.score.toString(),但是在cocos creator 预览一切正常,构建发布之后,问题就出现了! cc.sys.localStorage.setItem("ScoreDisplay",this.score.toString()); 游戏GameOver之后,不能加载出来得分情况场景 Gameing场景 GameOver场景(有bug) 是…
简介 游戏开发中一个很重要的功能就是交互,如果没有与用户的交互,那么游戏将变成动画,而处理用户交互就需要使用事件监听器了. 总概: 事件监听器(cc.EventListener) 封装用户的事件处理逻辑 事件管理器(cc.eventManager) 管理用户注册的事件监听器,根据触发的事件类型分发给相应的事件监听器 事件对象(cc.Event) 包含事件相关信息的对象 如何使用呢? 首先需要创建一个事件监听器,事件监听器包含以下几种类型: 触摸事件监听器 (cc.EventListenerTou…
一.什么是Docker Machine Docker Machine 是Docker官方编排项目之一,使用go语言编写的,使用不同引擎在多种平台上快速的安装Docker环境,开源地址:https://github.com/docker/machine. Docker Machine 是一个工具,它允许你在虚拟宿主机上安装Docker,并使用docker-machine命令管理这个宿主机,可以使用Docker Machine在本地的MAC或者windows box.公司网络,数据中心或者AWS这样…
参考资料:     http://shahdza.blog.51cto.com/2410787/1561937 http://blog.csdn.net/jackystudio/article/details/17160973 [ClippingNode] 1.原理 ClippingNode(裁剪节点)可以用来对节点进行裁剪.ClippingNode是Node的子类,可以像普通节点一样放入Layer,Scene,Node中. 主要是根据一个模板(Stencil)切割图片的节点,生成任何形状的节点…
function () use ($x, &$y){} 自从PHP5.3开始有了closure/匿名函数的概念,在这里的use关键词的作用是允许匿名函数capture到父函数scope 内存在的$x和$y变量.其中&&y为引用方式capture,也就是说每次该匿名函数调用时,y的值如果 被修改了也反映在这里,而$x则是静态引用. <?php $message = "hello\n"; $example = function () { echo $messa…
简介http://blog.csdn.net/qinning199/article/details/41951517 游戏开发中一个很重要的功能就是交互,如果没有与用户的交互,那么游戏将变成动画,而处理用户交互就需要使用事件监听器了. 总概: 事件监听器(cc.EventListener) 封装用户的事件处理逻辑 事件管理器(cc.eventManager) 管理用户注册的事件监听器,根据触发的事件类型分发给相应的事件监听器 事件对象(cc.Event) 包含事件相关信息的对象 如何使用呢? 首…
Block可以说是这个游戏的核心类,它除了包含自身的一些属性和方法外还添加了对触摸事件的响应. 我们先来看下源码吧 /** * Power by html5中文网(html5china.com) * author: jackyWHJ */ var Block = cc.Sprite.extend({ id:0, name:"", active:true, pointX:0, pointY:0, beginPoint:null, flash:false, ctor:function (a…
Delphi Windows IOCP 通讯模型封装,基于DIOCP.YxdIocp包含有支持大并发的TCP服务组件.HTTP服务组件.UDP服务组件.WebSocket服务组件,和TCP.UDP等基础客户端组件. DIOCP 修改版(YangYxd) Demo 源码需要重新设置下搜索路径,指向 Source\IOCP 文件夹即可. [感谢] 感谢DIOCP原作者天地弦,以及DIOCP官方群.QDAC官方群所有参与本项目测试.修改的朋友. [注意事项] 您在使用中发现任何BUG.更改意见等请及时…
高性能离不开异步,异步离不开队列,内部是Producer-Consumer模型的原理. 设计中的核心概念: job:一个需要异步处理的任务,是beanstalkd中得基本单元,需要放在一个tube中: tube:一个有名的任务队列,用来存储统一类型的job,是producer和consumer操作的对象: producer:job的生产者,通过put命令将一个job放入一个tube中: consumer:job的消费者,通过reserve/release/bury/delete命令来获取job或…
一. 业务背景 构建具备高可用,高扩展性,高性能,能承载高并发,大流量的分布式电子商务平台,支持用户,订单,采购,物流,配送,财务等多个项目的协作,便于后续运营报表,分析,便于运维及监控. 二. 基础服务架构说明 参考“大型电子商务架构说明”.doc (或http://my.oschina.net/chejiangyi/blog/521950) 三. 基础服务架构横向演进架构图 四. 基础服务横向演进架构概述 1. 分布式任务调度平台演进    (开源地址:http://git.oschina.…
一.npm简介 安装npm请阅读我之前的文章Hello Node中npm安装那一部分,不过只介绍了linux平台,如果是其它平台,有前辈写了更加详细的介绍. npm的全称:Node Package Manager. ####(1)通俗的理解 其实从字面意思就可以理解这个产品有什么作用翻译为“Node包管理器”.对,就是Node的包的一个管理工具,目前我尝试的有 下载并安装包(npm install [pkg]) 升级安装包(npm update [pkg]) 卸载安装包(npm uninstal…