大坡3D软件开发

关注3D软件技术

蔡军生ID:caimouse
1065350次访问,排名22好友197人,关注者224
C++,3D,VC++软件开发,写技术文章,操作系统开发
caimouse的文章
原创 573 篇
翻译 0 篇
转载 41 篇
评论 699 篇
蔡军生的公告

点击这里给我发消息

MSN: caimouse1976 at sina.com

最近评论
csdas22as:蔡军生先生才对。
csdas22as:蔡军生,对不起呀,名字写错了。
cxdzxc:如果能进行内存测试和启动显卡,悬赏更高!
cxdzxc:悬赏1000元,请楼主给一个清空BIOS,点亮键盘灯的代码,QQ号740347821,邮箱750347821@QQ.COM,电话:13639342048
zhangjie830621:蔡老师,好久没有在Q上看到你,今天又从你的BLOG上,受益了!
文章分类
收藏
相册
3D引擎
第二人生
开发板
历史回忆
常用连接
C++大师Stan Lippman(RSS)
MCU连接(RSS)
REACTOS开发网(中国)
人生历程
存档
软件项目交易
订阅我的博客
XML聚合  FeedSky

第二人生深入介绍、分析和研究第二人生游戏的实现,以及相关内容。

原创 第二人生的源码分析(109)脚本的语法分析(3) 收藏

下面来详细地分析语法分析相关的类,以便了解整个语法分析的过程和细节,这样也方便地复用第二人生里的脚本编译器,达到源码复用的目标。先来分析类LLScriptFilePosition,它的声明代码如下:阅读全文>

发表于 @ 2008年07月24日 21:52:00|评论(loading...)|收藏

原创 第二人生的源码分析(106)脚本的词法分析(4)收藏

前面介绍了flex文件的格式,那么flex程序又把这个文件生成怎么样的文件呢?下面就来仔细分析这个文件,由于flex程序生成C++的文件格式,那么就需要C++的编译器才可以编译了。它的代码如下:阅读全文>

发表于 @ 2008年07月15日 23:35:00|评论(loading...)|收藏

原创 第二人生的源码分析(104)脚本的词法分析(2)收藏

接着上一次,再来分析flex文件的下一部份:规则部份。它们由一连串带有代码的正则表达式组成,当匹配相对应的正则表达式时,这些代码就会被运行。下面就一段规则的代码:阅读全文>

发表于 @ 2008年07月11日 22:25:00|评论(loading...)|收藏

原创 第二人生的源码分析(103)脚本的词法分析(1)收藏

从前面的脚本可以看到它的代码,也理解它的意思了,但是它是怎么样执行的呢?又是怎么样变成可执行的脚本呢?下面就来分析这部份相关的代码。要了解脚本执行,就得把脚本中的每一个单词识别出来,如下:阅读全文>

发表于 @ 2008年07月10日 22:32:00|评论(loading...)|收藏

原创 第二人生的源码分析(102)脚本的构造收藏

前面我们学习怎么样打开窗口来创建脚本,接着下来就需要知道这些脚本是做什么用的,这样最终才会按它的语义来正确地执行起来。阅读全文>

发表于 @ 2008年07月07日 22:10:00|评论(loading...)|编辑|收藏

原创 第二人生的源码分析(101)脚本的初步知识收藏

哲学里说,世界是永远在运动的。那么在现实中人们对软件的需求是永远在变化的,为了对付这种不断变化的需求,有什么好方法吗?难道还是像过去一样,每一个需求都是发布一个版本来解决?随着市场竞争的激烈化,满足每一个用户个性化需求,就需要考虑一种办法让用户自己去改变的游戏世界里的东西了。在第二人生里,就引入了脚本语言来解决不同用户的需求的变化,而不必重新发布新程序。有了脚本系统之后,用户想创建一个飞机在游戏里飞来飞去,就非常简单了,只要写几行脚本代码,就可以控制飞机移动了。比如还可以创建一些物体,当不同的用户来点击它时,就弹出不同的欢迎标语,这样更加具有人性化的表现。阅读全文>

发表于 @ 2008年07月04日 20:00:00|评论(loading...)|编辑|收藏

