之后的一段时间准备学习一下DirectXShader相关的文章.

  为了能够运行Shader,得先写个小程序.这里我选择了DirectX(其实我个人觉得,如果只是想学习Shader的话,XNA是个不错的选择)

  看了几天的文档,重点看了一下DirectX Sample里面的Basic HLSL,可能是微软为了把一些控件集成进去,方便大家观察效果的原因吧,微软使用了DXUT这个框架,对我等c++windows编程的初学者来说特别的不爽,所以我决定脱离DXUT框架来写一下

  首先打开Sample里面的D3DX9 Create Device.我们就往这个程序里面添加代码.

1. 我们添加一个LoadMesh函数: 导入.X文件

  

 S_OK;
}

 

2.我们添加OnCreateDevice函数,在显卡初始化完成后,可以进行一些处理操作:

 

 S_OK;
}

 

3.我们开始渲染:

 

Present( NULL, NULL, NULL, NULL );
}

 

4.完成程序退出后的释放操作:

 

Release();
}

 

5.修改wWinMain函数,使得中间一段看起来这样:

 

6.添加头文件和全局变量:

                  g_nActiveLight;

D3DXVECTOR3 g_vLightDir[MAX_LIGHTS];
D3DXCOLOR   g_vLightDiffuse[MAX_LIGHTS];

 

7.将Tiny.X,Tiny_Skin.dds,BasicHLSL.fx放入项目的目录,并把BasicHLSL.fx添加进项目,就完成了我们第一个可以运行Shader的程序

相关文章:

  • 2021-04-27
  • 2022-12-23
  • 2021-12-30
  • 2022-02-16
  • 2022-01-04
  • 2021-12-01
  • 2021-06-27
  • 2022-12-23
猜你喜欢
  • 2022-02-04
  • 2021-09-20
  • 2021-11-29
  • 2022-02-19
  • 2021-06-25
  • 2021-09-17
相关资源
相似解决方案