zoukankan      html  css  js  c++  java
  • Direct3D 9学习笔记(6)纹理概念

    即贴图

    一.加载图片资源

    image

    二.设置当前纹理

    SetTexture方法

    D3DXCreateTextureFromFile(
        Device,
        "dx5_logo.bmp",
        &Tex);
    
    Device->SetTexture(0, Tex);
    

    image

    三.纹理过滤器

    两种情况:放大和缩小

    image

    三种设置方式

    image

    //
    // Values for D3DSAMP_***FILTER texture stage states
    //
    typedef enum _D3DTEXTUREFILTERTYPE
    {
        D3DTEXF_NONE            = 0,    // filtering disabled (valid for mip filter only)
        D3DTEXF_POINT           = 1,    // nearest
        D3DTEXF_LINEAR          = 2,    // linear interpolation
        D3DTEXF_ANISOTROPIC     = 3,    // anisotropic
        D3DTEXF_PYRAMIDALQUAD   = 6,    // 4-sample tent
        D3DTEXF_GAUSSIANQUAD    = 7,    // 4-sample gaussian
    /* D3D9Ex only -- */
    #if !defined(D3D_DISABLE_9EX)
    
        D3DTEXF_CONVOLUTIONMONO = 8,    // Convolution filter for monochrome textures
    
    #endif // !D3D_DISABLE_9EX
    /* -- D3D9Ex only */
        D3DTEXF_FORCE_DWORD     = 0x7fffffff,   // force 32-bit size enum
    } D3DTEXTUREFILTERTYPE;
    

    设置方法

    Device->SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_LINEAR);
    Device->SetSamplerState(0, D3DSAMP_MINFILTER, D3DTEXF_LINEAR);
    

    四.渐进纹理链

    即一个图片一下子缩小到很小就可能会产生较大差异化,逐步减小以尽量保持原图质量

    image

    设置多级渐进纹理过滤器

    image

    五.总结

    image

  • 相关阅读:
    poj2955(区间dp)
    poj3280(区间dp)
    poj1651(区间dp)
    hdu5001(概率dp)
    hdu4389(数位dp)
    hdu4352(数位dp)
    CF 148D(概率dp)
    zoj3329(概率dp)
    POJ1028 Web Navigation
    POJ1027 The Same Game
  • 原文地址:https://www.cnblogs.com/Clingingboy/p/2629099.html
Copyright © 2011-2022 走看看