zoukankan      html  css  js  c++  java
  • D3D中材质通过D3DMATERIAL9结构说明

    光照的两大要素是光源和物体的材质,物体表面材质属性决定了它能反射什么颜色的光线以及反射多少光线。

    一、Direct3D中材质的定义

    D3D中材质通过D3DMATERIAL9结构来表示:

    typedef struct D3DMATERIAL9 {
        D3DCOLORVALUE Diffuse;
        D3DCOLORVALUE Ambient;
        D3DCOLORVALUE Specular;
        D3DCOLORVALUE Emissive;
        float Power;
    } D3DMATERIAL9, *LPD3DMATERIAL9;
    Diffuse-指定表面反射的漫反射光。
    Ambient-指定表面反射的环境光。
    Specular-指定表面反射的镜面光。
    Emissive-表面本身自发光。
    Power -镜面高光,它的值是高光的锐利值,该值越大表示高光强度与周围亮度相差越大。
    表面顶点的颜色亮度总和为:

    D3D中材质通过D3DMATERIAL9结构说明

    I表示物体的颜色值,上式表示物体的颜色总和=物体反射环境光+物体反射漫反射光+物体反射镜面反射光+自发光。

    二、材质的应用

    函数IDirect3DDevice9::SetMaterial()设置Direct3D当前的材质属性:

    HRESULT SetMaterial(
    CONST D3DMATERIAL9* pMaterial
    );

  • 相关阅读:
    JVM监控工具之JVisualVM
    JMV监控工具之JConsole
    JVM监控工具之jmap、jstat、stack、jps、jstatd、jinfo、jhat、jdb
    深入理解JVM
    Tomcat使用介绍
    性能测试工具之Apache ab
    性能测试工具之WebBench
    Apache监控调优
    Apache配置文件介绍
    Apache工作模式切换
  • 原文地址:https://www.cnblogs.com/wonderKK/p/2240341.html
Copyright © 2011-2022 走看看