12 2010 档案
Directx11 HelloWorld之简单三角形绘制
摘要:学习SDK,在d3d11中进行简单的三角形绘制,以此熟悉Direct11的绘制流程。此文参考上一篇的Directx11的基本Demo。相对Directx11的basic demo,在Directx11中绘制一个三角形,初始化的工作主要是在InitDevice()中1:创建一个顶点着色器Vertex Shader;2:描述我们自己的顶点格式D3D11_INPUT_ELEMENT_DESC;3:创建像素着色器Pixel Shader;4:描述,创建存储我们要绘制的顶点的buffer并绑定其到pipeline。 然后在Render部分1:指定我们要调用的像素着色器和顶点着色器;2:调用Draw()。 阅读全文
posted @ 2010-12-22 22:14 Bester 阅读(609) 评论(0) 推荐(0)
HLSL Effect的vertex shader和pixel shader的参数传递
摘要:HLSL基本以C语言的习惯来写的,但是如果完全以C语言的角度来看,我个人感觉入门最难理解就是顶点着色器和像素着色器的两个函数的参数传递了。下面以最简单的HLSL中效果框架举例说下自己的理解。uniform extern float4x4 gWVP;struct OutputVS{ float4 posH : POSITION0; float4 color : COLOR0;};OutputVS ColorVS(float3 posL : POSITION0, float4 c : COLOR0){ // Zero out our output.OutputVS outVS = (Outpu.. 阅读全文
posted @ 2010-12-13 02:48 Bester 阅读(309) 评论(0) 推荐(0)
Directx11 HelloWorld之与Directx9的比较
摘要:这些天终于受不了诱惑,决定入手Directx11,看了下一个最basic 的demo,总结下自己的理解。先看看整体框架:所有函数的声明。可以看到和D3d9c差不多,都是初始化窗口,创建设备,清理设备,消息循环和渲染。下面我们将看到发生变化的主要是创建设备的InitDevice()函数,其他都是些MFC框架。HRESULT InitWindow( HINSTANCE hInstance, int nCmdShow );HRESULT InitDevice();void CleanupDevice();LRESULT CALLBACK WndProc( HWND, UINT, WPARAM, L. 阅读全文
posted @ 2010-12-07 01:50 Bester 阅读(592) 评论(0) 推荐(0)