原文:D3D中的texture应用示例

 

本文列举了Direct3D中各种纹理应用实现:黑暗贴图,发光贴图,漫反射映射贴图,细节纹理,纹理混合,有较详尽的注解。其中黑暗贴图,发光贴图,细节纹理都是采用多重纹理的方法实现(也可以采用多次渲染混合实现)。

示例代码使用Beginning direct3D game programming中的框架,省去不少事情,可以专注纹理话题。代码:点此下载

下面来看代码与效果:

正常的纹理贴图效果:
【转载】D3D中的Texture应用示例

正常的纹理贴图代码:

 1【转载】D3D中的Texture应用示例//基本纹理
 2【转载】D3D中的Texture应用示例void drawNormalTexture()
 3}


黑暗纹理贴图效果:
【转载】D3D中的Texture应用示例

黑暗纹理贴图代码:

 1【转载】D3D中的Texture应用示例//黑暗映射纹理
 2【转载】D3D中的Texture应用示例void drawDarkMapTexture()
 3}


漫反射映射贴图效果:夜光镜效果
【转载】D3D中的Texture应用示例

漫反射映射贴图代码:

 1【转载】D3D中的Texture应用示例//漫射光映射纹理
 2【转载】D3D中的Texture应用示例void drawDiffuseTexture()
 3}


发光映射纹理贴图效果:
【转载】D3D中的Texture应用示例

发光映射纹理贴图代码:

 1【转载】D3D中的Texture应用示例//发光映射纹理
 2【转载】D3D中的Texture应用示例void drawGlowMapTexture()
 3}


细节映射纹理贴图:实现粗糙的凹凸效果
【转载】D3D中的Texture应用示例

细节映射纹理贴图代码:

 1【转载】D3D中的Texture应用示例//细节映射纹理:实现凹凸效果
 2【转载】D3D中的Texture应用示例void drawDetailMapTexture()
 3}


alpha纹理混合效果:多次渲染实现
【转载】D3D中的Texture应用示例

alph纹理混合代码:

 1【转载】D3D中的Texture应用示例//alpha混合纹理
 2【转载】D3D中的Texture应用示例void drawAlphaBlendTexture()
 3}

相关文章: