自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (5)
  • 收藏
  • 关注

原创 OpenGL实践4之索引绘制

OpenGL实践4之索引绘制DionysosLai([email protected])引言:       之前我们绘图时,都是使用glDrawArrays函数,采用的是“序列绘图”(ordered draws)方式。今天,我们介绍另外一种绘图方式:“索引绘图”(index draws)。       “序列绘图”,顾名思义就是将顶点一个个按顺序排列存放在顶点缓存中。绘图时,我们按照

2016-04-06 00:08:11 2117

原创 OpenGL实践3之第一个着色器程序2

OpenGL实践3之第一个着色器程序2DionysosLai ([email protected])引言:       上一章,我们讲了如何在OpenGL中创建一个着色器程序,但限于篇幅原因,并没有讲解如何别写一个着色器程序。本章我们将编写分别编写一个顶点着色器和片段着色器程序,并使用在上一章中学到的方法,成功在OpenGL上运行。 准备工作:       目前主流的Shad

2016-03-28 00:22:07 1535

原创 OpenGL实践3之第一个着色器程序(1)

OpenGL实践3之第一个着色器程序(1)DionysosLai([email protected])引言:       本章,我们将引入着色器概念,由于内容比较多,因此分成两个部分讲解,第一个部分讲解如何创建、生成一个着色器程序。第二部分,讲解着色器基本语法并编写一个简单着色器程序。 准备工作:现代Opengl渲染管线严重依赖着色器处理传入的数据。如果不使用着色器,那么Op

2016-03-20 22:07:35 2704

原创 OpenGL实践2之第一个三角形

OpenGL实践2之第一个三角形DionysosLai20160223引言:        本章,我们将介绍 GLEW 、顶点数组对象(vertex array objects VAOs)和顶点缓存对象(vertex buffer objects VBOs) 相关知识。 准备工作GLEW:        随着OpenGL的更新,OpenGL出现了很多新的高级特性,同时很

2016-03-15 00:25:55 1089

原创 OpenGL实践之第一个窗口

OpenGL 经过多年的发展,到目前为止已经发生了全新的变化,从原本已函数为中心方法,转变成已桌上技术为中心。引用《OpenGL 权威指南》 第八版中一段话:“本书的内容是颠覆性的!对于那些已经阅读过本书以前版本的读者来所,这一版完全根据OpenGL应用程序开发的最新方法和技术进行了重新。本书将经典红宝书的以函数为中心的方法,与《OpenGL着色语言》(通常也被称作”橘皮书)一书中的着色技术进行了融合。”

2016-03-07 22:41:20 941

原创 lua中函数为什么有时候可以省略”()”?

这里,是由于lua函数在两种情况下,可以省略’()’:函数中参数是一个单独的字符串或者表。因此,myfunc{a = 1, b = 2},是可以正常运行。所以,有时看到一个函数省略了’()’,就应该反应,传递的参数是单个字符串或者单个表。 在lua中,这些美妙语法特性(syntacic sugar),根本原因是由于lua本身是一个数据描述语言。

2015-08-25 11:47:50 2933 1

原创 字符串分割问题详解

前段时间,有个需求,要求对一串字符串进行单个字符分割。比如“今天是情人节!”,分割结果是“今”、“天”、“是”、“是”、“情”、“人”、“节”、“!”。由于字符串中,包含了中英文,特殊字符等,而每个字符并不是统一字节编码,比方说英文是单个字节编码,中文是二个字节编码了。因此,有必要判断是那种编码方式。

2015-08-19 18:21:41 1321

原创 关于”#”操作符在lua中table的运用

首先,先看一个“#”运用的例子:   tags = {1, 2, 3}   tags[#tags+1] = 4   这里表示在表tags最后,插入元素4,因此表tags元素个数将会为4。   在lua中“#”表示返回表长度,类似c+中的getlen()函数,不过,对于“#”操作,有几点需要注意。

2015-03-26 18:00:46 6834

原创 项目总结之优化游戏包大小

很多时候,渠道和发行都会向开发人员提出游戏包要压缩到XXMB一下的时候,对方的潜台词并不是让开发人员降低游戏质量来完成这个目标,而不是一定要保证质量的前提下,把包体压缩到极限范围。如果做不到对方要求,相信游戏的发布只能嘿嘿了。

2015-03-02 20:11:22 4062

原创 浅析cocos2d-x 2.x到3.x事件侦听设计变化原因之一

对于事件侦听的设计,cocos2d-x从2.x到3.x发生了根本性的变化,一直以来对此,只是单纯的使用考虑如何构建自己的游戏代码,并未对其二者设计孰优孰劣进行探究。只是前段时间在做一个新游戏时,关于2.x的触摸事件发现了一个设计不人性化问题,本想向cocos2dx官网反应,但测试3.x时,并未发现这个问题。对此,本文细述这个问题,分析二者设计的不同,同时希望抛砖引玉。

