自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

gamedevers的专栏

最初的梦想~~

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

原创 搬家

搬家到blog园,可以通过以下地址访问http://www.cnblogs.com/gin_dl/实在不能忍受csdn的烂blog系统

2009-06-06 15:36:00 559

转载 TopCoder Competition Arena 插件推荐 - KawigiEdit

As we all know that the score of the Topcoder algorithm competition is calculated by the time you used to complete a problem. Since you opened a problem, the score is decreasing.KawigiEdit can generat

2009-06-04 01:58:00 2193

原创 pku 3421

题目不贴,大意就是说给定一个X,求一个最长的序列1 = X0, X1, X2, …, Xm = X满足 Xi 要求输出最大的长度和共有多少个不同的这个长度的序列;想明白了这个题目就是因素分解;比如说一个X分解成x1^a*x2^b(当然,后面还可以很多,就弄两个出来意思下),那么考虑题目要求的序列形式,任何Xi 和  Xi+1  之间只能相差一个质因子,不然我们可以中间再插入一个,也就是Xi+1|X

2009-06-01 20:52:00 613

原创 偶尔写写算法

 今天做了一个题PKU 1702 挺有意思的题目大概就是说有一个3^0.....3^19 重量的砝码个一个,左盘有一个一定重量的物体,然后要用现有的砝码称重,这个题核心思想显然就是怎么在左盘放几个右边放几个让两边重量相等,很快会想到三进制表示,可是三进制表示里头有2,必须稍微改进一下,那就是如果是某位是2,那么就表示成-1+3,也就是本为为-1,向上一位进一,这样就可能出现某位是3的可能性,那就是

2009-03-26 00:08:00 100

原创 关于vc#2008无法建立数据库连接

挺奇怪的,在宿舍的时候还好好的,搬到生物馆了以后点击oleDbDataAdapter然后点配置数据库,点击那个新建数据库链接。。。点完就完了,就再也不会出来下一步的向导了,换一个已经建立好的adapter试了试,结果是错误信息,时间日志文件已满 我那个汗啊。。不顺利就是建立一个建立过无数次的数据库链接都会出重来没遇到的错误,百度之结果解决办法如下 对我的电脑点右键--->管理----->事件查

2009-03-22 23:35:00 1066

原创 vs2008 使用了未初始化的msg变量

之前貌似都没在乎这个问题,变量 也是随手写随手初始化,这段日子不顺就是用个MSG都会出问题没初始化,然后报错,然后不明白,然后搜,然后有人说“用进入while循环之前,先GetMessage(&msg,NULL,NULL,NULL);一次,让msg初始化。在循环体中应该再调用GetMessage或PeekMessage,否则就真成了死循环了 ”不懂,觉得应该不行,试了试也不行,觉得会得不到MS

2009-02-20 22:52:00 1944

原创 [转]DirectInput 键盘编程入门

游戏编程可不仅仅是图形程序的开发工作,实际上包含了许多方面,本文所要讲述的就是关于如何使用 DirectInput 来对键盘编程的问题。  在 DOS 时代,我们一般都习惯于接管键盘中断来加入自己的处理代码。但这一套生存方式在万恶的 Windows 社会下是行不通的,我们只能靠领 API 或者 DirectInput 的救济金过活。  在 Windows 的 API 中,有一个 GetAsyncK

2009-02-20 16:38:00 623

翻译 翻译《real-time 3d terrain engines using C++ and DX9 》(8)

 渲染队列(the render queue)    维护一个像我们这样的渲染管线最重要的一个方面就是控制那些程序所要求的昂贵的状态改变(state changes)开销。一个“状态改变”就是指示显卡去切换它正在处理的模型和纹理所要作的所有事情。这些很耗时的状态改变包括激活顶点和像素shaders,还有改变D3DX的渲染状态和纹理采样器。使用D3DX的效果文件(effect file)使得

2008-06-20 02:45:00 1110 1

原创 剩下的时间

剩下的时间,考研,有空打算慢慢把那个翻译做完,不过说实话,翻的非常不好,我自己都不好意思。。另外。。源码我是没有的,有自己实现过一些,就不要向我要源码了

