Console
文章平均质量分 68
chenchao868
These walls are kind of funny like that. First you hate them, then you get used to them.Enough time passed, get so you depend on them. That’s institutionalizing.
展开
-
标准模板库(STL)学习指南之List容器
什么是STL呢?STL就是Standard Template Library,标准模板库。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list,vector,set,map等,STL也是算法和其他一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。 STL的目的是标准化组件,这样就不用重新开发,可以使用现转载 2005-04-20 11:10:00 · 1191 阅读 · 1 评论 -
考察数据结构 第二部分:队列、堆栈和哈希表[译]
本文是"考察数据结构"系列文章的第二部分,考察了三种研究得最多的数据结构:队列(Queue),堆栈(Stack)和哈希表(Hashtable)。正如我们所知,Quenu和Stack其实一种特殊的ArrayList,提供大量不同类型的数据对象的存储,只不过访问这些元素的顺序受到了限制。Hashtable则提供了一种类数组(array-like)的数据抽象,它具有更灵活的索引访问。数组需要通过序数进行索引,而Hashtable允许通过任何一种对象索引数据项。转载 2011-01-26 18:06:00 · 1071 阅读 · 0 评论 -
Objective-C持有计数(Retain Count)
Objective-C使用了一种叫做持有计数(Retain Count)的机制来管理内存中的对象。 在 Objective-C中每个对象都对应着他们自己的持有计数(Retain Count),持有计数可以理解为一个整数计数器,当使用alloc方法创建对象的时候,持有计数会自动设置为1。当你向一个对象发送retain消息时,持有计数数值会增加。相反,当你像一个对象发送release消息时,持有计数数值会减小。当对象的持有计数变为0的时候,对象会释放自己所占用的内存。转载 2011-02-22 13:17:00 · 1268 阅读 · 0 评论 -
Objective C简单介绍
XCode:你可以把它看成是一个开发环境,就好像Visual Studio或者Netbeans或者SharpDevelop一样的玩意。你可以将Interface Builder认为是Visual Studio中用来画界面的那部分功能单独提出来的程序。Objective-C:这是一种语言,就好像c++是一种语言,Java是一种语言,c#是一种语言,莺歌历史也是一种语言一样。Cocoa:是一大堆函数库,就好像MFC、.NET、Swing这类玩意,人家已经写好了一堆现成的东西,你只要知道怎么用就可以了。转载 2011-02-23 15:53:00 · 1035 阅读 · 0 评论 -
OpenGL性能优化
今天我将结合OpenGL状态机和一个典型的D3D9硬件体系结构探讨如何对OpenGL应用程序的性能进行优化。MSDN的OpenGL帮助也提到了关于性能优化方面的问题,但是这已经是多年以前的article,而随着图形加速硬件的发展,许多新的技术不断涌现,我们应该跟上时代发展的步伐。转载 2011-03-11 17:45:00 · 2197 阅读 · 0 评论 -
OpenGL Blend的高级教程
混合是什么呢?混合就是把两种颜色混在一起。具体一点,就是把某一像素位置原来的颜色和将要画上去的颜色,通过某种方式混在一起,从而实现特殊的效果。转载 2011-03-11 18:05:00 · 891 阅读 · 0 评论 -
CString实现原理
Cstring是对于原来标准c中字符串类型的一种的包装。因为,通过很长时间的编程,我们发现,很多程序的bug多和字符串有关,典型的有:缓冲溢出、内存泄漏等。而且这些bug都是致命的,会造成系统的瘫痪。因此c++里就专门的做了一个类用来维护字符串指针。标准c++里的字符串类是string,在microsoft MFC类库中使用的是Cstring类。通过字符串类,可以大大的避免c中的关于字符串指针的那些问题。这里我们简单的看看Microsoft MFC中的Cstring是如何实现的。当然,要看原理,直接把它转载 2011-03-14 11:52:00 · 753 阅读 · 0 评论 -
纹理的滤波方式
我们的纹理是要贴到三维图形表面的,而三维图形上的pixel中心和纹理上的texel中心并不一至(pixel不一定对应texture上的采样中心texel),大小也不一定一至。当纹理大于三维图形表面时,导至一个像素被映射到许多纹理像素上;当维理小于三维图形表面时,许多个象素都映射到同一纹理。当这些情况发生时,贴图就会变得模糊或发生错位,马赛克。要解决此类问题,必须通过技术平滑texel和pixel之间的对应。这种技术就是纹理滤波。转载 2011-03-14 16:56:00 · 5076 阅读 · 0 评论 -
用GDB调试程序
GDB是一个强大的命令行调试工具。大家知道命令行的强大就是在于,其可以形成执行序列,形成脚本。UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优势在于,它们可以非常容易的集成在一起,使用几个简单的已有工具的命令,就可以做出一个非常强大的功能。转载 2011-05-17 15:24:00 · 1443 阅读 · 0 评论 -
Boost 使用方法
关于Boost库的使用网上有很多文章介绍,但随着boost的发展,一些老的方法已经失效,这里列出最新的使用方法备查!原创 2011-01-25 15:43:00 · 4958 阅读 · 0 评论 -
Google Protocol Buffer 用法
在网上查了一下,虽然有很多文章介绍Protocol Buffer,但是实际使用起来,还是会遇到很多问题,所以我想应该有一个指南一样的东西,让新手很快就能使用它。Protocol Buffer简写为Protobuf,是Google开发的一种储存数据的方式,功能与XML一样,但更方便,数据量更小,速度更快,在序列化和反序列化的时候使用,有很大的优势。比如,网络游戏的通讯协议编写。更重要的是,它是一个开源项目。原创 2011-01-19 16:58:00 · 4192 阅读 · 0 评论 -
如何安装STLPORT?
从www.stlport.org下载最新的STLPORT(4.6.2),并解压他。打开一个 命令行程序(注意:在WINDOWS NT/2000/XP中,是cmd.exe 而不是commamd.com),并改变他的路径STLPORT-4.6.2/SRC如果你使用VC,请确定‘VCVARS32。BAT’是否运行在devstudio/vc6/bin or visualstudio.net/vc7/bin转载 2005-04-20 11:48:00 · 1472 阅读 · 0 评论 -
新的开端
今天怀着无比崇敬的心情开始了《地狱邻居2》的移植工作了,好几年前花了几个通宵打爆这个游戏,想不到今天能有机会制作这个游戏的NDS版本,真是世事难料呢! 说是移植,要做的工作还真不少,发行商给我们了PC、PS2和XBOX版本的源代码,可是一个都不好用,因为技术平台不同,各个版本的资源和剧情都不一样,真是!感慨一下,原来这种世界级的游戏,版本控制也这么混乱!不管怎么说,这件事情都值得记录一下,原创 2008-03-25 16:33:00 · 1153 阅读 · 1 评论 -
Nintendo DS 系统总览
本文属于内部资料,希望各位阅读者自觉遵守任天堂的保密协议,请勿以任何形式转载!仅供学习交流之用!本人在翻译的时候尽量忠实原文,因此有很多废话,并未按照中文语法书写!如有疏漏,请告知!1 前言NINTENDO NITRO-System是对Nintendo开发工具和库的通称,使用它可开发Nintendo游戏软件。游戏开发者能自己建立游戏内容。所以目标是发展这个系统,以提供给游戏软件开发的基本工具和库,翻译 2008-03-25 16:21:00 · 2200 阅读 · 0 评论 -
Nintendo DS(NDS) 开发环境配置教程
首先要到任天堂的开发网站(http://www.warioworld.com/)上下载相关开发包。在首页上点击NDS,就弹出登陆画面了,需要输入你的用户名和密码登陆网站。如果没有账户怎么办呢?可以到这里注册:https://www.warioworld.com/createaccount.html点击“我同意”就可以看见提示:Note: Only licensed Nintendo Develop原创 2008-03-25 16:31:00 · 12064 阅读 · 5 评论 -
我的PSP游戏
符合中国人品味的psp,不能说是一台很好的游戏机,但是应该能称作一台不错的mp4吧,我试图让它能表现出更多的特性,比如一台学习机?呵呵,谁知道呢!看样子还是有很多人喜欢我做的这个东西CET4不过现在.....都不想碰它了,真是极大的反差呀。其实不是我没有恒心毅力,实在是开发跟不上sony的更新速度,操作系统版本从1.50一路飙升到3.72,更新速度之快实在让我应接不暇,这都归功与那些黑客不停的破解原创 2008-03-25 17:17:00 · 6418 阅读 · 7 评论 -
CodeWarrior新建NDS项目配置
打开CodeWarrior选择新建项目,如果安装好了NDS的SDK,则会有NDS应用程序选项,选好SDK版本,点确定,新建完毕! 然后将其他的文件copy到当前项目目录下,官方范例一般是三个目录 src include data,前面两个不用说了,最后一个data很容易忘记,一般nds程序跑起来都需要数据文件,都在这个目录中,需要注意,此目录必须打包的时候一起打到ROM中去,否则程序跑起来原创 2008-12-30 14:35:00 · 1925 阅读 · 1 评论 -
小游戏坦克大战游戏设计
本设计只提供一个概括性的思路,具体实现过程中仍然存在修改和优化的可能,具体实现也可能有所不同,更多的作用是让我们大致了解这些功能模块之间的关系。 本周工作主要集中在地图编辑器上,地图编辑器是游戏中最重要的组成部分之一,但设计相对独立,因此我们现在就着手制作。地图编辑器功能点概要:以Tile方式拼接地图每个Tile中心放置一个节点相邻的Tile有边相互连接原创 2009-07-03 13:22:00 · 1193 阅读 · 0 评论 -
向量的旋转
基础的2-D绕原点旋转在2-D的迪卡尔坐标系中,一个位置向量的旋转公式可以由三角函数的几何意义推出。比如上图所示是位置向量R逆时针旋转角度B前后的情况。转载 2010-11-18 20:26:00 · 1180 阅读 · 0 评论 -
从有限状态机、图灵机到现代计算机
转自:http://blog.sina.com.cn/s/blog_64ac3ab10100ges2.html 一、有限状态机 引子让我们先来看几个简单的概念:状态 - 系统的基本数学特征。状态机 - 一个离散数学模型。给定一个转载 2011-09-29 13:18:19 · 26166 阅读 · 0 评论