2015-03-02 11:25:14 1916

原创 文件操作2之plist文件操作

Plist文件属于一种比较常见文件格式,通常用来存储用户设置,也可以用于存储捆绑信息,原先是用在Mac中,后来推广到其他系统中。概况来说,Plist文件是以.plist格式结尾,xml格式的一种文件,读写方式比较基本以’键’= ‘值’方式对应。 本文系统的介绍基于cocos2dx-2.3版本的plist文件读写细节,希望通过本文,对其他plist文件能够达到自由读取目的。

2015-01-21 18:31:40 1515

原创 关于PhysicEditor功能添加

在使用box2d时,有很大一困难是如何获取物理对象的几何结构,通常一个稍微复杂一点的物理对象,一般就不能使用简单的几何构成。如果由我们手动调数据,工作量非常大,因此很需要一个工具可以帮助我们快速获取物理对象结构。PhysicEditor,就是一款获取物理对象的工具。

2015-01-13 20:29:05 876

原创 计算几何文档2

去年4月份,写了第一篇计算几何文档http://blog.csdn.net/dionysos_lai/article/details/24418697,后来一直没能继续写第二篇文档,一方面是由于一些代码没有经过实际项目验证,不敢公布。现在,2014年的项目完结了,整体代码也经过了数个游戏的验证测试,基本没问题,因此一次性将代码全部提交到gitHup上,欢迎大家下载,地址如下:https://github.com/DionysosLai/Geometry

2015-01-07 19:53:47 801

原创 使用ant编译之签名问题

使用ant编译,可以很大提高项目开发效率。目前,coco2dx官方所提倡的提高几十倍的编译速度,其实就是使用了ant技术。原理提前将引擎库编译成一个so文件,游戏编译时,只需要编译自己的代码即可,而不需要同时编译引擎代码。相比自己的代码与引擎代码量,二者相差了几十倍,因此速度会提高很多。同时另一方面,很多问题,在Eclipse上只会报错,而不能指出具体位置(相信,大家在写mk文件时,就遇到这个问题)。然而,使用了ant编译,问题具体位置将完完全全的显示出来。 当然使用ant编译也有不好的地

2015-01-06 19:41:53 2494

原创 项目总结之游戏前黑

问题引入: 项目后期,之前没关注的几个细节一个一个被提到案前,其中一个就是关于游戏前黑问题。 问题解决: 解决游戏前黑问题,有两个问题必须要注意一下:

2015-01-04 20:54:03 1024

原创 项目总结之音效播放问题

Cocos2dx使用的是一个比较简单、粗糙的语音系统,从语音系统名字SimpleAudioEngine,即可看出来这个系统本身没有多大的复杂难度,因此使用音效系统时,会有一些比较隐晦的细节,需要我们在开发时特别注意。

2014-12-30 20:01:12 2545

原创 项目总结之触摸问题分析

在游戏开发领域,有几个问题,一定要提前进行真机测试,越早进行真机测试,后期修改代码越容易。一个问题,就是触摸问题。 为什么触摸问题要尽早进行真机测试呢?这是由于,只有这真机运行情况下,才能实现多点触摸问题(想想多个手指在你的游戏上滑动,各种各样的bug都会一一呈现出来)。同时,有些特定的触摸响应,比如touchCanclled事件响应,也只有在真机情况下才能出现。至于如何重现touchCancle事件引起的bug,待会儿进行分析。

2014-12-24 20:29:46 1166

原创 项目总结之截屏细节考虑

2014项目总算告一段落,这个产品顺顺利利从开始到最后的上市,圆满成功。借着项目总结,回顾自己做的几个游戏,将一些细节问题归纳。第一篇,就以目前正在做的的新游戏《圣诞节》开篇,讲讲游戏截屏问题。 对于截屏,本身技术,并不是很复杂,一般有两种方法,一种是使用Opengl像素取点方式;另一种是使用RenderTexture纹理方法,详细内容,可以参考,之前写的一篇文章:http://blog.csdn.net/dionysos_lai/article/details/23467209。

2014-12-23 20:17:14 1282

原创 文《关于c++与java中文乱码问题分析与解决》中一个bug分析

在前几篇一博客《关于c++与java中文乱码问题分析与解决》,地址如下:http://blog.csdn.net/dionysos_lai/article/details/38389765。文中详细介绍了c++与java数据传递时,为何会出现中文乱码的原因,并提出了适当的解决方法。方法如下:

2014-10-21 20:07:23 1476

