自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

安柏霖的专栏

game developer

  • 博客(15)
  • 资源 (1)
  • 收藏
  • 关注

原创 英雄无敌3中我所喜爱的英雄

 1, 肯洛哈格:超强进攻的代表,无比的进攻欲望,恩,虽然介绍中没有太多说有关他的这些东西,但是可以想象这个家伙看见一片动荡大陆那种欣喜的表情是多么有趣,哈哈: Crag Hack 男 人类 高级攻击 每升一级其攻击技能加5% 由于在Enroth只是一个被用作“装饰”的英雄,Crag Hack对自己的家园感到厌烦,于是他决定在Erathia寻找新的生活。他大胆地开始了航行,欣喜地发现了一块混乱

2007-04-23 17:40:00 1946

原创 Operating System Concepts--chap9 Memory Management;

这一章节的memory management内容覆盖从bare-machine approach到paging和segmentation;9.1 background我们在编程时候所操作的地址--logical address和实际机器中的地址--physical address不是一样的;他们之间的mapping是通过Memory Management Unit来进行转换,通常是通过[rel

2007-04-23 11:42:00 1712

原创 this作参数的问题

今天写程序遇到一个挺有意思的compile errorvs2005中的c2662; class test...{public:void shout()...{cout"shout"endl;}}main()...{   const test* t = new test;   t->shout();}就会出错,问题在于shout函数有this作为参数,但是我用的是const指

2007-04-21 21:14:00 1539

原创 重构与高级程序员review

我们的移植项目的代码越来越让我不喜欢了;放眼望去无穷多的#ifdef,邋遢的命名,不加思索的功能实现;实在是过于难以忍受;由于现在项目在不停的增长,规模已经足够庞大,各个部分,coder之间的交互非常多,coding的时候如果只是专注于自己的feature的实现和kill掉某个bug的编码的方式是在背离设计时所强调的从全局逐步向部件过渡;没有从大局来看待代码实现结果就会导致代码变得

2007-04-20 14:27:00 1618

原创 class size与align

align算是老生常谈了:数据按照某个cache line大小align的话会改进cache效率, 因此默认情况下,编译器会自动把class数据进行align;class与其member的align尤其自己规则,直接导致: struct size...{uint32 member0;uint8  member1;};(sizeof(size)!=sizeof(uint32)+s

2007-04-18 15:45:00 1787

原创 多一分则肥少一分则瘦

最近在重构以前写的代码,希望更安全,更快,更优雅;发现自己当时犯着可笑幼稚错误:1,幼稚的过度编程:在写一个底层的资源管理的东西,在出错的时候我选择像dx函数一样返回一个handle,通过handle的数值来确认是什么问题;但是我的这个类规模不大,而且可以debug跟进去,所以这么麻烦的handle错误认证是杀鸡用牛刀,结果就是简单的类,看起来相对非常的麻烦;而dx handle是因为封装

2007-04-17 20:19:00 8389

原创 improved frustum culling--game programming gems 5-1.6

frustum culling是可见性检测中一种重要方法,当然也是优化 的重头戏之一;目前经常使用的是camera所形成的frustum平面culling的方法:首先根据camera的几项重要value我们有: near/far plane fov:field of view--远平面的height/far; aspect:远平面的width/heith或

2007-04-16 14:24:00 1990 1

原创 在程序里乱hack是堕落

hack,即是在程序中无视设计初衷而为达到其目的的直接了当的编码;不假思索的const_cast,直接调用底层api。。。在项目后期,面临交付,没有时间做扩展补充设计的hack是可以理解,并且也是不得已的;但是在项目中前期,hack就意味着潜在的给整个类捅了大洞,整个类会变得行为奇怪,在特定的时候甚至是交付的时候发疯;允许自己这样去做,无疑是一种堕落,对职业的亵渎;三人行必有我

2007-04-16 11:59:00 2047

原创 sphere trees for speedy BSPs--game programming gems5

BSP虽然在现代游戏开发中出场机会越来越少,但是在visibility preprocessing, collision detection, polygon sorting中仍旧有良好的应用;bsp把场景用多个splitter划分为多个区域,并存在树结构中,它有两个重要标准:1,划分粒度:最好能够划分到polygon级别--精确剔除;2,平衡数:splitter划分出来的树左右尽可能

2007-04-16 11:53:00 1740

原创 游戏编程精粹5--component based object management笔记

这篇文章主张用component组合的方式构建object;why&benefit:作者提到在游戏开发过程中,开发者不得不面对的一个变化就是频繁变换的需求;而能够最简洁的方式适应变化就需要object之间的联系尽量松散;通过继承来获取feature的集成则让类之间的关系过于紧密;而通过component based来做的话,简单松散的结构可以允许我们通过配置文件来定义类;如果设计师希望

2007-04-13 11:59:00 2423

原创 shader model 3

nvs shader_model_3_unleased.pdf笔记1,硬性指标的提升:vertex shader:constant register >=256,temp reg:  32instructions  65535pixel shader:constant reg:  224temp reg  32interpolated reg: 102,dynamic/static flow

2007-04-07 16:28:00 3385 1

原创 羞愧的新人

作为项目组里的新人,尽管努力的工作,积极的想为项目组做贡献,但是仍旧时不时的会出现让我羞愧无比的错误;最近项目组在被显存被冲折磨着,tester那边不停的报非常严重的bug;最后查出来几个地方,有一个就来自我写的代码;一方面我以很快的速度也非常认真的完成任务,不停的希望leader给我新的任务;另外一方面我所写的代码却时常出现错误,给项目组添麻烦,甚至在关键时刻让小组陷入crash

2007-04-06 23:13:00 1372

原创 沿用高考的学习方法

高考 过去很多年,过去我一直对高考没有一句正面评价,觉得它既背离科学,又压抑人性,用一种恶心的方式来分配教育资源。但是随着时间的流逝,我也不得不承认,经历过高考复习后,中学几年期间养成的学习习惯一直让我受益,这是追求极限的学习习惯:1,追求深刻理解:在阅读,理解与实践之间不停的循环,在极其熟练的基础上以感悟的方式学习,来达到灵通的境界。2,追求准确,细节,快速。3,不停的完善知

2007-04-05 10:38:00 1510

原创 不唯快是图

效率对程序员有着巨大的诱惑,而对game developers更甚。但是很多写法会造成安全性下降,破坏设计意图,这个时候就需要保守考虑了;比如:const state& GetState();void SetState(const state& arg);如果要修改state,最快的做法应该是:state& temp = const_caststate&>(obj-

2007-04-04 15:55:00 1485

原创 color&fonts

最近出的问题都是“非技术性”的 ,1,一个哥们写了for(int i=i;i2,0和O,零和大写O,看起来是一样的,丝毫看不出差别,还好这个有compiler顶着,所以字体一定要确认能分开;

2007-04-02 22:15:00 1394 1

FamilyShowSrc

很赞的WPF open source project,学习的好东东。

2010-01-29

空空如也

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

TA关注的人

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