自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Meuck的专栏

我们的故事爱就爱到值得错也错的值得,是执着是洒脱留给别人去说

  • 博客(96)
  • 资源 (7)
  • 收藏
  • 关注

原创 unity3d 换装笔记

首先理清CharacterCustomization例子里面的换装基本思路:1. 对characters 目录下各个角色进行 打包.2. 在读取的时候动态将里面的数据 读取出来即可.这是最基本的, 但是中间有几部很重要的。1. characters 目录下的资源是不能直接使用的.2. 模型,材质,骨骼都是有一定关系。3. 很多时候这种关系是通过文件名来组织在一起的。

2013-10-14 01:01:43 1500

原创 unity3d 换装

为了学习unity3d 里面的换装, 将unity3d 里面的例子改了下, 把资源加载功能剔除, 仅仅保留最基本的换装。原例子名字叫 CharacterCustomization。

2013-10-07 00:53:20 1402

原创 STL学习笔记,关于iterator的实现细节

为什么stl 中的 forward_iterator_tag 是这样定义?1>struct forward_iterator_tag : public input_iterator_tag而不是2>struct forward_iterator_tag : public output_iterator_tag或者3>struct forward_iterator_tag : public inpu

2008-03-26 11:28:00 1156 1

原创 炸弹人日志更新

20:13 2008-3-231.在尽量不改变原有的结构下,完成在单机版的人物选单更新        已解决2.在尽量不改变原有的结构下,完成在网络版中人物选单的更新3.解决在新的人物选单下MessageBox显视异常的问题.              已解决  1>会不会是默认按钮的原因呢?--是的 

2008-03-23 20:58:00 1300 2

原创 在ClanLib中自定义按钮的几种方法

在最近的介面修改中,总结一下在ClanLib中如何去修改介面的一些方法:1>新建一个控件类型.  有时现有的控件类型并不能满足我的需要,比如要做一组控件.它们之间需要互传一些自定义的数据类型.  下面主要记下几个需要修改的地方:   1>添加控件,继承自CL_Component.   2>由于我的控件不需要别人使用,因此控件的显视方法等操作也可以写在控件本身的代码中.因此不需要在     CL

2007-12-13 23:04:00 1202

原创 2007-12-04炸弹人开发日志

1>防泡泡堂人物选择控件    ok2>防泡泡堂按钮            write3>防泡泡堂的地图选单窗口  wait4>地图中加入背景音乐信息  wait5>把地图选单窗口设定在人物选单中 wait 6>加入圣诞主题元素 wait

2007-12-04 22:20:00 976

原创 2007_09_16炸弹人开发日志

冷静下来,仔细思考:对于在Internet上不稳定的情况,在某些版本会特别明显,而在另外一些版本则不这么明显。经过两个版本的原代码比较,发现改动的代码是一些无关紧要的部分。现象可表示为:1>错误是随机出现.2>任意的代码改动都会影响整个程序的稳定。猜测可能出现的地方为:1>缓冲区中的指针没有使用线程保护.2>使用不同的线程同时对一个socket进行读写操作会不会出现问题?接下来要做的事

2007-09-16 20:04:00 1431 3

原创 2007_09_03游戏开发日志

我不是太会写文档,具体文档稍后与整理后的游戏源代码一起发放:游戏的组成部分:1> 游戏核心部分游戏对象游戏对象Hander游戏世界游戏对象管理器游戏地图移动控制器 2> 通用支持部分RTTI动态识别动态创建对象的序例化Switch封装随机函数读写缓冲IO流 3> 网络部分服务器客户机通用SOCKET 包装专

2007-09-03 20:55:00 1348

原创 2007_09_02炸弹人开发日志

修改BUG用了太多时间了,连练琴的时间都没了!唉!BUG现象:主机断开的时候,客户机在显视主机断开后必定产生socket无创建的断言。报告人 :Hunter_xiao原因   : 因为网络断开的时候,流程写错了.本来应该写switch_to("menu_main")却写成         switch_to("menu_game")。原本因该回选单状态的流程错误的没有该变.         由于所

2007-09-02 17:07:00 1329

原创 2007_09_01炸弹人开发日志