原创 RapidJson 解析(1)

Json 是一种轻量级数据交换格式,具有易于人阅读和编写,同时也易于机器解析和生成。相较于XML,json更小、读写更快、更易解析。另一方面,Rapidjson作为json的升级版,在效率方面,具有更好的优势。Json语法规则Rapdijson解析数据解析数据读取、解析成json格式.......

2014-09-23 18:02:08 20759

原创 Cocos2dx 流星效果实现

对于用来衬托唯美的意境,与其天空中,点点一闪而过的流星,莫不是说最适合了。对于痴情儿女,私定终身就在这一刻良辰美景中了。今天,我等糙人就来“糟蹋”这一个美好的事物。

2014-09-05 17:12:08 8580

原创 Cocos2dx 实现擦除即橡皮擦效果的实现

橡皮擦具体功能要求:1. 实现擦除效果:具体要求是点击位置,拖动轨迹路上,均可以擦除。在快速拖动过程中,不能出现断层和锯齿现象。2. 擦除的形状,最好可以自定义。默认可以提供正方形、圆形两种,最好能提供自定义图片形状。3. 判断图片是否擦除完毕。4. 如果擦除形状过小,那么难免在擦除过程中,会遗留一些细小的、可能难以注意的残留点。在擦除过程中,要求可以自动擦除这些残留点。

2014-09-03 17:28:56 9248 2

原创 关于c++与java中文乱码问题分析与解决

问题分析: 之所以会出现中文乱码问题,归根结底在于中文的编码与英文的编码方式存在差异。 在java内部是使用16bit的unicode编码(即utf-16)来表示字符串,无论英文还是中文都是2字节。 C/C++使用的是原始数据,ascii是一个字节,中文一般是GB2312编码,用2个字节表示一个汉字。 Jni内部是使用utf-8编码表示字符串的,utf-8是扁长的unicode,一般ascii是1字节,中文是3字节。

2014-08-05 19:47:48 6215

原创 Cocos2dx之Box2D详解 设置物体回复力

Cocos2dx之Box2D详解 设置物体回复力.密度和摩擦力比较容易理解,因为本身这两个属性不会跟其他物体有太多关联,而回复力则关系到物体之间的相互联系了,这是由于力的作用是相互的。同时因为力的作用是相互原理,作用力即等于反作用力。另一方面,根据测试结果可以知道,两个物体相碰,如果A物体的回复力为a,B物体的回复力为b。若二者的回复力不一样,则作用在二者身上的回复力为max(a, b),即使双方中有一方的回复力为0,这个结论依然成立。

2014-07-29 00:41:52 2332

原创 Cocos2dx 粒子销毁问题

Cocos2dx 粒子销毁问题

2014-07-04 18:08:46 3335 1

原创 Opengl研究4.0 走样与反走样

走样与反走样。 走样现象:1. 阶梯状的图形边界2. 图形细节失真3. 狭小图形的遗失与动态图形的闪烁 反走样方法:1. 提高分辨率2. 非加权区域采样方法3. 权区域采用方法

2014-06-26 00:05:05 3342

原创 OpenGL研究3.0 多边形区域填充

所谓多边形区域填充,就是将多边形内部区域,全部已同样色块填充。注意:这里讨论的多边形是简单多边形(即不考虑诸如五角星这种相交多边形)。简单多边形,分为凹多边形和凸多边形。 多边形区域填充有以下几种方法:1. 逐点扫描方法2. 扫描线算法

2014-06-23 00:32:21 5078 1

原创 OpenGL研究2.0 圆计算方法

在游戏中,经常有些地方涉及到一些圆的轨迹计算,比方一些转轴类的游戏,人物一般在角色转轴上面运动。这时,我们就要时刻计算角色的位置。分析一下,圆位置的一般算法。

2014-06-18 23:43:22 1609

原创 OpenGL1.0 线段

画点方法分析,比较各种算法优缺点。

2014-06-17 00:56:05 1368

原创 coco2d-x 基于视口的地图设计

cocos2d-x 基于视口的地图设计

2014-06-14 22:38:37 1678

原创 圆形与矩形切换特效

圆形与矩形切换特效DionysosLai2014-5-28         首先,讲下我做个特效的思路来源:http://www.itjhwd.com/cxy-qizi/,在篇文章的结尾会有读者点评,当我们鼠标移到点评内容上时,就会出现一个特效动画,当时就是这个特效深深的打动了我。(大家不要过于关注文章内容哦,不过文章写得挺好的,赞个)。         分析我的制作思路来源。  

2014-05-28 18:05:17 1636

原创 Box2D详解2 碰撞筛选

