- 博客(61)
- 资源 (2)
- 收藏
- 关注
原创 Unity Spine 动画模糊问题解决办法
1、在项目开发中有时候我们会使用到美工给我们制作的Spine动画,在这里呢我就不先介绍如何使用Spine动画在unity,而是先写关于解决我在项目中遇到的问题,也就是Unity播放Spine动画模糊问题。2、对于解决图片已经动画模糊问题,我们一般都是选择查看我们的资源图片是否超过了我们的最大值以及图片的格式化是否为压缩,这些都有可能导致我们的图片模糊以至于播放发动画也会模糊。3、另一个
2015-03-18 11:06:55 6688
原创 Unity3D NGUI UIInput制作输入框屏蔽特殊字符(只允许输入正整数)
1、首先看看使用NGUI插件创建一个简单输入文本框效果:。2、这个简单的输入文本框需要一个label标签作为显示,一个背景图片以及输入UIInput脚本。我们看看unity的输入文本框的节点图我们需要如下操作创建上图的节点,接着创建量空的Gameobject节点如图所示并且重新命名为Input和Label名字。3、绑定对应的脚本,在Input节点上我们添加部件选择UIInput.c
2015-03-03 14:21:33 6193
转载 Unity3D架构系列之- FSM有限状态机设计(六)(总结篇)
由于最近一直赶项目进度,没时间写,昨晚终于项目终于完成了,空闲下来,做一个总结。在这一篇中主要是把前五章一起总结一下,以及通过举例演示如何使用?有限状态机在游戏中使用的地方非常多,比如我们界面之间的切换,角色的状态切换等等。所以非常值得大家去学习一下,接下来我们主要实现的功能,为了表达清楚,我通过图例给大家说明一下:给大家解析一下,程序运行首先进入主菜单,里面有
2015-02-13 13:48:45 3048
转载 Unity3D架构系列之FSM有限状态机设计(五)
在设计五中,我们把事件系统EventSystem实现一下。这个EventSystem类主要实现的是事件的注册,触发,以及分发Event消息的作用。提供接口对外使用的。在这里面为了功能扩展方便用了好多模板函数,方便大家调用。分发消息的时候,我们采用的是队列的方式,就是先进先出原则。首先要把消息事件注册一下,就是将其放到我们预先定义的表里面。函数代码如下所示:
2015-02-13 13:46:36 949
原创 Texturepackage工具免费申请正版密钥
1、Texturepackage工具是一个非常强大的图片纹理打包工具,在游戏开发中使用它可以很方便的为你节省资源。网上也有破解版的,大家可以搜索Texturepackage破解版window和Mac都有。2、申请的方法以及步骤如下:第一:打开此链接https://www.codeandweb.com/request-free-license会看到有如下的要求:要求你写你自己
2015-02-09 16:45:38 3600
转载 Unity3D架构系列之- FSM有限状态机设计(四)
接下来,我们继续我们的FSM有限状态机的设计,在设计三中我们实现了FSState这个类,我们继续实现FSEvent事件处理类。在FSEvent类里面我们声明了FiniteStateMachine里面定义的委托函数。代码如下: protected FiniteStateMachine.EnterState mEnterDelegate; protected Fin
2015-02-06 17:07:47 1034
转载 Unity3D架构系列之- FSM有限状态机设计(三)
在设计二中,我们实现了有限状态机管理类,接下来,我们实现FSState这个类,这里类主要是状态的基本操作以及事件触发。在这里我们定义了在FiniteStateMachine类里声明的三个委托。在FSState里面使用的代码如下:123protected FiniteStateMachine.EnterState mEnterDel
2015-02-06 17:04:06 1007
转载 Unity3D架构系列之- FSM有限状态机设计(二)
在设计一中,我们把IState类设计了一下,接下来,我们写一下FiniteStateMachine这个类,这个类主要的作用就是对于外界调用,这个类是独立封装的,不继承Mono。这个类的功能是提供一个栈,用于存放FSState,还有通过Update进行状态的切换,以及对栈的管理,Pop和Push操作以及状态的注册。最重要的一点是声明了三个委托函数代码如下:12
2015-02-06 17:01:37 1052
转载 Unity3D架构系列之-FSM有限状态机设计(一)
我们在游戏开发中经常面临架构设计问题,在蛮牛问答里面也有好多朋友问关于架构方面的问题,在这里我就将一些经常使用的游戏开发方面的知识跟大家介绍 一下, 一是给大家提供一个设计思路,在此基础上可以举一反三,二是大家可以通过这个平台共同学习。闲话不多说了,切入正题,FSM有限状态机,在游戏开发中如何使用?那些模块的设计需要它?接下来我们就分析一下游戏: 比如我们的玩家自身的状态切换,I
2015-02-06 16:58:26 1845
原创 Unity3D 使用Texturepacker打包工具制作NGUI(Atlas)图集
1、首先下载Texturepackage工具,网上有破解版的,也可以到官网下载使用免费版,https://www.codeandweb.com/texturepacker/,接着就是简单的安装不在过多的介绍。2、打开我们的Texturepackage工具,准备好我们的图片,本人使用的资源图片来自网上,如图:,接着就是全选拖拽到Texturepackage工具的右端,Texturepackage
2015-02-03 14:40:13 4909
原创 unity 2Dtoolkit 插件创建中文字体
1、在做项目以及做小demo的时候需要使用到中文字体,但是2d toolkit 插件的demo里面没有中文字体,查找了一些资料发现可以自己制作自己喜欢和工作需要的字体。2、我们首先需要以下工具辅助,首先我们先下载一个工具叫BitMap font generator,下载链接如下:http://www.angelcode.com/products/bmfont/,安装我们就不说了,打开BitMa
2015-02-02 10:24:22 2413
原创 Unity 实现大转盘笔记
1、unity中要实现旋转一个gameobject,我们需要改变它的transform下对应的Rotation,由于我们的大转盘是2D的视角,所以我们首先需要明确大转盘旋转的方向是旋转Rotation的Z。2、如何实现大转盘由旋转快到慢,再到旋转指定为位置停下。查看了unity的脚本可以找到如下方法实现旋转大转盘如下:public void Rotate(Vector3 eulerAngl
2015-01-29 18:24:37 5266
原创 Cocos2d-x3.2版本移植安卓提示'Serializing CDT Project settings..'has encountered a project
1、本人在使用Cocos2d-x3.2版本进行安卓移植的时候遇到了一个问题,如图在第一次移植成功了当我第二次打开我的eclipse 的时候就出现了这个问题,当我点击关闭时候再次Build Project 的时候有出现如下图的错误,搜索了一下解决的办法还是从我的同事那里知道的一个很偏门的解决办法 ,解决这个问题的步骤如下,找到你当前项目的proj.android文件夹,如图,然后找到.c
2014-11-29 20:23:56 1291
原创 Lua学习笔记之tables与objects
Lua学习笔记之tables与bjects1、 table是Lua中唯一的数据结构,其他语言提供的其他数据比如:arrays、records、lists、queues、sets等,Lua都是通过table来实现的。2、 数组在Lua中通过整数下标访问表中的元素即可简单的实现数组,并且数组不必事先指定大小,大小可以随需要动态的增长。通常我们初始化数组的时候就间接的定义了数组的大小
2014-11-29 18:46:22 953
原创 Lua学习笔记之协同程序
Lua学习笔记之协同程序1、 协同程序与多线程情况下的线程比较类似,有自己的堆栈。自己的局部变量,有自己的指令指针,但是和其他协同程序共享全局变量等很多信息。线程和协同程序的主要不同在于:在多核处理器情况下,多线程程序同时运行多个线程,而协同程序是通过协作来完成,在任意指定时刻只有一个协同程序在运行,并且这个正在运行的协同程序只有在明确的被要求挂起的时候才被挂起。2、 协同的基础L
2014-11-25 18:42:27 763
原创 Lua学习笔记之迭代器与范型for
Lua学习笔记之迭代器与范型for1、 迭代器与闭包迭代器是一种支持指针类型的结构,它可以遍历集合的每一个元素。迭代器需要保留上一次成功调用的状态和下一次成功调用的状态,也就是它知道来自于哪里和将要前往哪里。闭包提供的机制可以很容易实现这个任务。记住:闭包是以恶搞内部函数,它可以访问一个或者多个外部函数的外部局部变量。每一次闭包的成功调用后这些局部变量都保存他们的值。2、 范性fo
2014-11-24 19:04:42 827
原创 lua学习笔记之函数
Lua学习笔记之函数1、 函数的作用函数主要完成指定的任务,这样的情况下函数作为调用语句使用,函数可以计算并返回值,这样的情况下函数作为赋值语句的表达式使用。语法:funcationfunc_name(arguments-list)Statements-listend调用函数的时候,如果参数列表为空,必须使用()表示是函数调用。Print(8*9,9/8)a
2014-11-08 17:12:51 801
原创 lua学习笔记之基本语法
Lua学习笔记之基本语法1、 赋值语句赋值是改变一个变量的值和改变表域的最基本的方法。a = “hello”..”world”t.n = t.n+1lua可以对多个变量同时赋值,变量列表和值列表的各个元素用逗号分开,赋值语句右边的值会一次赋给左边的变量。a,b = 10,2*x a = 10;b = 2*x遇到赋值语句lua会先计算右边所有的值然后再执行赋值操纵
2014-11-08 17:11:04 975
原创 Lua学习笔记之表达式
Lua学习笔记之表达式1、 算数运算符二元运算符:+-*/^(加减乘除幂)一元运算符:-(负值)这些运算符的操作都是实数。2、 关系运算符、=、==~=这些操作符返回结果为false或者true;==和~=比较两个值,如果两个值类型不同,lua认为两者不同;nil只和自己相等。Lua通过引用比较tables、userdata、funcations。也就是说当且仅当两
2014-11-06 18:54:28 884
原创 lua学习笔记之类型和值
Lua学习笔记之类型和值1、全局变量全局变量不需要声明,给一个变量赋值后即创建了这个全局变量,访问一个没有初始化的全局变量也不会出错,只不过得到的结果是:nil如果需要删除一个全局变量,只需要将变量赋值为nil2、词法约定标识符:字母或者下划线开头的字母、下划线、数字序列,最好不要使用下划线家大写字母的标识符,因为lua的保留字也是这样的。3、命令行方式Lua[opti
2014-11-06 18:53:42 1113
原创 lua游戏开发实践指南学习笔记2
深入学习Lua本人学习lua游戏开发实践指南的学习笔记,主要记录书中的一些知识点。1、 函数函数是划分游戏脚本功能的主要工具,它是通过标识符(事实上是一个变量)调用的lua代码块,可以执行某种处理、返回值,或者二者都有。简单的函数定义如下:Function Wow()print(“ ”)print(Wow ,that wasaawesome:)print(“ ”)
2014-11-04 12:35:12 1520
原创 lua游戏开发实践指南学习笔记1
Lua基础1、 语言定义:在lua语言中,标识符有很大的灵活性(变量和函数名),不过用户不呢个以数字作为起始符,也要避免下划线(_)接大写字母,因为这种格式为lua自身保留如_Start。建议用户使用如下格式和命名规则来定义变量、常量和函数名:① 常量用全大写和下划线,例如:MY_CONSTANT② 变量第一个字母小写,例如:myVariable③ 全角变量
2014-11-01 12:41:54 1857
原创 Unity3D 使用XML进行简单的配置文件修改
1、首先是看看效果图:开始运行项目如下图所示2、点击绿色按钮修改配置文件再点击修改按钮成功修改方块颜色3、接了下是实现的过程:首先在Hierarchy创建一个cube,其次在Assets下分别创建Scenes和Scripts文件夹,分别是用来保存的的当前的场景和我们所写的脚本。在Scripts文件夹下面右键创建一个C#脚本,接我们在脚本里面开始创建一个XML文件和对应的
2014-10-30 21:11:41 6790
原创 Cocos2d-x cocostudio UIButton控件setEnabled(false)方法失效解决办法
1、UIbutton按钮有三个状态,一个是正常状态、一个是按下状态、另一个是禁用状态,当我们在Cocostudio编辑器上设置好我们的三个状态的图片时候,我们在我们的项目中使用setEnabled(false);方法的时候,发现UIbutton消失了,解决这样问题的办法如下:①进入UIwidget.cpp找到visit();方法,这里我们需要修改visit();方法,去掉if判断结果如
2014-09-01 15:38:26 3558
原创 char *和char []区别
1、#include "stdafx.h"#include using namespace std;int main(int argc, char* argv[]){int *ip = new int;char s[] = "abcd";char *p = "abcd"; coutcoutcoutcoutcoutcout
2014-08-18 15:03:06 648
原创 C++ string 转const char *、char*转string、char[] 转string、string转char *
1、注意,与char*不同的是,string不一定以NULL('\0')结束。string长度可以根据length()得到,string可以根据下标访问。所以,不能将string直接赋值给char*。2、string 转const char *如果要将string直接转换成const char *类型。string有2个函数可以运用。一个是.c_str(),一个是data成
2014-08-18 11:26:35 2945
原创 Cocos2d-x读取本地文件
在公司在项目开发的时候需要读取本地的文件,于是在网上搜索了一下以下关于Cocos2d-x文件读取的操作,用了两种方法都可以实现,一种是使用C++另种是Cocos2d-x代码如下://读取文件(参数分别为文件名和文本框)void GameRegistry::readFile(const char *pFileName,UILabel *pLabel){/*方法一ifstrea
2014-08-12 13:59:03 2550
原创 C++Primer 学习笔记之指针和引用
1、引用概念引用引入了对象的一个同义词。定义引用的表示方法与定义指针相似,只是用&带起了*。例如:Point pt1(10,10);Point &pt2 = pt1;//定义pt2为pt1的引用。通过这样的定义,pt1和pt2表示同意对象,需要特别强调的是引用并不是产生对象的副本,仅仅是对象的同义词。因此,当下面的语句执行后:pt1.ofset(2,2);pt1和pt2都具有了
2014-08-08 14:15:38 739
原创 VS2012运行Cocos2d-xTest案例加载失败解决方案
编译cocos2d-x,一直提示加载失败通过搜索,解决方案如下:第一步,通过命令提示行工具进入VS安装目录下的%VS2012home%Common7\IDE第二部,执行devenv.exe /setup /resetuserdata /resetsettings第三步,重新加载sln文件
2014-08-06 16:13:56 1044
原创 Cocos2d-x 2.2.3 使用NDK配置安卓编译环境问题之 Cannot find module with tag 'CocosDenshion/android' in import path
1、当做安卓移植的时候遇到如下问题:Android NDK: jni/Android.mk: Cannot find module with tag 'CocosDenshion/android' in import pathAndroid NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ?Andr
2014-08-06 16:08:43 1316
原创 vs2010问题解决之Microsoft Visual Studio 已停止工作
1、遇到这个问题搜索百度,试了很多的方法都不行,重装vs2010、修复vs2010,最后找到了几个个方法论,意义试了最后成功了,方法如下:vs2010已停止工作的解决方法(1)以管理员身份运行vs2010vs2010已停止工作的解决方法(2)给vs2010装上servcie pack1vs2010已停止工作的解决方法(3)重装或者修复vs2010vs2010已停止工作的解决方法(4
2014-08-06 16:02:41 7126
转载 cocos2d-x -CCSpriteFrameCache-CCAnimation
转自:http://blog.csdn.net/cocos2der/article/details/6933421猴子原创, 欢迎转载,转载请在明显处注明! 谢谢。原文地址:http://blog.csdn.net/yanghuiliu/article/details/6933421之前我介绍过cocos2d-x的帧动画实现,今天我把帧动画详细写一下。帧动画就是
2013-10-26 10:39:57 1056
原创 cocos2d-x CCSpriteFrameCache
首先得知道CCSpriteFrameCache为精灵帧缓存,CCSpriteBatchNode为精灵批处理节点,那它该怎么用呢?有是什么时候该使用的呢? CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("Background1.plist");//通过单例创建一个单例,然后使用方法addSprite
2013-10-18 20:53:46 3080
转载 cocos2d-x、CCMenu、CCMenuItem
转自:http://blog.csdn.net/lamp_zy/article/details/79221681.CCMenu是由菜单项CCMenuItem (或其子类如CCMenuItemImage)组成的,通常先创建菜单项,然后使用1个或多个菜单项生成菜单2.菜单项的位置是相对于菜单的偏移位置,默认情况下菜单的位置在屏幕中点,方向为x向右,y向上(跟主窗口方向一样),菜单项
2013-10-18 19:12:59 854
转载 cocos2d-x-TiledMap-ccTouch-双指缩放-单指拖动-双击自动放大
转自:http://www.tuicool.com/articles/jUrqea根据 http://www.raywenderlich.com/1163/how-to-make-a-tile-based-game-with-cocos2d 中的介绍来在cocos2d-x上实现。文章内容:一、Tiled工具的使用二、Touch事件的检测,拖动和缩放操作一、实现
2013-10-18 09:15:35 1810
原创 cocos2d-x之CCProgressTimer实现进度条
CCProgressTimerType类型如下:typedef enum { /// Radial Counter-Clockwise kCCProgressTimerTypeRadial, /// Bar kCCProgressTimerTypeBar,} CCProgressTimerType;实现从左到右的进
2013-10-17 19:18:36 903
转载 cocos2d-x之滚动背景
转自:http://blog.csdn.net/xiaoxiangp/article/details/7719400这段时间一直在研究2.0.1这个版本的引擎...发现和1.0X的差别比较大..有很多函数,都改了名字..这次我分享一下那种类似于雷电..游戏的纵版背景滚动..1. 如果想使窗口看起来更加适合纵版游戏,首先改变窗口大小(分
2013-10-15 13:55:26 967
转载 cocos2d-x精灵自定义路径移动
转自:http://blog.csdn.net/xiaoxiangp/article/details/7707353研究了一下自带例子中,有一项是根据点组成曲线或直线来移动精灵..觉得蛮有用处的,所以尝试并整理了一下,和大家分享一下1. 首先创建好了工程后修改.h文件,重载了draw函数..用于画路径.这是一个虚函数,虽然没有加virtual
2013-10-15 13:53:13 2051
转载 cocos2d-x进度条读取
转自:http://blog.csdn.net/xiaoxiangp/article/details/7706764昨天下载了最新的cocos2d-x 是2.0.1版本的...所以本文章是参考2.0版本的例子写的...可以发现,2.0版本后不单单只有一个帧率了..还多了两个参数.第一个参数可以理解为场景中的对象个数吧.
2013-10-15 13:51:16 1212
转载 cocos2d-x之简单动作小例子
转自:http://blog.csdn.net/xiaoxiangp/article/details/7693343仔细看过老G博客中的内容后,总结出了几种类型动作。。所以编写了个小例子,至于网格动画...还有很多不能理解的地方,所以也总结不出来http://4137613.blog.51cto.com/4127613/d-1/p-3 老G的博客
2013-10-15 13:47:16 803
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人