目前以知的重要BUG:1>断言GameMove : 109行左右. 这是人物在移动调整时出现了预料以外的情况。  (由于该错误出现的次数较少,因此只能等到录象功能出来的时候再解决)2>网络错误,还没有根本解决,但并不会频繁出错.大多是出在网络不稳定的环境中。  (该问题在代码结构调整之后解决)3>单机退出时有可能出现,CL_Error 地图创建错误。该错误有望近期解决。  (由于该错误出现的次数较

2007-09-01 10:43:00 1488 3

原创 2007_08_30炸弹人游戏开发日志

 1.先有人物选单再有地图的游戏流程,就好象泡泡堂那样选地图的流程*2.一盘结束后可以允许自动重新连接,不用再进行连接设置. 3.游戏开始有信息提示*4.游戏结束有信息提示    +计分牌,统计信息.*5.设置本机玩家的个数*6.网络中的错误处理,常见的错误用输出提示框或写日志,不要老是使用断言。  毕竟是一个玩的版本。 7.完善地图验正功能,目前还不提供地图下载.只提示缺少哪张地图.x8.在游戏

2007-08-30 16:10:00 950

原创 最近学习总结

1> 所谓的STL,是通过 迭代器(Iterator) 这个接口把一些常用的数据结构如(vector,list,dquee,map)       与一些常用的算法如(for_each,qshort,copy) 组织起来形成的一个整体。   假如我们想做出的新的数据结构要能够使用原有的算法,则需要提供相应的Iterator接口即可。   同理,假如想我们的新算法应用于旧有的数据结构,则只要把对数据结

2007-08-30 16:08:00 950

原创 如何在ExampleGUIStyle中使用CL_InputDialog?

如何在ExampleGUIStyle中使用CL_InputDialog?在这里首先要说说CL_InputDialog用的是Window的style,而Window主要有两部分组成:1>title bar     :是存在于window pos中的子控件,位置可以设置,一般放在与Window控件(0,0)的位置2>client window :是用于放置其它控件的子控件,一般不显视.假如你的介面

2007-08-22 10:15:00 1011

原创 2007_08_17(2)炸弹人开发日志

经测试,目前游戏在高速的网络中运行速度还算可以。在低速网游戏中可能会出错.网络部分算是可以运行了,但是因为游戏流程不清晰的关系,因此最近目标,实现朋友之间可以简单的玩的游戏。网络速度主要以局域网为主,Internet相对要卡很多.下面是具体步骤:1.先有人物选单再有地图的游戏流程,就好象泡泡堂那样选地图的流程2.一盘结束后不必重新连接,在新的连接状态可以让新的玩家加入3.游戏开始有信息提示4.

2007-08-17 16:48:00 1028

原创 2007_08_17炸弹人开发日志

服务器使用虚拟机,客户机使用宿主机.虽然在本地机器勉强可以流畅运行.但是一但真正的IP建立起来.还是会很卡,下面有必要对服务器进行调整.客户端的代码应该就不用改了,因为使用一个线程拼命往缓冲里写数据.而服务端可能要改成非阻塞模式,不然在内部网都这么卡.到了外面就没法玩了. 

2007-08-17 09:44:00 996

原创 2007_08_14炸弹人开发日志

方案2还是不行!方案二不管怎样做,所有客户端还是不能完美的进行同步.另外,游戏太卡已经通过两个方面得到了一定程度的缓解.1.游戏中的socket设还默认的delay,即数据包在系统中有缓冲.  之前没用的时候因为游戏本来都不能正常运行,所以就看不出.总之设置了delay就改善了一些.2.客户端不再频繁调用::ioctlsocket等socket函数来检查网络数据,而是直接检测程序中的缓冲区.  而

2007-08-14 17:55:00 972

原创 2007_08_13炸弹人开发日志

先说说这个游戏网络模块的实现原理:简单的说就是把玩家的输入信号发送到服务器,再由服务器来统一更改所有玩家的虚拟输入设备。为了保证游戏运行不受输入的具体数据的影响,因此服务器在每间隔一段时间就会发送时间驱动包.而输入数据就在这驱动包中.客户端的游戏时间也是由服务器来驱动的。Q1:服务端更新时间应该设多大?A1:我在本机分别设置了200ms,100ms,60ms,50ms,40ms,30ms,20ms

2007-08-13 10:14:00 927

原创 从阅读理论作品与想象文学之间的差异,联想到生活中事业与爱情的方法差异

 我们阅读理论作品与想象文学中最重要的差别在于其目的性。阅读理论作品的目地在于传递知识,帮助我们理解这个真实世界。阅读小说、诗歌等的目的是让我们拥有一种经验。而获得这种经验本身能让我们愉悦。 理解是通过逻辑,推论这类理性思考达到的。而经验的则主要是通过想象与感官获得的。并不是说阅读理论作品就不会有想象,阅读想象文学就不会有理性思考。区别在于强调哪一方面罢了。理解这个真实世界能让我们感到满足,但是我

2007-08-04 23:37:00 1120

原创 2007_07_31炸弹人开发日志

真是苦死了,昨天突然死机. 最近写的.cpp文件变成了 00 00 00 00 ...由于是新加的代码,又来不及写入SVN。        T ^ T.不过之前写的代码总算基本完成,与之前相比要少了不少注释.其实就是为socket加上个缓冲然后再简单封装一下常用操作而已。接下来,今天要把游戏中与该网络模块相关旧的代码替换成新代码.下面是新模式的BUG统计信息:模块     : SLK_

2007-07-31 16:43:00 884

原创 2007_07_29炸弹人开发日志

最终,我还是认为不要用ClanLib中的socket包装类CL_Socket为好.本来以为它还可以撑多一下,在游戏的网络功能实现才差不多再来改.主要由3个方面考虑.1>为每个socket加入缓冲以降底对recv函数的调用次数,另外如果使用CL_Socket中的信号通知.则有可能会漏掉一些数据包.我昨天就碰到这个情况.当发送两次的数据包,而这边可能只会有一次信号通知,假如没有在这一次内接收完.将不会

2007-07-29 07:18:00 974

原创 2007_07_21炸弹人开发日志

1.完成由于网络模式的添加,相应的单人模式 的修改。2.解决了一个在内存越介的BUG,表现形式为使用DEBUG模式就会在系统内部断言。3.已经把工程完全转向SVN了,CVS的软件也删除掉了。明日计划:实现网络模式的人物选单等预备功能。

2007-07-21 22:26:00 1033

原创 2007_07_17炸弹人开发日志

*完成+正在处理-不处理炸弹人游戏开发目前修改计划重新分为5个里程碑:1>游戏中能使用网络对战以及录象功能2>重构游戏代码  1)改进ID管理器  2)加入内存管理器  3)统一游戏对象管理器  4)统一资源管理器的使用方法  5)加入日志  6)调整游戏对象中的代码3>包装游戏  1)游戏GUI的调整  2)游戏声音的调整  3)游戏画面的调整  4)游戏资源使用压缩包4>游戏周边功能  1)控