Box2D详解中碰撞筛选 涉及类别标志位(categoryBits)、遮罩标志位(maskBits)、分组索引(groupIndex)等知识点。

2014-05-20 16:10:03 3636 1

原创 游戏效率优化(2) 使用const关键字

使用const提示程序运行效率

2014-05-15 16:23:03 1487

原创 Cocos2dx特效 水纹特效1

Cocos2dx特效水纹特效1DionysosLai 2014-5-15       判断一个小游戏是否能够很好的吸引人,除了游戏本身的核心玩法吸引人之外。很多时候,是要靠一些小细节来体现。比方说一个打枪类游戏,玩家随便朝四周射击,子弹打到墙壁上面。玩家的随意操作,其实都包含着一种期望的心里。如果游戏能给出子弹打到墙壁的效果,比方说音效、弹痕等,玩家的心里得到满足,自然而然就对游戏的评价更

2014-05-15 15:34:55 4265 1

原创 cocos2d之Box2D详解 删除物理世界对象

cocos2d之Box2D详解 删除物理世界对象DionysosLai 2014-5-8         物理世界对象,有创造,就有销毁。         通常,我们在更新函数中会这样写到:

2014-05-08 19:59:56 2548

原创 游戏效率优化(1) 前置递增与后置递增区别

游戏效率优化(1)前置递增与后置递增区别DionysosLai 2014-5-8       现在游戏硬件配置已经比以前有了很大的提升,对于以前很多效率优化方面内容,可以不用做到不用以前那么锱铢必较了。不过,作为一名从电子转行过来的人,大学四年被小内存搞怕的人,还是那么的喜欢优化自己的代码,提升效率。         今天,我们谈论的一个问题是大家都比较容易忽略的问题,而这个问题,肯定

2014-05-08 17:12:56 1557

原创 cocos2d之Box2D详解 鼠标关节实现

cocos2d之Box2D详解 鼠标关节实现DionysosLai2014-5-7         我们经常要移动物理世界中的某个物体,比方说石头、木块等。如果我们直接改变这些物体的位置,让这些物体跟随我们手指移动,即使这样是可行的,却违反了物理世界的基本规则。这个世界没有“上帝之手”。         换个思路,如果我们要移动物体,那是否说,就是我们要在物体上施加一个某个方向的无穷大

2014-05-07 17:47:16 2150

原创 如何在自定义文件下创建cocos2d-x项目

如何在自定义文件下创建cocos2d-x项目DionysosLai 2014-5-4首先,感谢http://www.cnblogs.com/skynet/p/3428369.html这篇文章的作者,下面的文章是基于他的文章,修改的,为的是更好的让别人上手。本来是用在公司内部分享,现在将文章分享出来,希望能对其他人有作用。    再次感谢原作者。目前使用create_project.

2014-05-07 12:23:46 1311 1

原创 计算几何文档(1)

计算几何文档DionysosLai2014-4-24         计算几何主要研究解决几何问题的算法。在现代工程和数学领域,计算几何在图形学、机器人技术、超大规模集成电路设计和统计等诸多领域有着十分重要的应用。同样在游戏领域,计算几何对开发有特别的重要。在本文中,即接下来的文章,将对计算几何常用的基本算法做一个全面的介绍,希望对您了解并应用计算几何的知识解决问题起到帮助。同时,由于目前

2014-04-24 16:05:23 1341

原创 Cocos2d-x 中获取动画当前帧数

Cocos2d-x 中获取动画当前帧数DionysosLai 2014-4-17         在游戏中有很多动画,这些动画设计的好坏,对游戏的体验性影响很大。比方说敲打类动作,如果敲打动作比较多,我们在动作结束后,在处理敲击结果,游戏就给用户感觉很迟钝,有延迟现象。因此,这类动作,我们不能在动作结束后,再处理,而是应该在动作过程中进行处理。这里就考虑到了获取动画当前帧数问题。   

2014-04-17 17:51:49 4150

Ant编译环境配置.pdf

Ant编译环境配置 文章《使用ant编译之签名问题》的相关资料。主要讲一些Ant编译问题。

2015-01-06

libiconv库文件

iconv库是一个免费独立的编码转化库,支持多种平台,多种编码,而且其行为任何不受外部环境影响。

2014-08-05

Cocos2dx特效 水纹特效1

Cocos2dx特效 水纹特效1 文章:Cocos2dx特效 水纹特效1 对应资源

2014-05-19

水纹特效 文章:Cocos2dx特效 水纹特效1

Cocos2dx特效 水纹特效1 资源文件

2014-05-15

如何在自定义文件下创建cocos2d-x项目

配合文章“如何在自定义文件下创建cocos2d-x项目”使用。

2014-05-07

空空如也

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

TA关注的人

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