2009年3月4日

摘要: 目前发现360上会验证失败导致assertion false的函数: D3DXMatrixLookAtLH() Cause: vecEye, vecAt均为Vec3(0,0,0) Solution: vecAt[Vec3(0,0,0)]->vecAt[Vec3(0,0,-1)] 阅读全文

posted @ 2009-03-04 21:59 活着就是幸福 阅读(223) 评论(0) 推荐(0) 编辑

摘要: DirectX SDK 2008 June中使用PIX进行Playback导致Clear等函数失效。2008 March版本的DXSDK没有问题。 阅读全文

posted @ 2009-03-04 21:58 活着就是幸福 阅读(207) 评论(0) 推荐(0) 编辑

摘要: 这几天总结了一些项目经验,杂七杂八的写下来,权作记录。方便回头检查,一个经验一个随笔。 VC内存泄漏检查: #define CRTDBG_MAP_ALLOC 在所有Include之前。 _CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF ); 用_CrtSetBreakAlloc(); 检查相应的号码 阅读全文

posted @ 2009-03-04 21:57 活着就是幸福 阅读(228) 评论(0) 推荐(0) 编辑

摘要: 代码写多了难免需要做文档,给自己还是给别人看都需要如此,这次XBOX360制作,前期没怎么写注释,回头改Bug都要猜半天自己写的代码是什么意思。更别提别人写的东西,100行代码也没有一句注释,幸好不是我维护,否则要疯掉了。 花了一天功夫尝试了一下Doxygen的使用,还好不难,但是有些磕磕绊绊,它自己的文档也说不清楚,网上搜出来的教程也只是给出样子,遇到的问题还是靠自己尝试了几十次才搞定。 不管如... 阅读全文

posted @ 2009-03-04 21:31 活着就是幸福 阅读(3260) 评论(0) 推荐(0) 编辑

