- 博客(127)
- 资源 (3)
- 收藏
- 关注
原创 C#子类重载方法
class Parent{ public virtual void A() { Console.WriteLine("Parent.A()"); }}class Child:Parent //子类一继承父类{ public override void A() //覆写(override)父类虚函数,主要实现多态 { ...
2018-07-25 22:26:01
1132
原创 对于Quaternion的初步理解
Quaternion(四元数),在unity中用于角度的旋转。Euler函数:返回一个旋转角度,绕z轴旋转z度,绕x轴旋转x度,绕y轴旋转y度(像这样的顺序)。Quaternion.Euler(new Vector3(0,90,0))表示绕y轴旋转90度 Quaternion.Euler(new Vector3(90,90,90))表示绕xyz轴各旋转90度 1.我们让transform的y轴旋转...
2018-06-28 23:36:48
3610
原创 unity--Texture2D
1.FilterMode 过滤模式PointPoint filtering - texture pixels become blocky up close.点过滤-纹理像素变成块状。BilinearBilinear filtering - texture samples are averaged.双线性过滤 -纹理采样平均。TrilinearTrilinear filtering - textur...
2018-05-16 22:33:36
1304
转载 C#--队列(Queue)
Queue 类的方法和属性下表列出了 Queue 类的一些常用的 属性:属性描述Count获取 Queue 中包含的元素个数。下表列出了 Queue 类的一些常用的 方法:序号方法名 & 描述1public virtual void Clear(); 从 Queue 中移除所有的元素。2public virtual bool Contains( object obj ); 判断某个元素是否...
2018-05-16 20:41:24
1270
原创 泛型类语法class A<T> where T:new()
这是类型参数约束,where表名了对类型变量T的约束关系。where T:A 表示类型变量是继承于A的,或者是A本省。where T: new()指明了创建T的实例应该使用的构造函数。 .NET支持的类型参数约束有以下五种: where T: struct T必须是一个结构类型 where T: class ...
2018-05-16 20:32:32
2886
原创 javascript-类定义-随
/***定义类***/var Class = function(){ var _self = this;//把本身引用赋值到一变量上 var _Field = "这是私有字段"; //私有字段 var privateMethod = function(){ //私有方法 alert(_self.Property); //调用属性 } t
2016-07-03 16:08:54
4250
原创 coco2dx-关于精灵的简单碰撞检测-随心
1.两个精灵在同一个父类上,代码如下CCRect r1 = spr1->boundingBox();CCRect r2 = spr2->boundingBox(); // 判断是否有交叉if (r1.intersectsRect(r2)) {CCLOG("---%s---", "相碰撞了");}2.两个精灵不在同一个父类上,代码如下void collisionDetect
2015-01-01 19:39:41
7014
转载 cocos2dx之onEnter,onExit
在创建一个layer时,会自动调用到layer中的onEnter,在退出当前的layer时,会调用到onExit,在CCLayer中,有四个成员方法: void onExitTransitionDidStart();//2,创建完layer的时候调用,也就是1调用完之后调用 void onEnter();//1,创建时调用 void onExit();//3,退出当前la
2014-12-05 00:00:09
6350
转载 c++ list, vector, map, set 区别与用法比较
List封装了链表,Vector封装了数组, list和vector得最主要的区别在于vector使用连续内存存储的,他支持[]运算符,而list是以链表形式实现的,不支持[]。Vector对于随机访问的速度很快,但是对于插入尤其是在头部插入元素速度很慢,在尾部插入速度很快。List对于随机访问速度慢得多,因为可能要遍历整个链表才能做到,但是对于插入就快的多了,不需要拷贝和移动数据,只需要
2014-12-04 23:50:39
14239
1
原创 cocos2dx3.0-获取图片的某个像素值
//一下是获取某个像素的透明值,以此类推可以回去r,g,b的值Image *myImage = new Image();myImage->initWithImageFile("test.png");unsigned char *data = myImage->getData(); //这里就是图片数据了//根据刚刚计算的相对坐标值,计算出触摸点代表了哪一个像素点 然后再提取出该
2014-12-03 23:47:01
12211
原创 cocos2dx3.0-编译安卓的一些问题
如何Android.mk自己去寻找Classes下的.cpp文件LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_CPPFLAGS += -fexceptionsLOCAL_MODULE := cocos2dcpp_sharedLOCAL_MODULE_FILENAME := libcocos2dcppdefine
2014-12-03 23:35:30
5226
原创 cocos2dx-GLProgram结合RenderTexture在安卓手机不能用
glProgram1 = new CCGLProgram(); glProgram1->retain(); glProgram1->initWithVertexShaderFilename("test.vsh", "test.fsh"); glProgram1->addAttribute(kCCAttributeNameTexCoord, kCCVertexAttrib_TexCoords)
2014-12-03 23:27:08
6800
原创 关于cocos2dx RenderTexture的newImage为空
Sprite* spr1 = Sprite::create("spr1.png"); spr1->retain();//在3.0此处必须写上这个 auto render = RenderTexture::create(visibleSize.width, visibleSize.height, Texture2D::PixelFormat::RGBA8888); render-
2014-12-03 23:16:21
10285
转载 cocos2dx Sprite setBlendFunc 使用颜色混合:加算,减算
CCSprite有一个ccBlendFunc类型的blendFunc_结构体成员,可以用来设置描绘时的颜色混合方案。ccBlendFunc包含了一个src和一个dst,分别表示目标和源的运算因子。如果我们对一个Sprite使用setBlendFunc方法,如:CCSprite::setBlendFunc(ccBlendFunc blendFunc);会以这个Sprite作为源,Spri
2014-12-03 23:08:43
8130
转载 opengl之vsh、fsh简易介绍+cocos2dx 3.0 shader 变灰
opengl之vsh、fsh简易介绍+cocos2dx 3.0 shader 变灰认识着色器 理解OpenGL渲染管线,对于学习OpenGL非常重要。下面是OpenGL渲染管线的示意图:(图中淡蓝色区域是可以编程的阶段)此图是从wiki中拿过来的,OpenGL的渲染管线主要包括:准备顶点数据(通过VBO、VAO和Vertex attribute来传递数据给Ope
2014-12-01 22:51:12
7547
1
转载 cocos2dx进阶学习之CCDirector
继承关系CCDirecotor -> CCObject, TypeInfo处理主窗口消息,管理何时、何种方式执行场景。经常被翻译成导演,负责管理整个游戏的进程推动和周边支持。成员inline CCScene* getRunningScene(void) { return m_pRunningScene; }获取当前运行的场景,一个时刻只有一个场景在运行
2014-12-01 17:35:24
4767
转载 cocos2d-x像素级触摸处理
cocos2d-x像素级触摸处理分类: Cocos2d-x引擎 2014-07-20 16:58 1128人阅读 评论(6)收藏 举报 cocos2d-x像素CCImage触摸透明最近研究了一下像素级的触摸处理,有时候我们用一个不规则的图形作为一个按钮,这个不规则的图形是一张矩形的png图片,很可能图片的实际有效的显示内容只占整个png图片的很小一部分,剩下
2014-11-30 22:55:39
5362
转载 cocos2dx中关于场景的管理
runWithScene(CCScene* scene):启动游戏,并运行scene 场景。这个方法在主程序启动时第一次启动主场景时调用。replaceScene(CCScene* scene):直接使用传入的scene 替换当前场景来切换画面,当前场景将被释放。这是切换场景时最常用的方法。pushScene(CCScene* scene):在不释放旧场景内存的情况
2014-11-10 15:58:08
4714
原创 C++宏定义
今天阅读代码的时候,在一个宏定义语句中,发现了个之前未曾见过的编译器预定义宏:“__VA_ARGS__”。当时,从代码语句中推测它代表宏参数:“…”(本文称之为省略号),依稀记得printf函数声明中有使用这个省略号,大概的意思是表示可变化的参数,但未深入了解。
2014-11-10 15:55:56
4660
转载 C++ 中函数后面跟const是什么意思
问题:c++:void display( ) const 中的const是什么意思?简答:意思是除了表明了mutable的成员变量以外该类的其他的成员变量在这个函数内一律不能修改。详细:加const表明,该函数只能是只读的,不能修改私有变量的值。加强安全性。给隐含的this指针加const,表示这个this指向的东西是const的,也就是说这个函数中无法改动数据成员了。
2014-11-10 15:05:02
5698
转载 C++11 FAQ中文版:std::function 和 std::bind
三2Year 2011陈 良乔C++11 FAQstd::function 和 std::bind标准库函数bind()和function()定义于头文件中(该头文件还包括许多其他函数对象),用于处理函数及函数参数。bind()接受一个函数(或者函数对象,或者任何你可以通过”(…)”符号调用的事物),生成一个其有某一个或多个函数参数被“绑定”或重新组织的函数对象。(译注:顾名思义,
2014-11-10 15:03:32
4571
转载 C++函数指针的定义
typedef void (*PFT) ( char ,int );void bar(char ch, int i){ cout<<"bar "<<ch<<' '<<i<<endl; return ;}PFT pft;pft = bar;pft('e',91);
2014-11-06 21:22:08
6971
转载 C/C++
C/C++之回调函数 今天讨论下C/C++中的回调函数。 在理解“回调函数”之前,首先讨论下函数指针的概念。函数指针(1)概念:指针是一个变量,是用来指向内存地址的。一个程序运行时,所有和运行相关的物件都是需要加载到内存中,这就决定了程序运行时的任何物件都可以用指针来指向它。函数是存放在内存代码区域内的,它们同样有地址,因此同样可以用指针来存取函数,把这种指向函
2014-11-05 18:20:34
970
转载 Android的Proxy/Delegate Application框架
有的时候,为了实现一些特殊需求,如界面换肤、插件化等,我们希望改变应用的运行环境(surrounding)。例如,我们希望某个应用在运行时,所有Class(包括自定义Application,下面假设它叫MyApplication)都被一个自定义的ClassLoader加载。要实现这个需求,需要在MyApplication被加载之前,先替换掉API层的默认ClassLoader,否则MyAppl
2014-10-06 15:57:49
1368
转载 正则表达式全集
表达式全集字符描述\将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,“n”匹配字符“n”。“\n”匹配一个换行符。串行“\\”匹配“\”而“\(”则匹配“(”。^匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。$匹配输入字
2014-07-09 09:37:28
746
原创 C - char字符串操作
strncpy_schar copy_1[MAX_FILE_SIZE]; char * c = new char[MAX_FILE_SIZE]; c = "h = com.kk\nz = 1234567"; rsize_t len = 3; strncpy_s(copy_1, _countof(copy_1), c, strlen(c)); printf("%s\n",copy_
2014-07-08 20:11:48
4316
转载 C++读写二进制文件
摘要:使用C++读写二进制文件,在开发中操作的比较频繁,今天有幸找到一篇文章,遂进行了一些试验,并进行了部分的总结。 使用C++操作文件,是研发过程中比较频繁的,因此进行必要的总结和封装还是十分有用的。今天在网上找到一篇,遂进行了部分的试验,以记之,备后用。 本文读写文件均使用文件流进行操作,主要使用的类是ifstream, ofstream, 使用时,请务必包含文件fstre
2014-07-08 18:05:42
1195
原创 C读取文件流
char * szBuf; jbyteArray result=NULL; FILE *fp = fopen( "file:///android_asset/illl", "r" ); if( fp != NULL ) { //获取文件大小-------------------start long int save_pos; long size_of_file; /* S
2014-07-08 16:24:16
2177
转载 Cocos2d-x CCNotificationCenter 通知中心
相信接触过ios开发的人来说对NSNotificationCenter都不陌生。而在cocos2d-x中也参照这个类,提供了CCNotificationCenter这个类,用作通知中心。那么NotificationCenter的介绍请看这篇文章:点击打开链接而我主要是使用NotificationCenter 进行不同类之间的参数传递。(譬如说在两个layer之间进行参数的传递)下面
2014-04-11 16:55:06
8834
原创 ps制作水晶按钮_1-随心
1.首先创建一个圆角矩形的按钮2.选取该矩形的选区,后选择菜单选择->修改->收缩,值写43.选择渐变工具,选择线性透明渐变4.建立两个图层,分别在上下选取渐变,然后再设置其两个图层的透明度,隐藏圆角矩形的图案即可。可以用颜色叠加改变按钮的颜色。效果如下:
2014-03-29 20:34:04
881
转载 使用 random_shuffle() 算法随机化序列元素
假设你需要指定范围内的随机数,传统的方法是使用ANSI C的函数random(),然后格式化结果以便结果是落在指定的范围内。但是,使用这个方法至少有两个缺点。 首先,做格式化时,结果常常是扭曲的,所以得不到正确的随机数(如某些数的出现频率要高于其它数) 其次,random()只支持整型数;不能用它来产生随机字符,浮点数,字符串或数据库中的记录。 对于以上的两个问题,C
2014-03-18 15:17:20
1352
转载 retain和release倒底怎么玩?
retain和release倒底怎么玩? 呼呼,好久没有发布教程了(小若:难得清静了,你为毛又出来吓人= =),其实最近木头我在准备出版书籍的事情。但是貌似不太顺利,果然我还是积累不够,写书的过程压力好大,感觉写不出有趣的文字出来(小若:嗷、、、)。果然还是在博客写自由一些?嘿嘿~最近以及最不是很近(小若:书里一定不能出现这些错误的语句,所以你才写不出来吧= =),不少朋友对ret
2014-03-17 18:01:10
715
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人