自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 收藏
  • 关注

原创 骨骼动画的加载

resource.js:var res = { tauren_animation: "res/eff/tauren.ExportJson", tauren_plist: "res/eff/tauren0.plist", tauren_png:"res/eff/tauren0.png",};app.js://动画文件信息放到动画数据管理器里面ccs.armature

2016-09-30 11:56:42 383

原创 Cocos Creator 点击事件

将background节点添加点击事件 (点击事件只能在节点上添加 ! ! ! ) creator里的新点击事件写法,cc.Node.EventType.TOUCH_START是点击类型,点击类型一共有:TOUCH_START 当手指触摸到屏幕时.TOUCH_MOVE 当手指在屏幕上目标节点区域内移动时。TOUCH_END 当手指在目标节点区域内离开屏幕

2016-09-27 17:25:23 5547

原创 向量练习

var dn = new cc.DrawNode();this.addChild(dn);var a = cc.p(cc.winSize.width>>1,cc.winSize.height>>1); //获取到地图中心点var b = cc.pAdd(a,cc.p(200,0)); //获取中心点X轴偏移200距离的点dn.drawSegment(a,

2016-09-07 23:27:06 451

原创 图片的点击事件 和场景精灵类

var Sen = cc.Sprite.extend({ direction:1, direc:1, const:5, p:3, ctor:function(){ this._super("res/png_1.png"); this.const = parseInt(Math.random()*5) this.

2016-09-05 22:05:54 503

转载 面试可能提到的cocos-js优化

1:缓存的创建和清除 为了提供性能,Cocos2d-JS提供了几个缓存,分别应用与不同的情况。这些 缓存类有纹理缓存,精灵帧缓存,动画 缓存和着色器缓存。 场景与资源 不同的场景中资源的占用不同,而资源的占用决定了缓存创建和清除的时机。 场景与资源 不同的场景中资源的占用不同,而资源的占用决定了缓存创建和清除的时机。 缓存创建和清除时机 使用纹理和精灵帧缓存时,一个原则

2016-09-03 22:52:36 2338

原创 面向对象和面向过程的区别

面向过程编程 面向过程编程是一种以过程为中心的编程思想,分析出解决问题的步骤,然后用函数把这些步骤一步一步实现。面向过程编程,数据和对数据的操作是分离的。面向对象编程 面向对象编程是将事物对象化,通过对象通信来解决问题。面向对象编程,数据和对数据的操作是绑定在一起的。 面向对象的三大基本特征:封装:把客观事物封装成抽象的类,隐藏属性和方法的实现细节,仅对外公开接口。

2016-09-03 22:49:52 208

转载 简述cocos2d-x 3.0与Cocos2d-x 2.X版本有哪些区别

Cocos2d将符合语义版本控制,这意味着更新不会打破向后兼容性对整个 API 进行重构清理,隐藏私有属性,命名风格更加一致,移除老的无用的类大量改进对触摸操作的支持,任意节点都可以处理触摸和多触摸Cocos2d 集成物理学可无缝和怪物或者任意其他节点工作,完全是 Objective-C 的包含 UI-Kit,只需要简单数行代码就可以添加按钮、文本框、滚动视图以及滑块改进多分辨率支持图

2016-09-01 22:46:46 1216

转载 cocos 优化

动态设置帧率 UI界面帧率设置最高30帧战斗等特效和动画比较多的界面帧率设置最高60帧  减少特效粒子数和帧数把一些特效和帧动画改成骨骼动画,减少帧数量。跟美术和策划沟通,在效果可接受的情况下减少特效粒子数。  使用texturepacker拼图用texturepacker把一些小散图打包到一张大图,减少纹理IO和draw call。其实关于内存的大

2016-09-01 21:57:49 381

转载 常用的Javascript设计模式

http://blog.jobbole.com/29454/一 单例模式单例模式的定义是产生一个类的唯一实例,但js本身是一种“无类”语言。很多讲js设计模式的文章把{}当成一个单例来使用也勉强说得通。因为js生成对象的方式有很多种,我们来看下另一种更有意义的单例。 二 简单工厂模式简单工厂模式是由一个方法来决定到底要创建哪个类的实例, 而这些实例经常都拥有相同的接口. 这

2016-09-01 21:22:47 206

原创 sort() 的随机排列(不靠谱)

定义和用法sort() 方法用于对数组的元素进行排序。如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个

2016-08-31 19:49:47 1247

原创 三位数的进阶

var s =parseInt(Math.random()*899+100)   var str = s + ""var result = ''for(var i =0;iresult +=translateToCh(str.charAt(i),i)      //charAt()方法可返回指定位置的字符。}console.log(result)function tra

2016-08-31 19:05:58 237

原创 random

定义和用法random() 方法可返回介于 0 ~ 1 之间的一个随机数。返回值0.0 ~ 1.0 之间的一个伪随机数。100-999的随机数var str = parseInt(Math.random()*899+100) //  100是起始数 899   是100到999的随机20-50的随机var str = parselnt

2016-08-31 18:59:43 224

原创 JavaScript Date对象

Date对象是内置的JavaScript语言的数据类型。日期对象使用new Date( )创建,如下所示。一旦一个Date对象被创建后,许多方法让你操作它。最简单的方法,可让您获得并设定年,月,日,小时,分钟,对象的秒和毫秒等字段,采用本地时间或UTC(通用或GMT)时间。ECMAScript标准要求Date对象能够代表任何日期和时间,精确到毫秒,在亿天之前或之后,1970年1月1

2016-08-30 21:47:23 221

原创 setInterval和setTimeout整理

//setTimeout() - 暂停指定的毫秒数后执行指定的代码//setTimeout("javascript 函数",毫秒数);//setInterval() - 间隔指定的毫秒数不停地执行指定的代码。//setInterval(”js代码,函数等“,毫秒数);//文字滚动效果找出'字'的ASC编码 var j=24000; var s=String.fromCh

2016-08-30 21:14:19 246

原创 JavaScript Date对象

var i=0;var c = falsevar d=0var f =0//--------------------------------------------------------------------------------var date = new Date()         //获取当前时间var old = date.getTime()      //

2016-08-30 19:31:08 161

转载 JavaScript之数据类型

数据类型  JavaScript中有5种简单数据类型(也称为基本数据类型):Undefined、Null、Boolean、Number和String。还有1种复杂数据类型——Object,Object本质上是由一组无序的名值对组成的。 typeof操作符  介于JavaScript是松散类型的,因此需要有一种手段来检测给定变量的数据类型——typeof就是负责提供者方面信息的操作符。对

2016-08-29 22:56:35 235

翻译 质数

只有1和它本身两个因数的自然数,叫质数(或称素数)。(如:由2÷1=2,2÷2=1,可知2的因数只有1和它本身2这两个约数,所以2就是质数。与之相对立的是合数:“除了1和它本身两个因数外,还有其它因数的数,叫合数。”如:4÷1=4,4÷2=2,4÷4=1,很显然,4的因数除了1和它本身4这两个因数以外,还有因数2,所以4是合数。)100以内的质数有2、3、5、7、11、13、17、19、2

2016-08-29 19:34:02 582

原创 8.29 基础训练

//console.log('this is html')//alert('hello')var a = 10    var b = a    b = 12    console.log(a,b)    var ar = [1,2,3]    var br = ar      br[1] = 4    console.log(ar,'|',br)

2016-08-29 19:04:48 298

转载 Creator脚本

获得组件方法:只需要在组件方法里访问this.node变量: start: function () { var node = this.node; node.x = 100; }获得其他组件:需要用到getComponent这个API: start: function () { var label = this.getComponent(cc.Label); v

2016-08-28 17:31:51 602

原创 三消 相连的知识

首先检测是否有3个相同类型的元素相连。然后对其类型进行随机变换 ,再次检测是否有3个相连,使得开始游戏时没有3个相同类型的元素 检查完成后开始进行点击判断如果是第一次点击,就选中当前点击的块,如果点击的是已经选中的块则取消选中然后判断点击的块是不是已经选中的周围,如果是则进行互换位置,交换位置后检测是否有三个相同类型的块相连,有则消除,没有则把位置换回来.如果点击的块不是已经选

2016-08-28 17:26:36 363

原创 派生的构造函数

基类的构造函数不能被继承,在声明派生类时,对继承过来的成员变量的初始化工作也要由派生类的构造函数来完成。所以在设计派生类的构造函数时,不仅要考虑派生类新增的成员变量,还要考虑基类的成员变量,要让它们都被初始化。解决这个问题的思路是:在执行派生类的构造函数时,调用基类的构造函数。下面的例子展示了如何在派生类的构造函数中调用基类的构造函数。#includeusing n

2016-08-27 21:56:19 493

原创 C++虚基类

多继承时很容易产生命名冲突,即使我们很小心地将所有类中的成员变量和成员函数都命名为不同的名字,命名冲突依然有可能发生,比如非常经典的菱形继承层次。如下图所示:类A派生出类B和类C,类D继承自类B和类C,这个时候类A中的成员变量和成员函数继承到类D中变成了两份,一份来自 A-->B-->D 这一路,另一份来自 A-->C-->D 这一条路。在一个派生类中保留间接基

2016-08-27 21:53:00 581

原创 C++对字符串流的读写

文件流是以外存文件为输入输出对象的数据流,字符串流不是以外存文件为输入输出的对象,而以内存中用户定义的字符数组(字符串)为输入输出的对象,即将数据输出到内存中的字符数组,或者从字符数组(字符串)将数据读入。字符串流也称为内存流。字符串流也有相应的缓冲区,开始时流缓冲区是空的。如果向字符数组存入数据,随着向流插入数据,流缓冲区中的数据不断增加,待缓冲区满了(或遇换行符),一起存入字符数组

2016-08-27 21:51:22 700

原创 c++基础

C++标准库和std命名空间头文件说明stdio.h定义了用于输入和输出的函数、类型和宏。stdlib.h包含了C语言的中最常用的系统函数。string.h包含了C语言的最常用的字符串操作函数。ctype.h主要提供两类重要的函数:字符测试函数和字符大小转化函数。assert.h提供C语

2016-08-27 21:48:13 325

原创 虚函数多态

一、知识点1、一个操作随着所传递的对象类型的不同能够做出不同的反应,其行为模式成为多态。(P413) 2、基类与派生类的同名操作,只要标记上virtual,则该操作便具有多态性。(P416) 3、一旦标记基类的函数为虚函数,便有连锁反应,后面继承的类中一切同名成员函数都变成了虚函数。如果是引发实际复制动作的传递,则子类对象完全变成基类对象了,这时候,便不会再

2016-08-25 19:18:19 289

原创 运算符重载

运算符重载时要遵循以下规则:(1) 除了类属关系运算符"."、成员指针运算符".*"、作用域运算符"::"、sizeof运算符和三目运算符"?:"以外,C++中的所有运算符都可以重载。(2) 重载运算符限制在C++语言中已有的运算符范围内的允许重载的运算符之中,不能创建新的运算符。(3) 运算符重载实质上是函数重载,因此编译程序对运算符重载的选择,遵循函数重载的

2016-08-25 19:12:10 215

原创 C++继承和派生

继承(Inheritance)可以理解为一个类从另一个类获取成员变量和成员函数的过程。例如类B继承于类A,那么B就拥有A的成员变量和成员函数。被继承的类称为父类或基类,继承的类称为子类或派生类。派生类除了拥有基类的成员,还可以定义自己的新成员,以增强类的功能。以下是两种典型的使用继承的场景:1) 当你创建的新类与现有的类相似,只是多出若干成员变量或成员函数时,可以使用继承,这样不但会减

2016-08-25 18:59:18 198

原创 五个问题

1,学习js的闭包   通过老师的讲解加上以前整理的资料结合自己的想法,明白闭包的概念。2,发现自己的代码没能读出来       为了强化自己 对自己以前整理的资料 重新整理了一遍 目的让自己下次注意读代码的3,

2016-08-24 21:55:01 228

原创 一些自我整理的js代码

var gradient = new cc.LayerGradient(cc.color(0, 0, 0, 255), cc.color(0x46, 0x82, 0xB4, 255), cc.p(1, 1));this.addChild(gradient); //更改颜swallowTouchesL:true, //吞没事件 穿透this._losePanel = getWidge

2016-08-24 20:46:14 284

原创 面对对象和面向过程

面向过程编程 面向过程编程是一种以过程为中心的编程思想,分析出解决问题的步骤,然后用函数把这些步骤一步一步实现。面向过程编程,数据和对数据的操作是分离的。面向对象编程 面向对象编程是将事物对象化,通过对象通信来解决问题。面向对象编程,数据和对数据的操作是绑定在一起的。 面向对象的三大基本特征:封装:把客观事物封装成抽象的类,隐藏属性和方法的实现细节,仅对外公开接口。

2016-08-24 19:16:45 1074

原创 闭包概念

一、变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域。 变量的作用域无非就是两种:全局变量和局部变量。 Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。Js代码   var n=999;   function f1(){     alert(n);   }   f1(); // 999 另一方面,在函数外

2016-08-24 18:35:06 379

原创 五个问题

1.类和精灵有点混淆 2.文本这块还有疑问,就是显示有些地方去实现实现不出来  3.正则问题还需要在讲解 加深印象  4.函数问题  还没深刻讲 5.三消的下落还不明白    1,2题通过书籍知道了,查看章节资料,懂得了文本和精灵层级的概念3,4,5 希望老师指点

2016-08-23 19:58:55 231

转载 移动端js触摸事件

触摸屏上(手机web,平板web)的javascript事件——开发者工具开发者工具在移动开发中,一种较为容易的做法是,先在桌面上开始原型设计,然后再在打算要支持的设备上处理移动特有的部分。多点触摸正是难以在PC上进行测试的那些功能之一,因为大部分的PC都没有触摸输入。不得不在移动设备上进行的测试有可能会拉长你的开发周期,因为你所做的每项改变都需要提交代码到服务器上

2016-08-23 19:14:37 489

原创 c++知识

方法的返回的方法 1:执行到return语句 2:方法体执行完。3:在执行中报错的时候也会停止终结方法的。 void一定不接收返回值。 double sqrt 求平方根返回的是 浮点型 double pow 求的是幂次方 double strlen 求字符串长度,字符串一般称为字符数组.统计的是字符串字符的个数,遇到\0就结束。 double ceil 求不大于x的最小整数

2016-08-23 19:04:20 191

原创 自定义事件

关于自定义事件就是类与类之间的传递参数。或者是这个方法体想要引用另一个方法体的内容。就可以在一个方法体中抛出一个自定事件。在另一个方法体中接收。 ps:自定义事件满足的是 好莱坞原则 只有是层级高 的抛出事件,层级低的接收事件。否则就会出现问题。抛出自定义事件: cc.eventManager.dispatchCustomEvent(USER_CLICK_SHRED_EVENT,

2016-08-23 19:01:34 231

原创 疑惑的代码

1,不知道如何在函数内定义。2,不知道如何使用数组在函数中承接下一个方法内里面去。3,希望有更好的题材让我们巩固下函数。4,对Js的作用域有点迷糊。5,使用不同的引用来调用同一个函数时,this 指针是不是这个引用所属的对象?

2016-08-22 23:04:37 205

原创 使用函数实现一个登陆流程伪代码

新建一个MFC对话框,在全局定义验证码,检测验证码的长度,使用方法来验证验证码是否错误,并且刷新服务器的数据。验证码是动态的,但要由客户端识别,并返回正确数值才能正常验证。这是一个流程问题,如果用js,那就是在客户端处验证,基本等于没有一样!!!最好是服务器生成,客户端验证,服务器确认,正常浏览。

2016-08-22 22:32:01 2928

原创 js函数

一般认为函数指具有返回值的子程序,过程指没有返回值的子程序。C++中把所有子程序成为函数,其实那些返回值为void的 函数在语义上也是过程。函数与过程的区别更多是语义上的区别,而不是语法的区别。语言纯化论者认为一个函数应该只有一个返回值,这和数学函数一样。即函数只接受输入(参数),通过参数运算返回结果 。 除此之外的效果被称为函数的副作用,比如修改全局变量。function

2016-08-22 21:57:23 173

原创 c++

1.写一个函数,判断某一个四位数是不是玫瑰花数(所谓玫瑰花数即该四位数各位数字的四次方和恰好等于该数本身,如:1634=14+64+34+44)。在主函数中从键盘任意输入一个四位数,调用该函数,判断该数是否为玫瑰花数,若是则输出“yes”,否则输出“no”。#includeint fun(int i){if(pow(i%10,4)+pow(i%100/10,4)+pow(i%1000/

2016-08-15 15:06:25 948

转载 js实现A*寻路算法

1. 从起点A开始, 把它作为待处理的方格存入一个"开启列表", 开启列表就是一个等待检查方格的列表.2. 寻找起点A周围可以到达的方格, 将它们放入"开启列表", 并设置它们的"父方格"为A.3. 从"开启列表"中删除起点 A, 并将起点 A 加入"关闭列表", "关闭列表"中存放的都是不需要再次检查的方格它们通过公式 F=G+H 来计算F = G + H

2016-08-05 11:49:35 347

空空如也

空空如也

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

TA关注的人

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