• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            http://hi.baidu.com/zyb_debug/blog/item/aee40a12b5877c896438db9d.html
            不多說了,龍書的材質(zhì)燈光函數(shù)。可重用代碼
            //=========================================
            /**
            @brief  
            @param 定義一些顏色常量
            @return
            */

            //=========================================
            const D3DXCOLOR WHITE(D3DCOLOR_XRGB(255,255,255));
            const D3DXCOLOR BLACK(D3DCOLOR_XRGB(0,0,0));
            const D3DXCOLOR RED(D3DCOLOR_XRGB(255,0,0));
            const D3DXCOLOR GREEN(D3DCOLOR_XRGB(0,255,0));
            const D3DXCOLOR BLUE(D3DCOLOR_XRGB(0,0,255));
            const D3DXCOLOR YELLOW(D3DCOLOR_XRGB(255,255,0));
            const D3DXCOLOR CYAN(D3DCOLOR_XRGB(0,255,255));
            const D3DXCOLOR MAGENTA(D3DCOLOR_XRGB(255,0,255));


            D3DMATERIAL9 InitMtrl(D3DXCOLOR a,D3DXCOLOR d,D3DXCOLOR s,D3DXCOLOR e,
            float p);

            //=========================================
               /**
               @brief  
               @param 定義一些基本常用材質(zhì)
               @return
               
            */

            //=========================================
            const D3DMATERIAL9 WHITE_MTRL = InitMtrl(WHITE,WHITE,WHITE,BLACK,8.0f);
            const D3DMATERIAL9 RED_MTRL = InitMtrl(RED,RED,RED,BLACK,8.0f);
            const D3DMATERIAL9 GREEN_MTRL = InitMtrl(GREEN,GREEN,GREEN,BLACK,8.0f);
            const D3DMATERIAL9 BLUE_MTRL = InitMtrl(BLUE,BLUE,BLUE,BLACK,8.0f);
            const D3DMATERIAL9 YELLOW_MTRL = InitMtrl(YELLOW,YELLOW,YELLOW,BLACK,8.0f);

            //=========================================
               /**
               @brief  
               @param 燈光
               @return
               
            */

            //=========================================
            D3DLIGHT9 InitDirectionalLight(D3DXVECTOR3* direction, D3DXCOLOR* color);
            D3DLIGHT9 InitPointLight(D3DXVECTOR3
            * position, D3DXCOLOR* color);
            D3DLIGHT9 InitSpotLight(D3DXVECTOR3
            * position, D3DXVECTOR3* direction, D3DXCOLOR* color);

            //=========================================
            /**
            @brief  
            @param 初始化材質(zhì)
            @return
            */

            //=========================================
            D3DMATERIAL9 InitMtrl(D3DXCOLOR a,D3DXCOLOR d,D3DXCOLOR s,D3DXCOLOR e,float p)
            {
               D3DMATERIAL9 mtrl;
               mtrl.Ambient 
            = a;
               mtrl.Diffuse 
            = d;
               mtrl.Specular 
            = s;
               mtrl.Emissive 
            = e;
               mtrl.Power 
            = p;
               
            return mtrl;

            }


            //=========================================
               /**
               @brief  
               @param 燈光
               @return
               
            */

            //=========================================

            D3DLIGHT9 InitDirectionalLight(D3DXVECTOR3
            * direction, D3DXCOLOR* color)
            {
               D3DLIGHT9 light;
               ::ZeroMemory(
            &light, sizeof(light));

               light.Type      
            = D3DLIGHT_DIRECTIONAL;
               light.Ambient   
            = *color * 0.4f;
               light.Diffuse   
            = *color;
               light.Specular 
            = *color * 0.6f;
               light.Direction 
            = *direction;

               
            return light;
            }


            D3DLIGHT9 InitPointLight(D3DXVECTOR3
            * position, D3DXCOLOR* color)
            {
               D3DLIGHT9 light;
               ::ZeroMemory(
            &light, sizeof(light));

               light.Type      
            = D3DLIGHT_POINT;
               light.Ambient   
            = *color * 0.4f;
               light.Diffuse   
            = *color;
               light.Specular 
            = *color * 0.6f;
               light.Position 
            = *position;
               light.Range        
            = 1000.0f;
               light.Falloff      
            = 1.0f;
               light.Attenuation0 
            = 1.0f;
               light.Attenuation1 
            = 0.0f;
               light.Attenuation2 
            = 0.0f;

               
            return light;
            }


            D3DLIGHT9 InitSpotLight(D3DXVECTOR3
            * position, D3DXVECTOR3* direction, D3DXCOLOR* color)
            {
               D3DLIGHT9 light;
               ::ZeroMemory(
            &light, sizeof(light));

               light.Type      
            = D3DLIGHT_SPOT;
               light.Ambient   
            = *color * 0.4f;
               light.Diffuse   
            = *color;
               light.Specular 
            = *color * 0.6f;
               light.Position 
            = *position;
               light.Direction 
            = *direction;
               light.Range        
            = 1000.0f;
               light.Falloff      
            = 1.0f;
               light.Attenuation0 
            = 1.0f;
               light.Attenuation1 
            = 0.0f;
               light.Attenuation2 
            = 0.0f;
               light.Theta        
            = 0.5f;
               light.Phi          
            = 0.7f;

               
            return light;
            }


            }
            Posted on 2009-08-15 17:15 zyb_debug 閱讀(1100) 評(píng)論(0)  編輯 收藏 引用

            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            香蕉久久AⅤ一区二区三区| 国产精品99久久精品爆乳| 成人综合久久精品色婷婷| 内射无码专区久久亚洲| 亚洲欧美另类日本久久国产真实乱对白| 久久久久香蕉视频| 久久综合久久自在自线精品自 | 一本色道久久99一综合| 国产Av激情久久无码天堂| 久久精品国产99国产精偷| 亚洲AⅤ优女AV综合久久久| 久久亚洲春色中文字幕久久久| 91精品国产91久久久久久青草 | 无码精品久久一区二区三区 | 久久久久国产一区二区 | 免费精品99久久国产综合精品| 久久无码一区二区三区少妇| 久久成人国产精品| 久久丫忘忧草产品| 精品熟女少妇aⅴ免费久久| 久久综合给合久久狠狠狠97色69| 久久久久亚洲精品天堂久久久久久 | 色偷偷888欧美精品久久久| 亚洲第一极品精品无码久久| 久久99精品国产麻豆婷婷| 国产精品久久久福利| 亚洲国产欧美国产综合久久| 欧美日韩精品久久久久| 国产99久久久国产精品~~牛| 久久99国产精品二区不卡| 久久综合久久自在自线精品自| 国内精品人妻无码久久久影院导航 | 国产高潮国产高潮久久久91| 久久精品成人国产午夜| 99久久久精品免费观看国产| 日韩精品久久久久久久电影蜜臀| 久久天天躁狠狠躁夜夜不卡| 伊人伊成久久人综合网777| 久久综合五月丁香久久激情| 性做久久久久久久久老女人 | 久久九九亚洲精品|