摘要: 2.50 HKEY_CLASSES_ROOT"Interface"{6AC8113D-C105-4340-B5E1-7191DBFA012F} 2.61 HKEY_CLASSES_ROOT"Interface"{18B73553-3B9A-4CC7-8DFB-84BE1A69A8F5} 3.00 HKEY_CLASSES_ROOT"Interface"{093DE8B4-48DB-45DC-92F... 阅读全文

posted @ 2009-03-04 21:07 活着就是幸福 阅读(239) 评论(0) 推荐(0) 编辑

2009年1月28日

摘要: 再比比上海那边200KB/s的小水管....何况一个月只要20块.....电信简直就是抢钱啊..... 阅读全文

posted @ 2009-01-28 12:15 活着就是幸福 阅读(145) 评论(0) 推荐(0) 编辑

2008年12月22日

摘要: 1. Ctrl-Alt-B调出BreakPoints分页 2. New下拉 -> New Data BreakPoint, 写入要检测的地址。 貌似只能检测写入,不能检测读取。 阅读全文

posted @ 2008-12-22 13:23 活着就是幸福 阅读(352) 评论(0) 推荐(0) 编辑

2008年12月11日

摘要: 1.Front buffer: 用来被显示卡显示的内存 2.Back buffer: 一块内存,里面的内容被提交给front buffer 3.Swap chain: Back buffer的集合,可以被连续的提交给front buffer. 4.D3D device至少有一个Swap chain。 5.Front buffer不被暴露给D3D。程序不能Lock或者渲染到front buffer... 阅读全文

posted @ 2008-12-11 23:25 活着就是幸福 阅读(267) 评论(0) 推荐(0) 编辑

摘要: 1.光的数学 全局光照模型(Phong): Global Illumination = Ambient Light + Diffuse Light + Specular Light + Emissive Light 1. 环境光(常量光,所有方向和像素上都相同) 不依赖于顶点法线,光方向,光源位置,范围和衰减。 2. 漫反射光 依赖于光方向和表面法线向量。 ... 阅读全文

posted @ 2008-12-11 22:56 活着就是幸福 阅读(254) 评论(0) 推荐(0) 编辑

摘要: 1.光和材质 D3D计算物体顶点光照基于 1. 现有材质和关联的纹理纹素 2. 顶点指定的漫反射光和高光颜色 3. 光源颜色和强度,以及环境光 材质决定光如何从表面反射。没有光会产生一个剪影。 2.直射光和环境光 折射光有方向和颜色。 环境光没有位置和方向,只有颜色和强度。每盏灯都会增加环境光。 环境光使用IDirect3DDevice9::SetRenderState(... 阅读全文

posted @ 2008-12-11 22:05 活着就是幸福 阅读(358) 评论(0) 推荐(0) 编辑

摘要: 今天终于搞完了图形部分,MSAA 2X和4X在360上似乎没有大的区别,帧数2X基本没有变化,4X降了3-4帧,看来FreeAA也不完全Free。 今天开始看看数据结构和算法吧。都快忘光了。 阅读全文

posted @ 2008-12-11 20:09 活着就是幸福 阅读(140) 评论(0) 推荐(0) 编辑

2008年12月5日

摘要: 1. Lock资源会导致引用资源的其他操作被连续化。 2. DXTn格式以4x4块储存像素, 只能在4x4边界进行lock. 3. D3D使用最少-最近-使用优先级管理资源。如果检测到太多资源部嫩共存,则使用此技术。 资源池类型: D3DPOOL_DEFAULT: 最合适的地方。在设备丢失和reset时必须重新创建。 D3DPOOL_MANAGED: 托管资源在显示和系统内存里。设备丢失和rese... 阅读全文

posted @ 2008-12-05 13:22 活着就是幸福 阅读(180) 评论(0) 推荐(0) 编辑

摘要: 1. alpha混合允许一个surface上的颜色材质和纹理通过透明度混合到另一个surface上。alpha混合依赖于D3DRS_SRCBLEND和D3DRS_DESTBLEND 。他们是成对使用的。 2. alpha测试 D3DRS_ALPHATESTENABLE控制开关。 D3DRS_ALPHAFUNC 控制行为 D3DRS_ALPHAREF 控制参考值 如果硬件不支持alpha测试那么... 阅读全文

posted @ 2008-12-05 12:17 活着就是幸福 阅读(398) 评论(0) 推荐(0) 编辑

2008年12月4日

摘要: 1. 线list 单根线的集合。顶点数是大于等于2的偶数。线之间无关。材质和纹理只沿着线画。 2. 线Strips 连接的线段组成。开始和结束不连接。不担保共面。 3. 三角list 单个三角形集合。顶点数大于等于3的整数倍。三角形之间可以相邻或者无关。可以使用三角形Strip方式替代(不相邻的三角形之间可以使用退化三角形连接) 4. 三角Strips 一系列连接的三角形。程序不必重复指定... 阅读全文

posted @ 2008-12-04 23:35 活着就是幸福 阅读(264) 评论(0) 推荐(0) 编辑

摘要: 1. IDirect3D9::CheckDeviceFormat 检查surface格式是否可用作texture. 检查surface格式是否可用作texture和render-target. 检查surface格式是否可用作depth/stencil buffer. 检查depth buffer和depth/stencil格式支持。 2. IDirect3D9::CheckDeviceType... 阅读全文

posted @ 2008-12-04 23:34 活着就是幸福 阅读(241) 评论(0) 推荐(0) 编辑

摘要: D3D设备可能处于可操作状态或者丢失状态。前者是正常状态。后者可能由失去键盘焦点或者全屏程序无法渲染造成。丢失状态的特点是所有的渲染操作都会返回成功值,但是渲染操作实际上失败了。这时 IDirect3DDevice9::Present会返回D3DERR_DEVICELOST。 会引起设备丢失的情况可能有:失去焦点,比如按下ALT+TAB 或者弹出一个系统对话框。也可能是由电源管理事件或者其他尝试... 阅读全文

posted @ 2008-12-04 23:33 活着就是幸福 阅读(466) 评论(0) 推荐(0) 编辑

摘要: 1. 枚举显示卡。单显卡可跳过,使用D3DADAPTER_DEFAULT 2。枚举显示模式IDirect3D9::EnumAdapterModes。 3。使用IDirect3D9::CheckDeviceType检测显示模式 4. 使用IDirect3D9::GetDeviceCaps 检测设备功能,返回的功能担保可以被所有的显示模式支持。 5. 使用IDirect3D9::CheckDevice... 阅读全文

posted @ 2008-12-04 23:33 活着就是幸福 阅读(473) 评论(0) 推荐(0) 编辑

摘要: 昨天又忘记写日记了,自己一下。 常用算法打算复习一下,好久不看,几乎都快忘光了。虽然有STL可以用,但是作为想成为 Guru的人来说,如果说不熟悉(别说精通)常用的算法和数据结构,简直让人笑掉大牙。 Come on,guy,work hard. 阅读全文

posted @ 2008-12-04 20:05 活着就是幸福 阅读(187) 评论(0) 推荐(0) 编辑

2008年12月2日

摘要: 每逢周末就忘记写日记,874一个。 近两天生理低潮,没精神,看书热情严重退化。过两天应该就好了。 女王大人严正号令不准再吃肉,改啖青椒香干,话说貌似已经连着两个星期天天青椒肉丝,莫非我真的有些变态。 MSAA进行中。。。 因为是凌晨写的,补充白天: XBOX360使用Predicated Tiling进行2X和4X MSAA。 阅读全文

posted @ 2008-12-02 00:10 活着就是幸福 阅读(186) 评论(0) 推荐(0) 编辑

2008年11月27日

摘要: 事情:今天发Alpha版。庆祝一下。接下来要做MSAA,貌似蛮麻烦的。和PC上完全不同。Predicated Tiling... 进步:Texture mapping没看完。发现www.opengl.org上好东西很多,不愧是工业级的东西。 阅读全文

posted @ 2008-11-27 23:26 活着就是幸福 阅读(172) 评论(0) 推荐(0) 编辑