<?xml version="1.0" encoding="UTF-8"?>
  <feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html"><![CDATA[诡辩生活]]></title>
  <subtitle type="html"><![CDATA[游戏::Ogre::Gamebryo::游戏引擎::图形学]]></subtitle>
  <id>http://www.guibian.com/</id>
  <link rel="alternate" type="text/html" href="http://www.guibian.com/" /> 
  <link rel="self" type="application/atom+xml" href="http://www.guibian.com/atom.asp" /> 
  <generator uri="http://www.pjhome.net/" version="2.8">PJBlog3</generator> 
  <updated>2010-02-27T01:07:00+08:00</updated>

  <entry>
	  <title type="html"><![CDATA[讲讲学拓扑的心得吧]]></title>
	  <author>
		 <name>volfmath</name>
		 <uri>http://www.guibian.com/</uri>
		 <email>volfmath@gmail.com</email>
	  </author>
	  <category term="" scheme="http://www.guibian.com/default.asp?cateID=6" label="Tech" /> 
	  <updated>2010-02-27T01:07:00+08:00</updated>
	  <published>2010-02-27T01:07:00+08:00</published>
		  <summary type="html"><![CDATA[先讲讲我用的书吧，北大尤老师的那本红书和熊金城《点集拓扑讲义》，另外一本Armstrong的拓扑学。个人觉得尤的书跟熊的那本比还是不太好，熊的那本至少在点集拓扑上讲的算是非常好了，由于我的水平有限，目前也就懂点点集拓扑的东西，对代数拓扑还模模糊糊。。。Armstrong的那本非常不错，重点推荐。特别是Hausdorff空间那块讲的非常不错。另外这本拓扑学是UTM套书之一，也可以从一个侧面看出他的价值。<br/><br/>一个优秀的科学工作者，会把复杂抽象的东西说的很平民化。而一个三流的科学从业人员，象我国的大部分高校教师往往会把一个简单的问题说的复杂，这就是差距。其实我们经常在给别人讲一个问题的时候也常常遇到，究其缘由就是对知识理解的不深刻。当你透彻的掌握一个问题的时候，你就会旁征博引，分析的非常透彻。<br/>Armstrong就是这样的一个大家，虽然拓扑学严谨形式化的东西很多很多，但在Armstrong的笔下显得生动有趣，第十章虚拟的一段代数学家和几何学家的对话也表现出作者更加注重对几何直观的认识，而避免落入纷繁的代数细节中去。<br/><br/>第一章从Euler定理讲起，谈到欧拉示性数。然后从很多拓扑不变性的难以计算向我们展示了引入拓扑的动机。后面一章自然而然的提到了连通性，比较复杂的地方是新手对紧致性的理解。这是因为我们生活的空间太完美了，Hausdorff, 局部紧致, 单连通，完备，还有一套线性代数结构，良好定义的度量，范数，与内积。太美的，以至于我们对很多理所当然的东西产生了惯性，或者说是一种审美疲劳。我始终觉得紧致是上帝送给我们的礼物。掌握了紧致对拓扑也就有个大概的认识了。<br/><br/>再后面是从代数角度入手，从基本群角度对拓扑空间进行刻画。虽然依赖直观，但是有了群，我们就能更好的描述拓扑不变性了。末尾是一个比较难处理的地方。因为同调群从引入到几个重要定理的证明，其中涉及了一个比较长的动机不明显的准备过程，往往使我们觉得太过于抽象，而对拓扑本身是去兴趣，这个地方一定要多加小心，过了这关，后面有很多有趣的应用在等着我们呢。Armstrong这里处理的还算不错，他尽可能的再几何直观和抽象概念之间做了一个权衡。<br/><br/>从同调论开始，后面的学习过程可谓是进入了一个崭新的领域，有了这些基础可以进入后续课程的学习了。但是同调这里如果下笔过多会改变本书的宗旨和方向，毕竟这只是一本基础书，还不是GTM，所以Armstrong老师也尽量克制了这点。不管怎么说，这绝对是本拓扑学入门的好书，最后建议看英文版的。因为这本中文的书个人认为翻译的不算太好。<br/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.guibian.com/article.asp?id=90" /> 
	  <id>http://www.guibian.com/default.asp?id=90</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[再谈骨骼批量渲染]]></title>
	  <author>
		 <name>volfmath</name>
		 <uri>http://www.guibian.com/</uri>
		 <email>volfmath@gmail.com</email>
	  </author>
	  <category term="" scheme="http://www.guibian.com/default.asp?cateID=6" label="Tech" /> 
	  <updated>2010-01-10T14:22:37+08:00</updated>
	  <published>2010-01-10T14:22:37+08:00</published>
		  <summary type="html"><![CDATA[请允许我再次讨论到骨骼动画的批量渲染。<br/>因为我们的游戏项目是一个RTS游戏，其中涉及到古代战争，需要同屏渲染大量带骨骼动画的人物。所以优化一直是我们努力的地方。<br/><br/>之前我们几乎考虑了很多种做法。参考了很多游戏，也走了不少弯路。终于找到了好的办法，而且我们这个问题的唯一做法。下面我把最近研究的结果深入讨论一下。<br/><br/>1.首先说下这个游戏的特点。要同屏渲染下大量人物。每个人物都有20-30根骨骼。<br/><br/>2.由于硬件的升级，骨骼动画模型也不是早期那种了。带有骨骼动画的模型跟无骨骼的普通模型，数据构成是不一样的。没有骨骼的模型，每帧是用顶点位置去和transform信息作变换得到模型。而带骨骼动画的是和一个叫做BoneMatrix的矩阵做运算。BoneMatrix显然是世界坐标系下的东东了。在Gamebryo骨骼模型里他是骨骼、蒙皮、世界坐标做完变换后的结果。白话点吧：vs数据大家都一样，带骨骼的多了个索引和权重信息。<br/><br/>3.开始考虑怎么批量渲染这些东西。<br/>a.很多游戏，包括三国无双等，都是通过减少骨骼套数完成的。就是说并不是每个人物都有自己的一套骨骼动画。这样导致的结果就是有些，如果你仔细看的动作是完全一致的。但是在我们这个游戏中就不太适用。因为每个人物都需要有自己个性的动作，而人物在打仗时的不同表现正式这个游戏的看点。<br/><br/>b.开始考虑Instancing。Shader3.0后Instancing的做法是把Instancing数据和Per Instancing数据同时传递到顶点信息里，然后通过Index来索引。就是在顶点流中传递一部分共通的信息，再传N份不共通的数据，然后把共通数据绘制N次。例如普通的模型，如果要同时描画N个，就传递N个变换信息，顶点数据则公用就可以了。这里的瓶颈就是顶点格式所能容纳的所有数据的数据量。显然在描画骨骼动画时是不适用的。因为BoneMatrix太大，无法塞入顶点数据中去。（但是最终还是用了这个办法，一会会讲到底怎么弄）<br/><br/>c.普通的做法包括Ogre引擎实现的。是把BoneMatrix信息传到ShaderConstant里面，然后描画。这样最多支持96个4*3的BoneMatrix（具体数据忘记了）大概就是20多根骨骼的话，可以同时描画4-5个。根据具体情况还可有些优化。这个方法是可以的，但后来发现这不是我们想要的最完美的方法。因为引擎实现的这个，是考虑所有的模型骨骼完全不一样。但是我们游戏中，人物虽然多，但是骨骼基本上只有几套而已。<br/><br/>d.最终考虑的办法。其实就是b，不过我们对制作重新做了要求。简单点说就是通过Avatar的方式。我们把人物拆开成若干个块。头部，身体。胳膊，腿等等。大概5-7块。然后每块只有3-4根骨头，这就可以使我们把这些骨头数据填充到顶点数据中去了。&nbsp;&nbsp;：）&nbsp;&nbsp;好完美的结局方法。<br/>无论同屏有多少个人物，我们最终描画的（DrawCall）次数 = 骨骼套数 * 拆分的块数<br/>如果同屏800个人物，4套20根骨头左右的骨骼模型，我们只需要描画4*5=20次<br/>而C方法需要描画200次。<br/><br/>e.BoneMatrix的计算其实也是比较耗时的，但是感谢现在多核计算的运用。我们可以把Cpu的这个计算分配到其他线程中去。]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.guibian.com/article.asp?id=89" /> 
	  <id>http://www.guibian.com/default.asp?id=89</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[为了纪念的忘却：我的生活]]></title>
	  <author>
		 <name>volfmath</name>
		 <uri>http://www.guibian.com/</uri>
		 <email>volfmath@gmail.com</email>
	  </author>
	  <category term="" scheme="http://www.guibian.com/default.asp?cateID=6" label="Tech" /> 
	  <updated>2009-12-27T02:23:12+08:00</updated>
	  <published>2009-12-27T02:23:12+08:00</published>
		  <summary type="html"><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;最近一般睡的很晚。毕业以后我基本上很少再有时间去鼓捣基础的东西。不过最近对自己未来的方向稍微思考的明朗了一些。我常常会在很晚的时候从屋子里出去跑步，绕着大学城。不过基本是走路，呵呵，大学城很安静。一个人静静的很不错，让我能思考很多问题。差不多三年前，我独自来到上海，从一个代码写不周全的学生误打误撞进入游戏界。经过各种大哥的辅导提携，总算在上海滩有了点自己的位置，在偏僻的地方甚至还有了一个属于自己的屋子。拿着一份令几乎90%的羡慕的薪资，做一份很体面的职位。但是许久以后我却高兴不起来。最初或许满意过，但骚动的心却越来越强烈，我知道潜意识里我已经不再喜欢这份工作和这个行业了。虽然同事的感情还是很不错，领导也是我这么多年来遇到的最好的领导，开发出身，懂得为开发人员思考的一群人。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;有时候我发现，一个人好像了解点基础数学或基础物理以后就时常会放不下，说起来不怕笑话，我拿本代数书会从早看到晚上，有时候我常常看到2，3点还不困得时候猛一看手机自己都吓了一跳。前一段我在看置换群的时候常常到深夜。我最近一直在恶补基础知识。为了搞清楚我以前落下的量子力学，我从数学分析开始，又把实变函数，集合论，测度，泛函，希尔伯特空间，偏微分方程弄过来看了一遍。为了打好基础，我还抽出时间来做高代和分析题，我觉得题目不一定要做太多，但是每题都要认真去思考。因为很多题目都暗含了不少更广义的思想。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;我常常想要放弃，后来想想如果项目不完成，我实际上最对不住的是我的下属。所以我考虑再三又把几个玩心比较重的下属拉过来谈了很久。其实大家岁数都不大，而且我知道他们也渴望成功。他们大多数人没有太高的要求只是觉得在上海工作是一件很体面的事情。我觉得人生中第一个主管还是很重要的，至少我刚入行的得到的帮助对我今天来说意义非凡。想也能想到，如果你的导师是高斯，难保你不会成功。我希望能尽我最大的努力至少让他们能成长的更快一些。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;目前的公司是一个绝对值得我日后去怀念的地方。不知道以后会在哪，也不知道在怎样的夜晚会有人想起我，我记录下最近的心情和想做的，只是想忘记这一切。<br/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.guibian.com/article.asp?id=88" /> 
	  <id>http://www.guibian.com/default.asp?id=88</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[游戏界现状]]></title>
	  <author>
		 <name>volfmath</name>
		 <uri>http://www.guibian.com/</uri>
		 <email>volfmath@gmail.com</email>
	  </author>
	  <category term="" scheme="http://www.guibian.com/default.asp?cateID=5" label="My Life" /> 
	  <updated>2009-12-25T21:42:36+08:00</updated>
	  <published>2009-12-25T21:42:36+08:00</published>
		  <summary type="html"><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;我在这个行业呆了快2年半了。其中辗转过2，3个公司，有业内很大的知名公司，也有业内名不见经传的小公司。从业过程中也认识了不少在各大公司的同行。如果不出意外的话，基本上我不打算继续在这个行业呆下去了，尽管我现在收入颇丰，但是我觉得这不是我想要的生活方式。<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>那么我们来讨论下目前整个国内游戏行业的状况。我觉得是非常糟糕的。据我估算，有一定游戏制作水平的人员应该不到万分之一，而这当中很多老人已经从事行政工作，另外一些虽然在技术的一线，但是由于年长或者其他原因，工作时长较少，也不足以面对纷繁复杂的行业进步。当然更重要的原因是以下几个方面：<br/><br/>1.策划：估计策划是整个目前游戏行业里最受非议的职业了，策划之所以受到如此待遇，我想差不多两个方面原因，主观上，是从业人员素质低下，游戏行业的迅速发展人员奇缺，导致迅速扩张后无法控制人员素质。大部分策划在我看来不是不适合做这项工作，而根本上就不适合工作。他们自以为比别人多玩了几个游戏就知道什么策划，简直的是莫大的笑话。极其混乱的思维，缺乏理性的规划，以及少的可怜的经验，加上不努力工作几乎已经导致策划成为整个开发的瓶颈了。<br/>由于策划的水平过低，导致程序必须关注他们本来不熟悉的系统及逻辑，而把大部分时间浪费在逻辑上。策划的水平也直接影响到美术制作过程中对数据，质量的规划，最终多次返工。（后面我会说好的团队的样子）<br/>当然没有经验也有很多客观因素，在目前中国这个急功近利的社会。策划从一开始就没有办法按照自己的思路来规划游戏本身，他们只能东抄西抄。形成一种恶性循环。不要忘记宫本茂也不是一天练成的，他也是经历了无数的失败以后才创造了马里奥，如果只是一味的模仿，怎么会有进步？<br/><br/>2.其他两个职业，程序与美术。游戏的高速发展，也把两个本不值得关注的职业推上社会的舞台。<br/>美术说白了就是一群成绩差的孩子为自己找一个出路，尽管美术是一个我觉得很高尚的职业，但你不得不承认在中国这种缺乏人文精神，艺术气息的国家里，美术是不受尊重的。当然我们并不缺乏热爱美术的人，但是如果一个人真的热爱美术，我想他是决计不会再游戏行业呆多久的，因为这里只会扼杀美术。游戏行业里美术如果细分，至少可以分为艺术与技术两个部分，技术不用说，从我工作至今，认识的美术中技术很强的少之又少，因为要让一个画画的人去了解图形显卡是件很困难的事情。艺术呢？也没好到哪里去，原因我刚才已经分析过，国外的游戏往往能刺激美术这项工作的发展，而在国内，美术越来越往民工发展。<br/><br/>程序也没好到哪里去，游戏行业的高薪水吸引很多原先并不被看好的IT界“精英”们挤到游戏界，另外越来越多的水品差的新人也选择把游戏作为走入社会的第一份职业。结果就是代码质量低下，层次结构乱。而且为了应付项目进度，不用谈架构了，连代码都是凑出来的。因为逻辑系统复杂，需求不断再变，所以程序就可以冠冕的说不容易设计好的架构，在我看来这是非常混账的说法。好的程序不会因为项目的大小，而做出好赖差别很大的设计。做不出好设计的程序员，我想不仅是项目设计不好，也许就连一个类他们也抽象不出来，这是程序水平低，而不是游戏程序设计水平低的问题。<br/><br/>3.公司大小的矛盾。小的创业公司，有激情却没有好的技术人员，大的成熟公司，有好的技术人员却没有激情。我曾经呆过小公司，在小点的公司。技术是非常缺乏的，往往只有一个稍微有经验的从业人员，但是由于没有系统的规范，没有完整的流程，大家几乎都在不断的尝试着失败，直到磨平最初的激情与意志。<br/>当然大公司在我看来更糟糕，虽然有重金请来技术人员，但是没有激情。复杂的领导裙带关系，散漫的工作态度是大公司最大的弊病。由于领导不懂开发环节，而对开发人员的过度干涉，导致项目进度迟缓设置流产。下属员工不思进取，每天消磨时间，领导在的时候做做工作，不在的时候各自活动，聊天的聊天，上SNS的上SNS，泡论坛的泡论坛。各级主管也有很大的问题，国内目前主管的水平在国外也顶多就是个一线工作的新人，所以主管如果不努力提高自己的水准势必导致游戏制作水品底下。但是很不幸，我在各个公司看到的结果就是，各级主管毫无激情，固守着自己可怜的一点点过时的技术。美术主管不懂图形，甚至对制作非常放松，造成最终难看的效果，过度的浪费与消耗。我听得最多的一句话就是，无数美术抱怨引擎的局限性，我想说的是，不管多么不好的引擎都不会给游戏画面本身带来多大的限制，如果做不好只是自己的水平问题跟引擎毫无关系。程序主管就更可悲了，我认识的有的人当中只是会写几句if ... else ... for循环，不知道什么事模板，甚至搞不清楚继承与虚函数。他们只是固守着陈旧的经验或者依赖于早年工作遗留下来的几个库维系着自己可怜的位置。<br/><br/>4.在中国这个畸形的社会，游戏界基本靠的是市场运作，而不是产品本身。所以不需要高品质的游戏，也就使开发人员自暴自弃。进而越来越差。我认为没有了激情的公司势必不会在历史的长河中存在太久。试想卡马克这样的天才还要一天努力工作16个小时，我们有怎么有可能超过别人？去看看暴雪，去看看Epic总部，那里人的工作状态，再看看我们，差距只会越拉越大。每一个游戏工作者都可以扪心自问，我是否真的热爱游戏这项事业，而不是热爱那可怜的几千块钱或上万块钱的月收入。我是否真的每天为只付出了我最大的努力，而不是混混日子得过且过，固守着自己貌似安逸的生活。我身边的每一个人好像都无所适从等待着公司上市这样的奇迹发生，我觉得真是可笑和可悲。<br/><br/>5.附上一个我心里的优秀团队的样子：<br/>&nbsp;&nbsp;首先，要有资深的从业人员讨论定义所有的制作规范，开发流程，项目进度等。<br/>&nbsp;&nbsp;其次需要一个优秀的开发团队，团员每个人无论是否有经验，至少要有激情，他们愿意付出比别多出多倍的时间精力来投入到项目中去，在游戏逻辑方面我认为并没有太多技术障碍，头脑清楚，肯于思考的策划都可以往逻辑程序员方面发展。而从事图形相关的程序却需要比较专业的基础知识。游戏开发不是一个轻松的工作，至少比起IT同行业，我认为要付出更多的努力。<br/>&nbsp;&nbsp;策划人员要对游戏内容有精确的定义，框架，大方向，游戏逻辑都要事先确定的非常清晰。保证程序员不用浪费太多的时间去关注复杂的游戏逻辑，而把时间花费在游戏架构设计本身，以及开发更多更便捷的工作，帮助策划和美术提高工作效率。策划人员同时也要协同程序人员帮助美术制作者，用最好的方式把效果在游戏中发挥到最大化。当然管理人员要安排好测试人员，版本构建人员的随时跟踪，以保证项目稳定健壮的发展。<br/>成员之间要相互信任，互相敞开心扉，承认自己的确认和弱点。针对不通的意见要多辩论，不要做一些无关痛痒的讨论。积极投入到决策和行动计划中去，不要事不关己高高挂起，每个人都应该为游戏本身付出更多，改进更多。对影响工作计划的行为负责，不要推卸责任，项目中谁都可能犯错误，但是自己一定要通过努力弥补过来，不要觉得由于其他的人问题导致自己的怎么怎么样。要把重点放在集体成绩上，不要以为自己的分内工作完成了就万事大吉了。<br/><br/>也许你觉得我的要求很高，也许是你不热爱这项工作吧。<br/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.guibian.com/article.asp?id=87" /> 
	  <id>http://www.guibian.com/default.asp?id=87</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[关于诡辩生活关于我的博客]]></title>
	  <author>
		 <name>volfmath</name>
		 <uri>http://www.guibian.com/</uri>
		 <email>volfmath@gmail.com</email>
	  </author>
	  <category term="" scheme="http://www.guibian.com/default.asp?cateID=5" label="My Life" /> 
	  <updated>2009-11-08T23:05:27+08:00</updated>
	  <published>2009-11-08T23:05:27+08:00</published>
		  <summary type="html"><![CDATA[我昨天把所有在博客上的留言都重新翻了一下，除了查查看有没有类似广告外，也删除了一些SB同学的留言。<br/><br/>我在开通这个博客的第一天就写清楚了目的。就象名字那样的，我是一个喜欢在生活中诡辩的人，我不喜欢是是非非的东西，所以我经常喜欢为明知错误的东西辩解。如果你觉得这里的某些观点不符合你所谓的主流观点，你姑且可以认为这是我的诡辩，爷不想在这里伺候你，并且希望这没有倒了你的胃口。每篇我觉得不符合观看的文章我都会在标题或副标题里写清楚，当然思想不健全的残废最好的办法就是不要点进来。我不明白谷歌和百度会在某些关键词上把我放在首页，我想大概是国内分享实在是太少了。我曾经认为国内没有高手，不过最近遇到些改变了点我的想法，不过高手都很低调，所以我还差得远。<br/><br/>另外我不喜欢，看到一些装B的言论似乎显得很屌，这里不是竞技场，你如果屌，请你去你的博客里写。大小便也要看好地方，这是我的空间，容不下你的废物。我这里没有禁止任何评论，但也希望你在回复的时候能三思。也请天天吵着要源代码的瘪三们离这里远点，不要再留你们的邮箱了，我不会任何人发代码，我只会在博客里公布代码片段。（这种情况在群里也天天有）中国傻逼程序员怎么这么多？没有源代码的日子你们就不能活？<br/><br/><br/>在多说几句，<span style="color:Red">本博主不加任何人所谓“互相交流，共同进步”的QQ。如果对博客里所有文章有不理解的地方，欢迎善意的提问，我会在高兴的时候回答你的问题。对于笨蛋脑残弱者没有水平的问题，我会不予理会或者直接删除。</span>所以请注意提问的智慧。]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.guibian.com/article.asp?id=86" /> 
	  <id>http://www.guibian.com/default.asp?id=86</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[关于优化的问题总结]]></title>
	  <author>
		 <name>volfmath</name>
		 <uri>http://www.guibian.com/</uri>
		 <email>volfmath@gmail.com</email>
	  </author>
	  <category term="" scheme="http://www.guibian.com/default.asp?cateID=6" label="Tech" /> 
	  <updated>2009-11-05T01:07:43+08:00</updated>
	  <published>2009-11-05T01:07:43+08:00</published>
		  <summary type="html"><![CDATA[引擎本身做的很好，不会对速度产生太大影响。但是使用者往往会由于开发经验过低等等因素，导致游戏运行速度太慢。这里有些是因为对Gamebryo系统的不熟悉造成。<br/><br/><span style="color:Red">美术上：</span>美术如果不熟悉Art文档，不熟悉图形技术的话，用任何引擎都是白搭。其实大部分的浪费都是美术造成的。下面先说说美术的优化<br/>1.注意Mesh的颗粒度，什么意思呢。就是主要不要有太多小物件。三角面很少的Mesh，如果材质相同的话，完全可以合并起来。<br/><br/><br/>1.关于Gamebryo中的up&#100;ate与up&#100;ate sel&#101;ct。这是avobject里重要的两个函数，也是Gamebryo中更新场景图最重要的函数之一。up&#100;ate sel&#101;ct是做了优化的，也就是说，如果变换矩阵没有做出变换的话，gamebryo不会更新world信息，这样会节省一定的时间，所以如果是静态物体，请优先使用Up&#100;ateSel&#101;ct.<br/>相反动态物体，比如人物。如果确定他一定不是静态的话，请不要使用Up&#100;ateSel&#101;ct，因为这会多做一次对变换矩阵是否改变的判断，这是没有意义的。<br/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.guibian.com/article.asp?id=85" /> 
	  <id>http://www.guibian.com/default.asp?id=85</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[终于又重新开博了]]></title>
	  <author>
		 <name>volfmath</name>
		 <uri>http://www.guibian.com/</uri>
		 <email>volfmath@gmail.com</email>
	  </author>
	  <category term="" scheme="http://www.guibian.com/default.asp?cateID=5" label="My Life" /> 
	  <updated>2009-09-25T11:28:42+08:00</updated>
	  <published>2009-09-25T11:28:42+08:00</published>
		  <summary type="html"><![CDATA[上个月，因为同一个服务器上有一个blog留言里卖枪信息，所以整个服务器被停了。<br/><br/>当然在这样一个傻逼，弱智，脑残是常态的国家里，我早已习惯。<br/><br/>虽然这次是铁通在干2B的事情，但是我还是要说，电信，联通，移动和他一样2。<br/><br/>铁通在处理这个问题上一贯显示了我党优良的作风品质，立即关闭不通知本人，甚至拔线处理。视人权为粪土，值得我们学习。这次博客新开了，我还会继续写一些开发上总结的问题。。<br/><br/>希望卖枪的留言不要再来了，因为看我博客的人根本买不起枪。所以广告是无意义的广告。如果真有本事把枪卖给我们铁通的同志，我是会为你们高兴的。]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.guibian.com/article.asp?id=84" /> 
	  <id>http://www.guibian.com/default.asp?id=84</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[Gamebryo的材质系统]]></title>
	  <author>
		 <name>volfmath</name>
		 <uri>http://www.guibian.com/</uri>
		 <email>volfmath@gmail.com</email>
	  </author>
	  <category term="" scheme="http://www.guibian.com/default.asp?cateID=6" label="Tech" /> 
	  <updated>2009-07-15T14:04:09+08:00</updated>
	  <published>2009-07-15T14:04:09+08:00</published>
		  <summary type="html"><![CDATA[一个模型（有一大堆顶点跟索引数据组成）描画的方式，跟材质有很大的关系。<br/>Gamebryo提供了一个很强大的材质系统。<br/><br/>首先gamebryo使用了一个自定义的Pipeline，这个也是在之前的文章中介绍过的。其实这个Pipeline就是大家最常用的一些Shader。GB帮我们总结出来了，并做成了一个标准的材质。这在GB里叫StandardMaterial。<br/><br/>标准材质跟Pipeline是相对应的。但是标准材质的实现是非常困难的，可以查阅NiStandartMaterial，大约有5000多行代码。GB会首先查找一下Shader文件夹下的那些Shader。<br/>这些Shader的文件名是由一对数字+字母组成的。这些文件都是不重复的，因为GB内部通过Hash码得出这些值。如果在Shader文件夹下没有，那么GB会把当前的渲染方式记录到这个Shader中去，作为缓存。<br/><br/>当然你也可以构建自己的Material系统，比如GB的NiCommonMaterial里也给出了一些构建自己材质系统的例子，不过这是非常复杂，基本思想都是需要维护一个Shader树。<br/><br/>不过自己写Shader是非常方便的，你可以用RenderMonkey或者ShaderFX，把做好的*.fx文件放到Shader文件夹中，MAX再次打开的时候就会找到这些Shader。让美工使用起来非常的方便。<br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.guibian.com/article.asp?id=83" /> 
	  <id>http://www.guibian.com/default.asp?id=83</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[话说我的新钢琴]]></title>
	  <author>
		 <name>volfmath</name>
		 <uri>http://www.guibian.com/</uri>
		 <email>volfmath@gmail.com</email>
	  </author>
	  <category term="" scheme="http://www.guibian.com/default.asp?cateID=5" label="My Life" /> 
	  <updated>2009-06-16T19:09:37+08:00</updated>
	  <published>2009-06-16T19:09:37+08:00</published>
		  <summary type="html"><![CDATA[<img src="http://www.guibian.com/attachments/month_0909/q2009925111911.jpg" border="0" alt=""/><br/><br/><br/>CasioPX120，我觉得这款电钢的品质还是不错的，首先是手感，非常好。触键非常有质感。<br/>至于音色么就不要要求太高了，可以配置一个好的音箱应该还是不错的。<br/><br/>功能上PX120跟他的几个老大哥320，和720比起来不算强大，但是对于个人演奏来说绝对是绰绰有余了。&nbsp;&nbsp;&nbsp;&nbsp; ]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.guibian.com/article.asp?id=82" /> 
	  <id>http://www.guibian.com/default.asp?id=82</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[上海植物园游记]]></title>
	  <author>
		 <name>volfmath</name>
		 <uri>http://www.guibian.com/</uri>
		 <email>volfmath@gmail.com</email>
	  </author>
	  <category term="" scheme="http://www.guibian.com/default.asp?cateID=5" label="My Life" /> 
	  <updated>2009-05-02T22:53:24+08:00</updated>
	  <published>2009-05-02T22:53:24+08:00</published>
		  <summary type="html"><![CDATA[450+狗头，构图还在学习ing。<br/><img src="http://www.guibian.com/attachments/month_0909/a200992421050.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.guibian.com/attachments/month_0909/v200992421116.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.guibian.com/attachments/month_0909/9200992421129.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.guibian.com/attachments/month_0909/j200992421227.jpg" border="0" alt=""/><br/><br/><img src="http://www.guibian.com/attachments/month_0909/i200992421238.jpg" border="0" alt=""/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.guibian.com/article.asp?id=79" /> 
	  <id>http://www.guibian.com/default.asp?id=79</id>
  </entry>	
		
</feed>
