Direct3D基础-材质D3DMATERIAL9
来源:互联网 发布:谈谈你对java的理解 编辑:程序博客网 时间:2024/05/16 12:49
光照的两大要素是光源和物体的材质,物体表面材质属性决定了它能反射什么颜色的光线以及反射多少光线。
一、Direct3D中材质的定义
D3D中材质通过D3DMATERIAL9结构来表示:
typedef struct D3DMATERIAL9 ...{
D3DCOLORVALUE Diffuse;
D3DCOLORVALUE Ambient;
D3DCOLORVALUE Specular;
D3DCOLORVALUE Emissive;
float Power;
} D3DMATERIAL9, *LPD3DMATERIAL9;
D3DCOLORVALUE Diffuse;
D3DCOLORVALUE Ambient;
D3DCOLORVALUE Specular;
D3DCOLORVALUE Emissive;
float Power;
} D3DMATERIAL9, *LPD3DMATERIAL9;
- Diffuse-指定表面反射的漫反射光。
- Ambient-指定表面反射的环境光。
- Specular-指定表面反射的镜面光。
- Emissive-表面本身自发光。
- Power -镜面高光,它的值是高光的锐利值,该值越大表示高光强度与周围亮度相差越大。
表面顶点的颜色亮度总和为:
I表示物体的颜色值,上式表示物体的颜色总和=物体反射环境光+物体反射漫反射光+物体反射镜面反射光+自发光。
二、材质的应用
函数IDirect3DDevice9::SetMaterial()设置Direct3D当前的材质属性:
HRESULT SetMaterial(
CONST D3DMATERIAL9* pMaterial
);
CONST D3DMATERIAL9* pMaterial
);
参考文献:
Frank D. Luna:Introduction to 3D Game Programming with DirectX 9.0
翁云兵:3D游戏程序设计入门(DirectX9.0)
陈卡:DirectX9 3D 图形程序设计
- Direct3D基础-材质D3DMATERIAL9
- 材质D3DMATERIAL9
- D3D中材质通过D3DMATERIAL9结构说明
- Direct3D光照和材质
- Direct3D---光与材质
- 【Direct3D】光照与材质
- Direct3D基础-灯光D3DLIGHT9
- Direct3D基础
- Direct3D基础
- 3D游戏基础 Direct3D(五) 固定管线之"光"(1):光的分类与材质
- Direct3D基础:D3DPRESENT_PARAMETERS
- Direct3D数学基础函数
- Direct3D基础回顾
- Direct3D数学基础函数
- Direct3D之代码基础
- Direct3D 11 教程1:Direct3D 11基础
- Direct3D学习手记四:光照、材质与顶点法向量
- Direct3D开启光照和使用材质绘制物体
- 在delphi屏蔽系统功能键
- 行道迟迟
- Jakarta POI 3.0—访问微软Office格式文件的Java API
- Spring+Hibernate+Struts程序移植Weblogic问题集(转)
- 全面掌握C#中的拖放操作
- Direct3D基础-材质D3DMATERIAL9
- 歌曲:启程
- Unicode编码
- 尝试CSDN的blog
- 为kaine测试trackback
- linux学习(远程控制跟IP地址配置)2007.6.1
- asp.net(c#)中DataGrid问题
- 2007年3月18日实考高级口译听力 学习 (昂立学院口译项目部 网址:www.onlycollege.com.cn )
- 算法习题 (去掉数组重复元素 + 交换一串数组元素 )