自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

三大编程语言的性能PK--Java, C/C++和Ruby (原文最终修订于 2006-09-05 下午06:19:40)...

译者序本文虽然标题略有争议,但Bob大叔撰写此文并非是要说明Java>C/C++>Ruby,而是延续上篇“性能调优--永远超乎想象”的风格,借以说明程序的性能一般都超乎我们想象的观点,因此请读此文的C/C++爱好者少安毋躁:-)正文你可能会觉得下面的图表比较有意思,因为它是分别用三种编程语言(Ruby, Java, C/C++)写的埃拉托色尼质数过滤算法(译注:Sieve ...

2006-08-30 11:36:00 125

性能调优--永远超乎想象 (原文最终修订于 2006-08-28 晚上11:48:38)

多年以前,我在开发一个C++的应用程序。我的同伴Jim Newkirk(当时的)过来告诉说,我们的一个公用函数运行得非常的缓慢。这个函数是用来转换二进制的树结构数据为普通文本,并存储到文件中的。(这是在XML出现之前,但概念类似于XML) 我审视了这个函数一会儿,发现了一个线性查找算法,于是毫无疑问的将这个线性查找算法替换为二分查找法(译注:binary search),然后就把这个函数交回给...

2006-08-28 13:30:00 96

计算机游戏设计的艺术(1)

不得转载!translation management by puzzy3d计算机游戏设计的艺术Chris Crawford电子版前言(略)peabody@vancouver.wsu.edu. 目录 1感谢。序 1。第 1 章 -什么是游戏? 3 。第 2 章 - 人们为什么玩游戏? 11。第 3 章 - 电脑游戏的分类法。第 4 章 – 作为一种游戏技术的计算机。第 5 章 - 游戏设计顺序...

2006-08-27 12:36:00 545

改善游戏质量保证部门的10大诀窍

原文《Top 10 Tips on How to Improve a Game Quality Assurance Department》By Phillip DeRosa,请不要转载!我是加拿大BioWare公司Alberta的质量保证部的指导(BioWare开发了武打项目 Jade Empire和科幻项目 Dragon Age)。本文是关于改善质量保证方法的实际窍门(包括发现电视游戏的臭虫和标...

2006-08-27 11:36:00 118

《计算机游戏设计的艺术》第二章

原书在:http://www.vancouver.wsu.edu/fac/peabody/game-book/Coverpage.html。请人帮忙翻译了第二章。请不要转载!人们为什么玩游戏?幻想/探险蔑视指责证实自己社会润滑剂锻炼需要承认总结动机和选择的比较游戏可玩性感官的满足个人口味人们为什么玩游戏。玩游戏有2个组成部分:游戏和玩家。游戏设计者的工作是生产游戏,她的当务之急是游戏本...

2006-08-27 11:30:00 122

软件分析 Vs. 架构设计 (原文最终修订于 2006-05-29 下午06:44:14)

何谓软件分析(analyse)?它有没有一个成文的定义?如果你曾读过软件教科书或是著作,就会发现有多少个作者,就有多少种分析的定义。具有讽刺意味的是,我们知道软件分析是必不可缺的,但却没有其真正的定义。一个用来区分软件分析与设计(design)的普遍方法是认为分析指“做什么”,而设计指“怎么做”。乍听起来很有信服力,很显然,如果能在一开始就知道想要系统“做什么”,那至于系统应该“怎么做”就会更...

2006-08-24 15:53:00 59

OO难题在Ruby中有了新解 (原文最终修订于 2006-08-21 凌晨02:27:38)

单一职责原则(SRP)认为,一个类应该有且只有一个改变的原由。换个说法,一个类中的方法应该出于同样的一种原由而改变,它们不应被不同原由所驱使,而导致朝着不同的方向改变。举个例子来说,考虑一下以下的Java类:class Employee{ public Money calculatePay() {...} public void save() {...} public String rep...

2006-08-23 16:23:00 81

收集3d相关中文blog相关信息的地方之一

http://789vr.com/tech/arithmetic.htm颇有些网站以收集网络上爱好者写的相同类型文章为营生。也不错。。。。

2006-08-23 13:11:00 50

如何让Ruby代码更简练?!(原文最终修订于 2006-08-18 下午02:42:25)

你可以用它来做什么呢?请阅读...我四前年曾接触过Ruby,就是为了看看这个语言到底什么样。我用了它一段时间然后就把注意力放到Fit,Fitness(译注1),和Java/.Net上了。然而最近,随着Rails的兴起,我又开始关注Ruby了;也开始认识到这是一个多么高效、亲和的语言。学习一项事物最有效的还是通过实战学习。所以我决定从一个Ruby的Kata(译注2)开始,这样就可以反复去练习...

2006-08-22 10:26:00 64

关于游戏软件制作的工艺与工程(5)

PUZZY3D产品过程现实中,软件工程,电影/音乐制作工程,游戏规则(世界设定,数据设定,关卡设定,脚本设定等)/玩具设计工艺,成为游戏软件产品制作必须的部分。游戏公司不像一般软件公司只有程序员。而是分成技术,美术,策划三大部门,每部门内部又会分成十几小部分(比如美术,分为原始设定,草图,线稿,色稿,角色设计,场景设计,特效设计,3D建模,蒙皮,贴图,动作,表情,关卡设计,特效制作,镜头设...

2006-08-18 22:17:00 121

关于游戏软件制作的工艺与工程(4)

PUZZY3D三,交互谁了解玩具的制作过程。谁可以由现成的公理,推出一个经受住千万人考验的插片玩具,或者是积木的大小。以保证此玩具被多数人接受并且乐于掏钱购买并且使用?游戏,其生命在于创造一种规则,使得人与游戏世界(或人)的交互充满乐趣,挑战,竞技,但最后还是乐趣。这是游戏的根本。著名的软件游戏规则D&D是由桌面纸牌的设计而来。这揭示了两者之间的必然联系。游戏策划相当于玩具工艺...

2006-08-18 22:13:00 54

关于游戏软件制作的工艺与工程(3)

PUZZY3D二,娱乐有谁能针对一首音乐好听与否给出详细的理论推断?用和声学的理论证明,还是曲调做法?有谁能对上亿元拍摄的电影给出学术性的理论分析,从而事先得到其投入产出比例,和大众喜闻乐见的精确衡量数值?游戏,最后只是一件娱乐产品。是否娱乐用户,是检验游戏产品成功与否的唯一标准。传统3D动画片制作,使用创意设定,风格设定 ,原画,脚本设定,分镜设定,音乐制作,音效制作等流程。游戏制作...

2006-08-18 22:12:00 62

关于游戏软件制作的工艺与工程(1)

PUZZY3D前述关于游戏制作过程,只使用软件工程范畴来定义,很难从广度和复杂性上描述清楚。如何操纵、控制、完成一个游戏产品的制作,是一个很复杂的问题。回到1968年“软件工程”第一次被提出时,当时电脑游戏的概念还远不完整,甚至没有诞生。而今一个大型视频游戏的制作规模和成本直逼好莱坞大片,无数游戏开发项目在deadline上苦苦挣扎。翻阅DGM(《游戏开发者杂志》)的《制作案例精选》栏目时...

2006-08-18 22:10:00 70

关于游戏软件制作的工艺与工程(2)

PUZZY3D一,软件关于如何进行软件的工程,可以参考“http://www.sei.cmu.edu”(卡内基梅龙大学,世界首创学院把软件工程当作研究课题,同时现在拥有世界最著名的游戏学院,恩,和国内社会大学有区别),http://www.computer.org/tse以及国内的http://www.51cmm.com这些软件工程网站。游戏所用到技术的广度及深度,也许更甚。因为网络游戏...

2006-08-18 22:10:00 86

TDD的三条军规 (原文最终修订于 2006-04-09 晚上09:45:01)

这些年来,我喜欢用下面这三条简单的规则来描述测试驱动开发:除非这能让失败的单元测试通过,否则不允许去编写任何的产品代码。 只允许编写刚好能够导致失败的单元测试。 (编译失败也属于一种失败) 只允许编写刚好能够导致一个失败的单元测试通过的产品代码。 对于任何功能,一定要从编写它的单元测试开始;但是到了原则2,你就不能再为那个单元测试写更多内容。只要一出现该单元测试...

2006-08-17 16:52:00 77

Realtime Shadow Rendering Log(2)

Shadow Volume对于遮挡物几何拓扑关系信息的要求,是此方法最大弊病。无论skin还是变形mesh,甚至只要物体或灯一动,都必须重新背面剔除着寻找轮廓,重新生成volume三角形等等繁重几何体力劳动。由于算法所注定,用volume者,身心具勤也....Soft Shadow Volume: 软阴影方面,利用volume的几何属性,可以根据面光源大小,真的切出些模仿半影空间来。来看看画条轮廓...

2006-08-17 04:10:00 59

Realtime Shadow Rendering Log(1)

计算机图形学中,实时阴影分两类:Shadow Volume和 Shadow Maps。其本质为找到屏幕中未被光源照射到的象素,在绘制光照物体时,忽略这些象素。阴影的要素由光源,遮挡物与接受物组成。遮挡物也是阴影接受物之一。阴影与阴影空间的形成: 以光源为中心(或为方向),凡是被遮挡物表面遮挡掉的空间,都处于阴影之下。在没有接受物时,此空间分为两个部分。光照空间和阴影空间。阴影空间为:光源与遮挡物面...

2006-08-17 03:41:00 155

微软眼中的TDD (原文最终修订于2006-06-11,下午03:20:52)

微软最近发布了测试驱动开发的方案(点击这里)。这些方案与Visual Studio 2005 Team System的使用密不可分。老实说,我对他们试图去把他们自己的工具与TDD(译注1)绑定起来并不觉得什么。他们是个商业机构,而这就是一种商业行为。让我觉得什么的,是他们如此完全的曲解了TDD,甚至反其道而行之。如果工具不支持TDD(它的确不能)的话,他们不应该声明它能够。在最近一篇blog(...

2006-08-16 16:56:00 185

有趣的软阴影PAPER之间互评

2006年出了两篇关于SOFT SHADOW MAPS论文:《Soft Shadow Maps: Efficient Sampling of Light Source Visibility》和《Real-time soft shadow mapping by backprojection》他们不同大学分别做出的类似技术。都是使用SHADOW MAPS处理和模糊阴影边缘。软阴影方面虽然SHADOW ...

2006-08-16 02:16:00 81

用Rails将敏捷Web开发进行到底! (原文最终修订于2006-08-14,凌晨03:49:12)

前些天我正好有时间学习Rails(译注1)。我就去了《用本主义程序员》的(译注2)网站(http://www.pragmaticprogrammer.com),而且购买了beta版的《用Rails进行敏捷web开发》。我于是就开始了阅读。这本书从初阶开始(就像大多数好书一样)。它指导你通过Ruby(译注3)和Rails的安装和设置,而且还提供给你一些简单的示例和测试让你可以确保你所运行的是正确...

2006-08-14 20:23:00 74

SQL Server 2005的XML数据修改语言(XML DML)

作为对XQuery语言的扩展,XML DML为XML数据操作提供了更大的灵活性,而不再仅仅是对XML数据进行一些查询操作。通过XML DML,用户可以像操作关系表一样对XML中的节点内容进行插入、更新和删除操作。XML DML需要通过xml数据类型的modify方法进行调用。1.insertinsert用于将Expression1标识的一个或多个节点作为Expression2标...

2006-08-14 13:21:00 64

敏捷开发的精神内涵 (原文最终修订于2006-08-11 上午10:49:50)

从根本上来说,所有的敏捷开发实践,诸如TDD(译注1)、结对编程(译注2)、持续集成(译注3)和重构(译注4),都有一个统一的观念--永远不被阻拦。这就好像是一个优秀的撞球选手总要确保他的每一次击球都能为下一击创造好机会,每个优秀的敏捷开发者每有一点进展也都要确保下一步。一个优秀的敏捷开发者决不会走出一步,然后就无法再有进展,或是让别人没办法再有进展。那你怎么知道你的进度停下来了呢?如果你无法...

2006-08-11 15:45:00 67

架构设计--仅是软件开发之第二大影响力?! (原文最终修订于2006-07-01 凌晨03:20:31)...

SDWest2006(译注1)对我来说是个有趣的大会。我除了星期三之外(当时我正飞往费城参加一个客户会议 == 因此错过了Jolt颁奖部分)每天都在演讲。我也参加了一些谈话和会议;其中最引人关注的是Mike Cohn的计划与估算的谈话。我的两个谈话都是半天的关于Ood原则的导引。这些谈话都参与的非常好,现场反映也很热烈。这里是我谈话的几份演讲稿:类设计之高级原则 在OO设计中,掌控类间组合...

2006-08-10 17:44:00 73

Java枚举,酷! (原文发表于2006-04-25 下午01:13:48)

当我头一次看到Java 5中的新登场的枚举类型(译注:enum)时,我还是持怀疑态度的。这些枚举类型允许你定义成员和方法(译注:variables and methods),甚至是抽象方法!你能用它来做什么呢?嗯,我现在已经找到了这个问题的答案。(至少是部分的)在评阅和改进外面的一些源码的过程中,我有机会找到了一组用来代表月份的私有静态常量(译注:static final constants)...

2006-08-10 14:55:00 56

跋涉于代码的泥潭之中 (原文发表于2006-06-02 下午04:45:17 )

我正在写一本叫做净化代码(译注:Clean Code)的书。这本书里满载了各种代码示例;有的较短,有的较长。在我看来,如果你想教人如何写出好代码,你就必须给他看很多代码示例。一个我的评论者抱怨说, 他觉得不是一定要“跋涉于代码的泥潭之中”。这种说法让我感到吃惊,这种话以前我也听过很多次,不知道源自何处;不过这倒是很容易解释通,如果我们“跋涉”于代码的泥潭之中,那么代码一定如同泥沼、湿地、或是那...

2006-08-09 11:31:00 63

绿色护腕 (原文发表于2006-06-10 下午01:14:07 )

我已经收到了很多的请求,是关于测试优先(译者注:TEST FIRST,一种敏捷开发所倡导的优秀方法)绿色护腕(译者注:Green wrist-band,一种优秀敏捷人的荣誉)的。如果你也想要一个的话就发信过来,要贴邮票,写上你自己地址:Green Wrist BandObject Mentor Inc.1800 Nations DriveSuite 215Gurnee, IL,...

2006-08-08 17:40:00 76

SIMD(SSE、)优化的数据对齐

SSE和SSE2,3指令,一般需要处理的数据是16字节对齐。有两种方法。1,当使用MMX/SSE/SSE2操作以字节为单位的BUFFER时,比如MEMCPY,MEMSET之类的,利用64/128BIT操作指令加快拷贝过程。输入的数据不一定要求8/16字节对齐。在汇编代码中,对数据掐头,去尾,找到16字节对齐开始和结束的数据段位置,使用MMX/SSE/SSE2 进行64/128BIT操作。然后使...

2006-08-06 03:20:00 495

当心:工具的美貌 (原文发表于2006-06-29 下午12:12:33 )

我这周在芬兰的弗罗茨瓦夫(译者注:Wroclaw)为一位客户作咨询。(那是过去叫布雷斯劳(译者注:Breslau)的德国城镇,而现在发VRAHT-swahf的音。)这周末我拜访了这里的考古博物馆,就在城镇的广场旁。当我观看这博物馆的时候,我被那些创造箭、钩、斧子、罐、篮子和所有其他日常生活中的物品的远古人类的细心所震撼了。这些物品肯定曾花去几小时、几天、或是几周去创建;而且那个时代的人民也认为所花...

2006-08-02 15:17:00 73

敏捷人还没接受它么?!(原文发表于2006-07-31 上午07:27:59 )

本文是对Cedric发贴的回复一些赞成Cedric提出了一些不错的观点,尤其是指出了如果敏捷开发的“传道士们”只使用教条的论点,而不去接触那些遇到实际的问题的真实的开发者,那么他们就没法再将敏捷进行到底。早期的接受者已经采纳了;而下一代是比较摇摆不定的,想影响他们我们就必须用更强的与现实开发紧密相连的论点。然而,我非常不赞成Cedric所提的关于“风险的考量”的观点。从我的...

2006-08-01 15:03:00 60

空空如也

空空如也

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

TA关注的人

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