2007-07-17 14:40:00 867 1

原创 FPS概念的理解

最近才明白FPS的作用,以及为什么需要FPS的概念,真是笨得可以了!之前虽然知道FPS就是每秒游戏刷新的次数,可能由于早期游戏的设计思想,一直想不明白为什么同一个游戏FPS不一样,但是出来的效果却一样!因为如果FPS不一样的话,那么调用游戏主循环的次数不就不一样了吗.既然运算的次数不一样,那么运算的结果为什么会一样呢?大多数的游戏通常有个叫游戏循环的东东.而在这里面:float pass_time

2007-07-14 21:04:00 1557

原创 向左向右?

炸弹人游戏的网络功能,有两套方案,但都是用的TCP:1>类似于棋牌游戏中的网络,简单,正确,但对网络要求较高。    不考虑延时问题,  服务器直接转换所有的客户数据就行了,没有数据就发送心跳。   游戏中的最小时间单位是帧,而每帧的驱动都是倚赖于服务器发送的数据. 因此回放其它玩家的数据的时候不会有任何问题.   2>类似于一般网游方式,复杂,有误差,但对网络要求较底。   游戏中的时间是人类时

2007-07-14 16:24:00 841

原创 在VC6。0中可能会碰到ClanLib的编译错误及解决办法

1:在richedit_paragragh.h中的 error C2258: illegal pure syntax, must be = 0    把相应的代码改为: //richedit_paragragh.h  class CL_API_GUI CL_RichEdit_Paragraph{public:    const static int SPACE_BETWEEN_ITEMS;//

2007-07-11 13:32:00 1095