2008-06-20 01:20:00 689

翻译 翻译《real-time 3d terrain engines using C++ and DX9 》(7)

  模型资源       cModelResource类可能是我们将会使用的最重要的类了,它当然是我们最经常使用的资源。这个资源类是一个完整的基于D3DXFRAME层级树的容器。因为复合节点可以背这些对象包含,cModelResource在游戏中可以代表不只一个的物理物体。例如,一个格斗者人物角色可能包含一个完整的制作了动画的骨骼,蒙好了皮的皮肤和衣服网格,和每个武器或者盾牌的静态模型。每

2007-09-15 13:39:00 1389

翻译 翻译《real-time 3d terrain engines using C++ and DX9 》(6)

 索引缓存和顶点缓存       索引缓存和顶点缓存资源在例子引擎中使用得非常频繁,并且把他们作为独立资源是很有用的。对我们引擎的大部分数据来说,在那些传统模型不提供索引和顶点缓存的时候保留他们然后在某个时候覆盖整个模型符合我们的基本要求。索引和顶点缓存对于动态数据特别有用,当使用设备依赖资源的时候他们必须被很小心的处理。使用动态顶点和索引缓存使我们能够随时建立几何体或者在CPU上动画已经

2007-09-14 14:52:00 1065

原创 翻译《real-time 3d terrain engines using C++ and DX9 》(5)

资源基类       所有的引擎资源对象都是从cResourcePoolItem类中继承得到的。这个类提供了一个cResourcePoolManager类能够使用的函数的集合,用以创建,销毁,从磁盘保存和载入资源。cResourcePoolItem类对象也为每个资源对象维护一个核心的数据集合,包括定义资源类型的代码,一个资源管理器的接口和一个资源的cPoolHandle对象的索引。一个位标志同

2007-09-13 20:29:00 1681

翻译 翻译《real-time 3d terrain engines using C++ and DX9 》(4)

 管理共享数据资源       引擎包含集中不同的共享数据。这些资源表示的数据在多人游戏中访问和共享。例子包括纹理,顶点缓存,索引缓存和渲染方法。事实上,许多共享资源都是依赖于显卡,因为他们使用显存作为他们存储的一部分。这些设备的管理器需要访问这些依赖资源。例如,显示管理器需要访问所有纹理,顶点和索引缓存这样它能够处理那些显示设备失去和重新得到的接口的情况。       这需要一些关键

2007-09-13 12:37:00 1261

翻译 翻译《real-time 3d terrain engines using C++ and DX9 》(3)

       cGameHost包含的一个关键管理对象就是资源管理器(resource manager).我们的程序使用他自己的管理系统来管理我们将要创建的设备。这个资源管理系统的根,cResourcePoolManager类,是建立在一个我们引擎中提供的支持类的集合的基础上的。在我们讨论资源对象本身,我们花一点时间来了解这个我们将要使用的资源池和将会使用的资源管理计划。 创建数据池 

2007-09-13 12:23:00 1214

原创 翻译《real-time 3d terrain engines using C++ and DX9 》(2)

 主程序(the application host)       为了添加我们自己的程序控制层,我们将以Direct3d sample framewrok提供类为基础来简历我们自己的类。框架类CD3Dapplication将作为我们的基类,我们使用它来初始化和枚举视频设备,建立显示模式和处理基本窗口消息。在这个类之上,我们将建立我们自己的资源和设备管理类,控制我们程序的执行和渲染我们的世界

2007-08-26 14:22:00 1784 4

翻译 翻译《real-time 3d terrain engines using C++ and DX9 》(1)

         系列文章 all by G.I.N ~oo~心血来潮啊,决定要翻译《real-time 3D terrain engines using C++ and DX9》,希望多广大的游戏爱好者有所帮助。首先声明,没有商业用途的意思(当然不排除要是一不小心弄出本书,小赚一笔的想法,咔咔。。。YY一下)。本文章原版版权归作者所有,中文版版权归本人所有,其他人未经允许不得转载,或用于商业

