标签:Fantasy
细节纹理 (Detail texture) 是一种细小精致的纹理图案,靠近表面时会渐显。比如,木纹、石头的瑕疵或是地形细节。它们明确用于漫反射细节着色器 (Diffuse Detail shader)当中。细节纹理在各个方向必须具有连续性。颜色值为 0-127 时,应用对象的颜色变深;颜色值为 12...
上两篇我们详细讲解了内存自动释放,接下来这篇写写自动对象的释放时机。一个对象调用autorelease()函数后就被加入自动释放池,那么它什么时候被释放呢? 我从前面说过的游戏主循环开始跟进: int CCApplication::run(){ if (applicationDidFinis...
这个系列以本人游戏开发的实例来详细讲解Cocos2d-x,本篇阐述内存的自动释放池。因为在上一篇我们学习了引用计数和自动释放的大概流程,其中略过了自动释放池,这里简单述说。 前面提到CCObject的autorelease函数 CCObject* CCObject::autorelease(voi...
这个系列以本人游戏开发的实例来详细讲解Cocos2d-x,本篇阐述内存的自动释放。 其实内存自动回收不是什么新鲜的概念,Java的垃圾回收,Objective-C的自动回收等都是类似的概念。 cocos2d-x是C++的实现,那么其内存管理也是遵循C++的 规则,谁创建的谁来维...
以自己的实际演练,详细解说Cocos2d-x引擎的个模块,今天介绍游戏主循环。 终于抽时间把这个游戏写完了。由于没有自拍神器,所以把它移植到了Android上,用我的戴妃跑的很欢啊。自此,我算是完成了一个功能比较完善的游戏了。 麻雀虽小,五脏俱全,该有的都有,不该有的估计也有,嘿嘿。这几天把写这...
通过自己的实际演练,详细解说Cocos2d-x引擎的个模块。今天讲解无限滚动地图。一般打飞机类游戏都是飞机不动,背景图滚动,造成飞机在天空飞的效果。MoonWarriors的背景有两层,一个远景天空,一个近景漂浮物,这两层背景滚动速度不一样,形成一种纵深感。 如图: 图有点模糊,实际效果跟html...
本系列通过自己的实际演练,详细解说Cocos2d-x引擎的个模块。上一篇文章已经实现了MoonWarriors开始菜单的大部分元素,还差一个运动的飞船和一个点击newGame的特效和音效。 1.飞船 // ships CCTexture2D *textCache = CCTextureCac...
本系列通过自己的实际演练,详细解说Cocos2d-x引擎的个模块。 打开html5的工程,我用的是WebStorm。然后看到MoonWarriors的源码,如下: 源码都在src目录下,config目录下是一下配置信息,比如游戏状态,分数,命条数等。接下来就是游戏js代码了。看名字就大致知...
这个世界里,我们常常看到有两种胜利:一举成功和绝地反击。作为围观的酱油众,到底还是喜欢后者,因为够刺激、倍儿爽! 近日,莉莉丝以一个小彩蛋取得uCool起诉案的关键性证据(后者为山寨版《Heroes Charge》开发商),不费吹灰之力即杀得对手丢盔卸甲,这事情一时成为手游界的热议话题。...
本文基于Cocos2d-x 3.2版本,其他版本API可能会有所变化,主要讲对UI树的理解。Cocos2d-x 3.x 引擎的UI树系统首先得普及一下Cocos2d-x的基础概念,Cocos2d-x的游戏世界一般是由一个又一个的场景(Sence)组成的,比如登录是一个场景,战斗是一个场景;然后场景之...
在基础学习教程中,内存管理机制之前我们有过介绍。本文再次详细解说内存管理问题。首先介绍 Cocos2d-x 3.2 中内存管理的作用,以及各个作用的应用。借由通俗易懂的解释来了解内存管理的过程。其次通过源码解析介绍其内部的实现原理。加深理解,从而在有需要的时候绕开引擎建立自己的内存管理机制。一、Co...
这个系列我们主要学习Cocos2d-x Lua,总结Lua开发过程中所涉及的知识点,以及在开发过程中如何使用Cocos Code IDE。今天来聊两个话题--全局变量和非全局环境。正如大家目前心里所感受到的,全局变量的内容很简单,而非全局环境的内容就稍微要锻炼一下脑细胞了。1. 全局变量的原形在Lu...
这个系列我们主要学习Cocos2d-x Lua,总结Lua开发过程中所涉及的知识点,以及在开发过程中如何使用Cocos Code IDE。本文主要讲解如何编写Lua的模块与module函数的使用。1.编写一个简单的模块Lua的模块是什么东西呢?通常我们可以理解为是一个table,这个table里有一...
这个系列我们主要学习Cocos2d-x Lua,总结Lua开发过程中所涉及的知识点,以及在开发过程中如何使用Cocos Code IDE。这一篇讲解初学Lua最容易换乱的两种函数调用方式:调用函数时用点号还是用冒号。本文是面向对象预热篇,讲解函数两种调用方式的区别,初学者比较容易被坑。1.初学者最易...
这个系列我们主要学习Cocos2d-x Lua,总结Lua开发过程中所涉及的知识点,以及在开发过程中如何使用Cocos Code IDE。这一篇介绍Lua中的面向对象编程,主要讲解类和继承。写在前面: 终于来了,在Lua中的面向对象编程,相信目前学习Lua的大部分人都是为了开发手机网游吧...
这个系列我们主要学习Cocos2d-x Lua,总结Lua开发过程中所涉及的知识点,以及在开发过程中如何使用Cocos Code IDE。这一篇讲解Lua面向对象编程中的多重继承和私密性。包括如何在多个类中查找一个字段、创建继承多个类的子类,以及类的私密性。1. 多重继承之在多个类中查找一个字段其实...
这个系列我们主要学习Cocos2d-x Lua,总结Lua开发过程中所涉及的知识点,以及在开发过程中如何使用Cocos Code IDE。这一篇讲解实现类的原理。 我们知道,Lua中没有类的概念,但我们可以利用Lua本身的语言特性来实现类。下文将详细的解释在Lua中实现类的原理,涉及到的...
这个系列我们主要学习Cocos2d-x Lua,总结Lua开发过程中所涉及的知识点,以及在开发过程中如何使用Cocos Code IDE。这一篇讲解引用table的问题。1.自动内存管理的缺陷我们都知道,Lua是具备自动内存管理的,好吧,也许有些朋友不知道。我们只管创建对象,无须删除对象(当然,对于...
这个系列我们主要学习Cocos2d-x Lua,总结Lua开发过程中所涉及的知识点,以及在开发过程中如何使用Cocos Code IDE。这一篇对回调函数做一个小结。 起因是最近做一个小项目,是用Lua写的,中间用到了很多的回调,基本Cocos中的那几种常用回调都用到了,本文就针对所用到...