原创 炸弹人开发日志2007_04_29

今天测试结果:已认可可以使用CL_Socket来完成网络收发数据的功能。(基本上我还是倾向于能用ClanLib本身的功能来完成,因为这样就可以在linux下玩)CL_Socket中的get_read_trigger之类,应该用的是socket的select方法吧.因为在CL_EventTrigger_Socket中能够找到select的函数.另外:get_exception_trigg

2007-04-29 22:13:00 919

原创 2007_02_13炸弹人开发日志

before*XML文件读写*手柄*声音管理*  1.可以不要声音*  2.声音读取错误不影响游戏运行。  the next1.第一个炸弹人图片有些问题2.游戏的玩法  人物选单  结束画面  计分牌3.更多音效4.制做人信息5.日志6.游戏状态这种用法的封装

2007-02-13 16:54:00 924

原创 2007_02_10炸弹人开发日志

as title 

2007-02-10 22:58:00 748

原创 2007_02_04炸弹人开发日志

17:23 2007-2-4今天终于把宠物奖品写好了,宠物有4种(慢龟、快龟、UFO、猫头鹰)就只有个UFO有穿墙的特殊能力。感觉现在写代码有点靠蛮力,嗯 嗯 嗯。接下来的任务有:BUG显视层次问题阴影,因为之前阴影做得不好,在加入宠物功能代码结构问题功能1.把所有与时间有关的地方全部统一用游戏时间。2.提供新有随机数函数(可重复的)3.加入中毒奖品4.改进输入控制,并加入手柄,使用配

2007-02-04 17:37:00 917 1

原创 2007_01_24炸弹人开发日志

解决了两个关于移动与碰撞的BUG:1>BUG描述:当炸弹在接近墙的时候,人就不能从接近墙的那一边把炸弹踢走  原因   :人物在产生碰撞的时候,没有移动到整数格子内           在炸弹碰撞检测的时候加了边介审查,导致直接在边介附近停止,因为移动的碰撞检测           是一但发现则立即停止的严格检查。2>BUG描述:人物在产生平移效果时,可能会产生连续的平移  原因   :人物在

2007-01-24 17:44:00 1097

原创 2007_01_22炸弹人开发日志

目前已经把不需要的资源清理出去了:现在看看游戏中的主要功能:与泡泡堂的差距:1>投弹2>推箱子3>有变化的道路4>中毒5>帐篷6>穿墙7>坐骑8>网络与炸弹人的差距:1>投弹2>中毒3>穿墙4>坐骑6>必杀技7>方向标8>心灵感应9>关卡也就是说炸弹人除了基本规则之外就加了一个 踢弹的功能,并且还有一个BUG!当炸弹在接近墙的时候,人就不能从接近墙的那一边把炸弹踢走。这个应该是当时

2007-01-22 23:59:00 1043

原创 2007_01_13炸弹人开发日志

游戏特性增加:加入踢弹功能,功能描述:当人物"碰到"炸弹时,炸弹能被"踢开",被踢开的炸弹向人物移动的方向"移动",          移动中的炸弹碰到碰撞物或人物时会"停下来"。功能分析/详细功能描述: 1.当人物碰到移动中的炸弹立即停止移动。 2.炸弹停止的位置必须是在整数的坐标内。 3.炸弹在移动的时候,属于"移动中的碰撞物","移动中的碰撞物"需要精确的碰撞检测 4.人物必须在正对着炸

2007-01-14 00:12:00 1040

原创 2007_01_11炸弹人开发日志

最后用的还是最直接的方法,直接用PHOTOSHOP再生成一个MASK图片。 

2007-01-11 23:17:00 1034

原创 在ClanLib中使用blend func

 本文是对Blend Func完全没有认识的人写的,就好象一天前的我一样。 废话我就留到后面才说吧。在ClanLib库中的CL_Surface与CL_Sprite中都会有这个函数:void set_blend_func(CL_BlendFunc src, CL_BlendFunc dest);其CL_BlendFun可以在源代码是看到定义,如下:enum CL_Blen

2007-01-04 15:56:00 1273

原创 2006_12_19炸弹人开发日志