2007-08-25 13:06:00 2275

原创 GPU编程入门(8) GPU ASM 顶点渲染初步

看这个题目应该跟汇编有一定的关系吧。。。。唠叨句,可能有人觉得学游戏的,特别是现在高级语言那么多的情况下汇编的重要性已经很低了。。。错。。。为什么错,自己找书看去吧。。咔咔。。。看这篇文章多少要有点汇编的基础,自己掂量吧在GPU可编程实时渲染初期,HLSL和CG语言出现以前,使用GPU进行渲染是借助 一种类似于汇编的ASM的语言来进行的 ,这种语言难入门更难掌握,不过和汇编语言一样,他的效率也

2007-08-11 21:04:00 4094 5

原创 GPU编程入门(7) 效果(effect)基础 2

这次我们结合directx的例子程序 EffectParam来解释一下参数块和共享参数的概念,例子位于:directx安装目录/Samples/C++/Direct3D/EffectParam ,这两个东西一起说,自然是他们之间有关系的,一般一起用的。。。下面开始.首先是共享参数,效果的参数就是效果里头申明的所有非静态的变量,包括全局变量和注释,如果在申明的时候技术上“shared”关键字

2007-08-06 13:09:00 2846

原创 GPU编程入门(6) 效果(effect)基础

 前面简单的介绍了一下vetex shader和pixel shader,这里简单的介绍一下效果(effect)效果(effect)就是用一个文件来综合管理vetex shader和pixel shader的框架。通过使用effect,可以将vetex shader和pixel shader统筹起来,所以主程序中只需要加载effect文件就可以了。Effect文件一般保存在.fx文件中,当

2007-08-04 14:53:00 4780 2

原创 GPU编程入门(5) 基础纹理混合

今天给出一个纹理混合的像素着色器的例子,算是对以前的东西的一点运用吧,好久没更新了,太懒了。。。。有点对不起大家的说。。。。正题:首先是纹理混合的原理,原理就是一个简单的数学公式,color=sampler1.color×scalar+sampler2.color×(1-scalar)仔细看就明白是一个线性插值公式,最后的颜色由两个样本的颜色和比例因子决定,下面看程序如何实现接下来

2007-07-31 14:10:00 3475

原创 GPU编程入门(四)

下面给出一个完整的使用vs 和ps的例子,例子没做什么,只是让大家知道一个shader和direcetx是怎么结合起来的,看例子:  vertex shader://first_vs.txtmatrix WVPMatrix;vector color;struct VS_INPUT...{vector position : POSITION;};struct VS_OUTPUT...{v

2007-05-21 22:20:00 3900 1

原创 GPU编程入门(三) 象素shader

好,给出一个最简单的像素shader(pixel shader)的例子,照例,这个程序什么也没作,只是把输入又输出了一下而已 //定义一个输出结构struct OUTPUT...{    float4 color :COLOR;}//像素shader入口函数 OUTPUT main(float4 color:COLOR)...{    OUTPUT OUT;    OUT.color=

2007-05-21 22:09:00 4601

原创 GPU编程入门(二)

关于上一个程序的一点解释 //顶点程序//全局变量vector color;//输入结构struct VS_INPUT...{vertor position :POSITION;}//输出结构struct VS_OUTPUT...{vertor position : POSITION;vector color:COLOR;}//主函数VS_OUTPUT main(VS_INPUT)..

2007-05-21 22:06:00 6382 2

原创 GPU编程入门(一)

该系列文章al  by  我就是条狗~~随便说点我记得住的历史,学点历史是有用的,可以增加兴趣最少...GPU就是图形处理器,随着硬件的发展越来越快,GPU的处理能力也今非昔比,现在GPU能够进行很复杂的数据处理,并且拥有某些CPU不同的处理特性。GPU语言就是用来用来控制GPU处理的一种语言吧...现在基本有两种,一种是NVIDIA的Cg(C for graphics 图形C语言)另一种

2007-05-21 21:58:00 40048 3

空空如也

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

TA关注的人

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