原创 第二人生的源码分析(100)雷达地图详细显示收藏

前面已经介绍雷达地图的类声明,现在就来仔细分析一下雷达地图是怎么样显示出来的。雷达地图显示函数LLNetMap::draw代码如下:阅读全文>

发表于 @ 2008年07月02日 21:00:00|评论(loading...)|编辑|收藏

原创 第二人生的源码分析(九十九)雷达地图的实现收藏

无论是在2D的游戏里,还是在3D的游戏里,雷达地图的实现,都是比较基本的功能了。因为随着游戏世界里越来越大,参加的玩家也越来越多,需要一个大体的地图来让玩家方便地看到全局的概貌。比如在打对战的游戏里,更加需要了解别人在那里战斗了。有了雷达地图之后,就可以让玩家更加方便地了解全局地图上发生的事情,也方便玩家相互查找,也让玩家不会走迷路。下面就来了解第二生里的怎么样实现雷达地图的实现,它的显示界面如下:阅读全文>

发表于 @ 2008年07月01日 21:30:00|评论(loading...)|编辑|收藏

原创 第二人生的源码分析(九十八)LLIconCtrl实现图标按钮显示收藏

在前面已经介绍过文字按键的实现,这里主要实现一个图标按钮的实现,如下图里右下角显示的喇叭显示和向上选择的按钮,都是图标显示类型的按钮。阅读全文>

发表于 @ 2008年06月30日 21:17:00|评论(loading...)|编辑|收藏

原创 第二人生的源码分析(九十七)LLSlider实现音量滑动条收藏

由于第二人生是多媒体的程序,因此它有音乐播放和语言聊天,那么就得使用到一种滑动条来调整音量的大小,如下图所示:阅读全文>

发表于 @ 2008年06月22日 23:16:00|评论(loading...)|编辑|收藏

原创 第二人生的源码分析(九十六)LLMenuItemGL实现菜单的显示收藏

在第二生里,菜单是缺少不了的。菜单提供了简单层次关系的一种表达方式,方便表达复杂的层次关系,并且方便写说明书,方便售后服务人员的描述,方便培训。因此,在一个程序没有菜单,往往带来很多不方便的地方。登录界面的菜单如下图:阅读全文>

发表于 @ 2008年06月20日 23:12:00|评论(loading...)|编辑|收藏

原创 第二人生的源码分析(九十五)LLCheckBoxCtrl类实现复选按钮收藏

在第二人生的登录界面里,可以看到输入密码的下面有一个复选按钮,如下图所示:阅读全文>

发表于 @ 2008年06月19日 23:35:00|评论(loading...)|编辑|收藏

原创 第二人生的源码分析(九十四)LLTextBox类实现文本显示收藏

在登录的画面里,可以看到程序的版本显示,那么它是怎么样显示出来的呢?现在就来分析显示这个版本号的代码,其实它是由静态文本显示框LLTextBox来显示的。比如在登录时创建版本显示的代码如下:阅读全文>

发表于 @ 2008年06月18日 23:04:00|评论(loading...)|编辑|收藏

原创 第二人生的源码分析(九十二)LLLineEditor实现编辑框收藏

在基于GUI界面的软件交互时,最基本的输入就是编辑框了,比如下图里输入的用户名称和密码,在游戏界面的编辑框里输入文字是一个高技术难度的问题,因为Windows输入法调用,也是难点之一。 那么在第二人生里的用户名称和密码的编辑框是怎么样实现的呢?现在就来分析这部份的代码,它的类继承关系如下:阅读全文>

发表于 @ 2008年06月16日 21:57:00|评论(loading...)|编辑|收藏

原创 第二人生的源码分析(九十一)LLScrollListCtrl列表的详细绘制收藏

从前面可以看到怎么样绘制滚动列表框的代码,但在那个函数里面还调用一个函数drawItems来详细地绘制列表项的,现在就来分析这个函数的代码,如下:阅读全文>

发表于 @ 2008年06月15日 21:04:00|评论(loading...)|编辑|收藏

Csdn Blog version 3.1a
Copyright © 蔡军生