新的任务列表:1.地图选单,要有地图的预浏览2.人物选单3.游戏运行时介面的美化   对玩家信息,游戏时间进行布局   4.增加以圣诞为主题的地图5.增加游戏声音   1.加入声音资源   2.为炸弹加入声音(爆炸时的声音,炸弹运行时的声音)   3.为人物加入声音(移动时的声音,放炸弹时的声音)   4.地图背景音乐6.游戏图片更新   1.人物   2.圣诞主题相关图片   3.游戏地

2006-12-19 18:19:00 1209

原创 2006_12_18开发日志(任务列表更新)

  *1.支持物品组,以实现一个物品能够占用多个方格  *2.读写地图  *3.设置玩家起始位置  *4.放置奖品*5.地图编辑器*6.资源定义文件中加入物品信息的资源定义*7.次源定义文件中加入奖品信息的资源定义*8.物品资源,奖品资源,精灵资源都存放在一个XML数据文件中。下面回到C++(游戏主程序的任务中来)9.    物品资源的加载与该类型对象的生成10.  奖品资源的加载与该类型对象

2006-12-18 11:57:00 1332

原创 206_12_15炸弹人开发日志

目前的正在执行的计划*1.支持物品组,以实现一个物品能够占用多个方格2.精灵编辑3.物品编辑*4.读写地图*5.设置玩家起始位置   *矩形边框颜色   *字体颜色   *字体大小*6.设置背景与碰撞物   7.设置奖品 数据 放弃精灵编辑器,与物品编辑器是因为这两样东西虽然是小东西,却占用了将近一个星期时间。而我发现可能是我对自已需要什么并不是太清楚。工作变成经常翻阅WIN32

2006-12-15 22:13:00 1277

原创 春运将至,各位小心财物

在公交上这么近距离 碰到了抢劫的还是第一次。与事发地点不过两三个身位。整个过程前后不过三分钟,一开始始看到公交上有打斗,我下意识的捂住钱包。我开始还以为是打架,然后一条金链掉在了垃圾桶内。其中有一人快速的从后面挤出来,拣起就跑了。这时我才意识到是抢劫啊。从事发到那人逃跑不到十五秒钟。本来我以为事件完了,那人逃跑之后。司机才把车门关上,这时刚才那几人开始叫嚣:"快把车门打开....."; 正当我

2006-12-08 10:56:00 1660

原创 在Delphi中生成带透明的光标

//默认颜色贱值是粉红色//color_key,用于生成mask的,因为只有bitmap才能生成mask,color_key表示透明部分以什么颜色代替function CreateCursorByGraphic(bm:TGraphic ; const hotx,hoty : Integer;                               const color_key : TColo

2006-12-05 11:17:00 1434

原创 2006_12_01炸弹人开发日志

决定了,不使用色块来做为判断是否为一整体对象。而使用空白的阻碍物来代替。空白的阻碍物没有任何图形,仅仅是在地图上有阻碍而已,而在游戏数据中这种物体则与真正的阻碍物生死相关,以此来实现它们看起来是一整体。因为:1.虽在物体着色我地确是找到方法,也经由我亲自试验是可行的,   但问题是该算法本身与我实际要求有差距,需要对其算法进行更改,可我对这方面的知识非常匮乏,并不能保证我修正后的算法的

2006-12-02 10:21:00 1119

unity3d 换装学习资源

与之前比是完整版, 把资源也包含进去可直接运行于 unity3d 3.4.0f5

2013-10-07

unity3d 换装学习代码

去除了资源加载的代码,仅仅保留最基本的换装。 学习用的, 中间缺乏的资源使用官方例子 CharacterCustomization 中的 characters目录做成资源 导入即可

2013-10-07

bomman_网络测试版2

与之前的网络测试版相同,解决了部分常见BUG

2007-09-10

bomman v1.2 beta2 网络测试版(这个有些BUG,应该删了!)

如果你要编译原代码的话,需要clanlib库 与之前相比,多加了个网络对战功能. 这下就可以同朋友玩啦,不过问题还有很多. 希望在录象功能再次激活的时候都可以解决掉!

2007-09-01

Bomber_Res

as tileas tileas tileas tileas tileas tileas tile

2007-04-03

代码片断代码片断代码片断

as title as title as title as title

2007-03-17

仿泡泡堂单机版

使用ClanLib+Vc6.0开发的模仿泡泡堂的小游戏

2007-03-05

空空如也

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

TA关注的人

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