摘要:
在图形应用程序中,读者也希望为显示在屏幕上的内容保存一幅屏幕截图。这非常有用。幸运的是,在Direct3D中创建和保存屏幕截图非常简单明了。为了实现该功能,需要获取当前已渲染好的场景宽度和高度,创建Direct3D表面,将渲染后的场景复制到创建好的表面对象中,然后调用一个Direct3D函数将表面保存到Direct3D支持的文件格式中。该文件格式可以是前面讨论过的任何标准文件类型,如.jpg、.tga或.bmp。这意味着为了保存程序屏幕截图,就要使用4个函数。1.首先要获取当前的显示模式。这样就可以获取像渲染场景宽度和高度这样的信息。2.接下来,要创建一个幕外表面。该表面用于存储已渲染好的场景 阅读全文
posted @ 2011-08-26 16:28
小 楼 一 夜 听 春 雨
阅读(1666)
评论(0)
推荐(0)
摘要:
使用Direct3D创建凸凹贴图在Direct3D中创建凸凹纹理贴图是非常简单的过程。使用D3DX函数D3DXComputeNormalMap()即可将Direct3D支持的所有图像格式转换成凸凹贴图。使用Direct3D函数计算法线贴图的最大优势就是在使用这些图片时,不需要知道图的生成方式。同样,还可以使用另一个D3DX函数D3DXSaveTextureToFile(),将新生成的凸凹贴图保存到文件中。D3DXComputeNormalMap()函数原型非常简单,参数pTexture是保存法线贴图的Direct3D纹理对象。参数pSrcTexture是想要转换成法线贴图的原始图像。参数pSr 阅读全文
posted @ 2011-08-26 14:40
小 楼 一 夜 听 春 雨
阅读(1258)
评论(0)
推荐(0)
摘要:
GetLevelDesc函数在MSDN中:Retrieves a level description of a texture resource.HRESULT GetLevelDesc( UINT Level, D3DSURFACE_DESC * pDesc);ParametersLevel[in] Identifies a level of the texture resource. This method returns asurface description for the level specified by this parameter.pDesc[out] Pointer to 阅读全文
posted @ 2011-08-26 14:34
小 楼 一 夜 听 春 雨
阅读(1726)
评论(1)
推荐(0)

浙公网安备 33010602011771号