- 博客(64)
- 资源 (12)
- 收藏
- 关注
原创 vc调用外部exe附加窗口方式
HWND hWnd = ::FindWindow(NULL, _T("exe"));if (hWnd != NULL){m_wndExe.Attach(hWnd);m_wndExe.ShowWindow(FALSE);m_wndExe.SetParent(this);m_wndExe.MoveWindow(111,82,802,602);m_wndExe.ShowWin
2014-08-12 10:46:54 753 1
转载 Flash安全设置工具
rem FlashFlashPlayerTrust.cmdc:cd %windir%/system32/Macromed/Flashmd FlashPlayerTrustcd FlashPlayerTrustecho c: >myTrustFiles.cfgecho d: >>myTrustFiles.cfgech
2014-07-03 09:57:37 517
原创 .NET4无法安装问题解决方案
1 提到了解决办法:在运行 cmd 命令,再输入 fsutil resource setautoreset true c:\ 如果windows7安装在其他盘则改为相应的盘符。(装在D盘的写D:\)于是我ok了~~2 然后关闭 Internet 时间自动同步3 就可以安装.NET4和Windows' UPdate了
2014-07-03 08:56:43 1604
原创 MS SQL 数据插入access
insert into OpenRowSet('microsoft.jet.oledb.4.0',';database=D:\xxdb\Content_WL21.aoo','select * from ResContent') select * from ResContent
2014-02-11 17:10:08 482
原创 win7或win8语言包安装
win7或者win8 64位里面有删除语言包的lpremove任务需要禁止命令system("schtasks /change /disable /tn \\Microsoft\\Windows\\MUI\\LPRemove");禁止任务// 检查操作系统的版本号 OSVERSIONINFO _osv; ZeroMemory(&_osv, sizeof(OSVERSIONINFO
2013-09-26 13:26:20 866
转载 开发cocos2d-x 游戏 实战篇(8)--终结篇
哈哈虽然这个游戏完结了但是不代表我的博客更新就此,结束。我以后还会不断更新以项目的方式给大家讲解cocos2d-x 的用法。对于这个游戏我来总结一下。这些天群里问我的朋友不少,我发现一个问题。或者说 咱们的思路可能不一样。很多人问我是怎么想的哪些功能是怎么实现的。其实BOY也是人也不是神。很多东西我一开始也没想到,不过大的框架的地方一定要想到。例如拿武器系统来说 我刚开始想的时候 想这个武器系统能
2013-09-18 15:59:59 796
转载 开发cocos2d-x 游戏 实战篇(7)之关卡系统的基本设计
下面我简单的说了一下我的设计关卡系统的一个简单的思路。我感觉做这类的塔防游戏其实就是每一个关卡就是一个生存模式,当你过了以后就可以进入到下一关,当你没过的时候会让你一直停留在次关 一直打到你过为止。既然是这样的一个思路那么没提升一个关卡怪物的属性值和怪物的数量值总是需要提升,来增加游戏的难度。让玩家更好的玩下去。我的总体思路就是这样。 我画个简单的流程图 大家看到这个图是不是发现其
2013-09-18 15:53:08 1028
转载 开发cocos2d-x 游戏 实战篇(6)之 绚丽的魔法特效
呵呵看起来还是很绚丽的吧 要问这个代码是怎么实现 明白人一看大概都能了解 首先我修改了我武器系统里面的部分代码 就是为了加入上面那些绚丽的特效void WeaponSprite::initIdleMagicSpool(cocos2d::CCLayer* pLayer){ int cout=3;// 假设 魔法矩阵的
2013-09-18 15:51:34 1096
转载 开发cocos2d-x 游戏 实战篇(5)之魔法阵和自定义弹框
这一章包含的内容有 添加魔法阵的CD 动画 其实就是游戏中的技能的CD 在一个重要的一点就是自定义弹出框。还有一点就是给主城添加气血和魔法。在这里给大家说下我添加的这些东西 有些具体的功能还没实现 例如魔法阵 这一块我感觉是比较重要的一块,我准备放到下一章来专门讲解 魔法阵的实现,在游戏中如何使用魔法消灭怪物,呵呵是不是很期待啊。还有一个就是在弹出框中我 我重新开始游戏这一点我还没实现,别看这么一
2013-09-18 15:49:58 933
转载 开发cocos2d-x 游戏 实战篇(4)之 怪物系统
其中关于怪物类 我这里要仔细讲解一下 在一个游戏中我们的怪物 常常是这样的 有攻击动画 有走路动画 有死亡动画 目前我没考虑收到攻击的动画 考虑太多只会增加开始游戏的难度 我们先把最基本的 实现 慢慢来扩展 我的怪物的图片是从66rpg 上下载的 然后用TexturePacker 把众多的动画 所需要的 图片处理成一张图片 减少加载图片的次数 通过这个工具以后会生成一
2013-09-18 15:45:30 1010
转载 开发cocos2d-x 游戏 实战篇(3)之武器系统(散花弹)
这一章 写的东西比较多 不过分模块理解就好 主要模块有 武器 弹药 武器+弹药组合成 武器系统 ,当武器里面没有子弹的时候自动上膛 给加子弹,子弹会随着武器的跟着旋转。不过这里实现的并不是很完美。(兄弟们可以看看这一点如何优化)我是这么实现的当武器旋转完之后通过回调函数来设置武器系统的中在枪膛中的子弹的方向。虽然实现了但是看起来有卡顿的感觉。因为没有实现真正的子弹随着武器的旋转
2013-09-18 15:38:34 1092
转载 学习开发cocos2d-x 游戏 实战篇(2)之 欢迎 界面编写
在这里我要说明一下 今天用到的主要知识点 按钮的使用, 界面的跳转 包裹 界面跳转的之间的 特效 还有音乐的播放 ,如何使用cocos2d-x 来保存一些值。对于这些知识点 如果大家不清楚的地方请看下无脑码农的视频或者是龙灵修的视频 这些知识点他们都有讲解。当然也可以在我博客中留言 不懂的地方我也会给你们解答一下。好了废话不多说了下面可是上菜了在这里我要注明一点 我每次使用图片的时候都是从
2013-09-18 15:31:58 780
转载 开发cocos2d-x 游戏 实战篇(1)之 loading 界面编写
在游戏开发中有些资源需要预先加载在内存中这样方便我们在以后的使用。从而加快游戏的速度。特别 是预先从网络上下载资源的更需要一个友好的界面来告诉用户程序正在加载中。这个时候就需要我们做一个loading 界面废话不多说下面开始讲解思路1 当加载图片的时候使用 CCTextureCache::sharedTextureCache()->addImageAsync("gmbg/longd
2013-09-18 15:26:32 655
转载 学习开发cocos2d-x 游戏 (前提篇 一)
这里在该打架说一下 2.1.4 是如何建立项目 方便大家下载我的源码后能快速运行起来 这我说一下我用的python 脚本建立的项目这个是官方推荐的 对于电脑不支持python 的需要安装python 环境 我用的是win32 我在360 软件管理专家里面 搜索了一下就安装了很小的一个东西,安装好之后需要配置环境变量。例如我是是安装在D:\Python27 我就在我的pa
2013-09-18 15:14:36 564
转载 eclipse 移植cocos2d-x工程 报错: Program "bash" is not found in PATH
右击工程-->properties-->C/C++ Build 确认右边视图选项Build command:ndk-build右击工程-->properties-->C/C++ Build -->ToolChain Edit 确认右边视图的选项:Current toolchain:No Toolchain
2013-09-12 16:21:04 1550
原创 do...while(0)另类使用方法
在C++中,有三种类型的循环语句:for, while, 和do...while, 但是在一般应用中作循环时, 我们可能用for和while要多一些,do...while相对不受重视。 但是,do...while的一些十分聪明的用法,不是用来做循环,而是用作其他来提高代码的健壮性。 1. do...while(0)消除goto语句。 通常,如果在一个函数中开始要分配一些资源,然后在中
2013-09-06 10:34:05 410
转载 《模板方法模式》
这个模式就是利用了面向对象的多态,抽象哪些公用的方法,就不用实现了,其他的按照业务逻辑来独自实现。等到调用就ok了 今天只能上代码了[cpp] view plaincopy// TemplateMethod.cpp : 定义控制台应用程序的入口点。 // //****************************
2013-08-30 15:58:21 359
转载 《策略模式》
什么是策略模式,用我个人的定义就是利用了面向对象的多态等特性,通过一个类来管理实体类的一种编程技巧。这种模式在项目中是经常用到的。 通过建模大家可以清晰的看到这些类层次关系。下面就用代码来实现一下。我使用的是VS2005的,大家可以根据需要修改部分代码。 [cpp] view plaincopy#inc
2013-08-30 15:51:25 404
转载 《观察者模式》
观察者模式应该说比较简单,就是将不同观察者注册到被观察者内部,被观察者做了什么动作,都会通知到观察者。。。 代码中,被观察者也可以形成接口,有不同的子类,被观察,更灵活一些。。。 下面代码 [cpp] view plaincopy// Observer.cpp : 定义控制台应用程序的入口点。 //***
2013-08-30 15:48:43 406
转载 《命令模式》
一、建立命令队列;二、可以将命令记入日志;三、接收请求的一方可以拒绝;四、添加一个新命令类不影响其它类;命令模式把请求一个操作的对象与知道怎么操行一个操作的对象分开命令模式感觉就是一个领导接受客户端的命令,让底下的人去做,但是比较特殊。继承命令 上图 上代码 [cpp] view plaincopy
2013-08-30 15:32:50 418
转载 《职责链模式》
责任链模式,用我的理解就是动作的处理链表。根据请求的不同类型,在链表查找相应类型的处理者。处理者是一个链表。用下面的一个图来解释 基本的UML图为[cpp] view plaincopy// ChainofResponsibility.cpp : 定义控制台应用程序的入口点。 //********
2013-08-30 15:26:31 455
转载 《代理模式》
代理模式,就是相同的两个类,一个类做另一个类的代理人。出头露面的是第一个人,实际做事情的是第二人。 但是第一个人怎么知道第二个人能做那些事情。就继承了同一个父类。 CMon类代理他所有女儿的事情。 而不用他们女儿亲自出马,但是呢实际做事情的还是他们女儿。下面上代码 [cpp] view plaincopy
2013-08-30 15:22:40 392
转载 《外观模式》
看了外观模式的一些资料。觉得外观模式就是为了解决实体类过多,而这些实体类就是为了做一件事情,组合起来。 因此外观模式出现了,他就是解决很多类的协调关系。用另个一类聚合这些类之间的事情。因此,当我们调用一个类的时候,所有的事情完成了 这个看起来就像一个外观一样。 图呢,和策略模式差不多,但是本质思想的功能是不一样的。我在这里是用去征政府部门办事
2013-08-30 15:17:42 499
转载 《装饰模式》
自我理解就是把对象重新装饰了一遍。通过继承同一个基类。而不用添加额外的类了。。。。上图吧通过修饰类达到我们想要的效果。修饰类通常初始化了基类。[cpp] view plaincopy// Decorator.cpp : 定义控制台应用程序的入口点。 //**************************
2013-08-30 15:07:42 394
转载 《桥接模式》
桥接模式就是 独立和实现相分离。不同的厂家生产不同的产品。。。。产品和厂家有这组合的关系。上代码[cpp] view plaincopy// Bridge.cpp : 定义控制台应用程序的入口点。 // / //*************************************
2013-08-30 14:58:04 434
转载 《适配器模式》
所谓适配器模式,就是为了解决或者叫融合系统之间的差异,通过提供一个类,来融合这种差异。这让我想起来读《UNIX 编程艺术》里一个名词 就是胶合层。 胶合层也算是一种适配上层鱼下层之间的差异和出现的一种处理方式。 这个是解决系统差异的一个具体表现, 下面上图吧 代码片段 [cpp] view
2013-08-30 14:51:50 405
转载 《建造者模式》
今天学习了建造者模式,目前较为复杂的一个模式之一。但是思考起来就觉得她很像抽象工厂的生产者模式。 但是比生产者多了一个导演着的身份,这个指挥着建造者去生产谁。。。 所以,这个模式还是挺有意思的。直接上UML图。 我们生产两种商品,两种商品是有厂家决定,商品只决定具有哪些。因此,这时候是有生产者说了算。 但是还有一个更高级的指挥
2013-08-30 14:47:59 377
原创 设计模式的分类
根据其目的(模式是用来做什么的)可分为创建型(Creational),结构型(Structural)和行为型(Behavioral)三种:创建型模式主要用于创建对象。结构型模式主要用于处理类或对象的组合。行为型模式主要用于描述对类或对象怎样交互和怎样分配职责。根据范围,即模式主要是用于处理类之间关系还是处理对象之间的关系,可分为类模式和对象模式两种:类模式处理类和子类之间的
2013-08-30 14:29:15 440
转载 《抽象工厂模式》
抽象工厂模式,就是把工厂类也给他多态了。 根据需求不同的工厂生产不同品种的实体。比如在游戏中。 纯在vip用户对应的vip的宠物对应的vip的怪物,或者vip任务。因此,vip工厂就生产vip这些东西了。但是普通的也要生产。因此 就抽象出来两个类了。 下面我是根据游戏中,不同的角色来定义的一些实体类。直接上图,大家就看明白了 也就是
2013-08-30 14:17:55 415
转载 《工厂模式》
所谓工厂模式,其实就是用来产生实例的地方。生产某一类型的产品。因此也是利用了类管理和类多态的一个特性吧。 下面直接上图 在Factory 中产生human的实例, 然后通过实例来调用方法。[cpp] view plaincopy// Factory.cpp : 定义控制台应用程序的入口点。
2013-08-30 14:13:10 371
原创 auto关键字
auto关键字表达式声明的变量类型将根据初始化表达式自动推导出来,而无须由程序员明确指定。auto关键字的使用需注意两点:1.将变量类型替换为auto;2.必须在定义处对变量进行初始化。下面语句合法:auto k = 0;auto d = 2*3.14;下面是非法的:auto int k = 0;auto d;可以大大简化复制变量类型,如下:map>::iterator
2013-08-29 10:38:41 569
原创 VC2010开发学习(Lambda表达式)
许多编程语言都支持匿名函数的概念,所谓匿名函数指的是只有函数体而没有函数名的函数,匿名函数广泛运用于那些只被使用一次且函数体较小的情况。Lambda表达式是一种与匿名函数密切关联的编程技术,实际上一个Lambda表达式隐式定义了一个函数类并构造了一个该函数类的函数对象。可以将Lambda表达式看作一个可以维持状态并且可以访问所在封闭作用域的变量的匿名函数。在作用上,Lambda表达式类似于函数指针
2013-08-29 10:28:44 593
转载 ACE线程安全与同步(Thread Safety and Synchronization)
保护原语为了确保一致性,多线程程序必须在共享数据周围使用保护原语。Protection Primitives in ACEPrimitiveDescriptionACE_MutexWrapper class around the mutual-exclusion mechanism and used to provide
2013-08-26 10:18:58 771
转载 ACE线程管理机制-面向对象的线程类ACE_Task
我们在前一章中使用ACE_Thread包装时,你一定已经注意到了一些不够"优雅"的地方。那一章中的大多数程序都被分解为函数、而不是对象。这是因为ACE_Thread包装需要一个全局函数名、或是静态方法作为参数。随后该函数(静态方法)就被用作所派生的线程的"启动点"。这自然就使得程序员要为每个线程写一个函数。如我们已经看到的,这可能会导致非面向对象的程序分解。ACE_Task对常用线程处理进
2013-08-26 10:14:18 413
转载 ACE线程管理机制-线程的创建与管理
有过在不同的操作系统下用c++进行过多线程编程的朋友对那些线程处理的API可能深有体会,这些API提供了相同或是相似的功能,但是它们的API的差别却极为悬殊,十分令人头痛。ACE_Thread提供了对不同OS的线程调用的简单包装,通过一个通用的接口进行处理线程创建、挂起、取消和删除等问题。一. 线程入口函数所有线程必须从一个指定的函数开始执行,该函数称为线程函数,它必须具有
2013-08-26 10:11:34 394
转载 ACE中UDP通信
udp是一种无连接的协议,提供无连接不可靠的服务。在ace中,通过ACE_SOCK_Dgram类提供udp通信服务,ACE_SOCK_Dgram和ACE_SOCK_Stream的API非常类似,一样提供了send,recv及close等常用操作,这里就不再累述了。udp通信时无需像tcp那样建立连接和关闭连接,tcp编程时需要通过accept和connect来建立连接,而udp通信
2013-08-22 17:01:49 511
转载 ACE中TCP通信
概述:传输控制协议TCP(Transmission Control Protocol):TCP提供可靠的、面向连接的运输服务,用于高可靠性数据的传输。TCP协议的可靠性是指保证每个tcp报文能按照发送顺序到达客户端。Tcp通信过程一般为如下步骤:服务器绑定端口,等待客户端连接。客户端通过服务器的ip和服务器绑定的端口连接服务器。服务器和客户端通过网络建立
2013-08-22 16:49:07 440
转载 ACE主动对象模式(2)
我们简单的介绍了一下ACE主动对象实现方式,同时提出了两个问题:方法调用线程如何知道该方法已经执行完成? 如何或得方法的返回值?要解决这两个问题,首先得介绍一下ACE_Future对象,ACE_Future是表示一个会在将来被赋值的"期货"对象,可以通过ready()函数查询它是否已经被赋值。该对象创建的时候是未赋值的,后期可以通过set()函数来进行赋值,所赋的值可以通过get(
2013-08-22 16:09:09 353
转载 ACE主动对象模式(1)
主动对象模式用于降低方法执行和方法调用之间的耦合。该模式描述了另外一种更为透明的任务间通信方法。传统上,所有的对象都是被动的代码段,对象中的代码是在对它发出方法调用的线程中执行的,当方法被调用时,调用线程将阻塞,直至调用结束。而主动对象却不一样。这些对象具有自己的命令执行线程,主动对象的方法将在自己的执行线程中执行,不会阻塞调用方法。例如,设想对象"A"已在你的程序的main()函
2013-08-22 16:04:49 414
实战Nginx:取代 Apache的高性能Web服务器
2013-08-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人