Direct3D基础
2015-10-23 00:00
375 查看
设置世界变化矩阵
D3DXMATRIX mat_world;
D3DXMatrixIdentity(&mat_world);
g_pd3dDevice->SetTransform(D3DTS_WORLD,&mat_world);
设置观察矩阵
D3DXVECTOR3 eye(0.0f,0.0f,-10.0f);
D3DXVECTOR3 lookat(0.0f,0.0f,0.0f);
D3DXVECTOR3 up(0.0f,1.0f,0.0f);
D3DXMATRIX mat_view;
D3DXMatrixLookAtLH(&mat_view,&eye,&lookat,&up);
g_pd3dDevice->SetTransform(D3DTS_VIEW,&mat_view);
设置投影变换矩阵
D3DXMATRIX mat_proj;
D3DXMatrixPerspectiveFovLH(&mat_proj,D3DX_PI/2,1.0f,1.0f,100.0f);
g_pd3dDevice->SetTransform(D3DTS_PROJECTION,&mat_proj);
创建非多级渐进纹理:
D3DXCreateTextureFromFileEx( g_pd3dDevice,
L"texture.jpg",
0, 0, //纹理宽度和高度, "0"表示以图形文件的宽度和高度作为纹理的宽度和高度
1, //渐进纹理序列级数
0, //纹理使用方式, 一般为0
D3DFMT_X8R8G8B8, //纹理图形格式
D3DPOOL_MANAGED, //纹理资源的内存类型
D3DX_DEFAULT,
D3DX_DEFAULT,
0xFF000000,0,0,
&g_pTexture )
创建多级渐进纹理:
D3DXCreateTextureFromFileEx( g_pd3dDevice,
L"texture.jpg",
0, 0, //纹理宽度和高度, "0"表示以图形文件的宽度和高度作为纹理的宽度和高度
0, //渐进纹理序列级数
0, //纹理使用方式, 一般为0
D3DFMT_X8R8G8B8, //纹理图形格式
D3DPOOL_MANAGED, //纹理资源的内存类型
D3DX_DEFAULT,
D3DX_DEFAULT,
0xFF000000,0,0,
&g_pMipTex )
纹理过滤:
最近点采样
g_pd3dDevice->SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_POINT);
g_pd3dDevice->SetSamplerState(0, D3DSAMP_MINFILTER, D3DTEXF_POINT);
线性过滤
g_pd3dDevice->SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_LINEAR);
g_pd3dDevice->SetSamplerState(0, D3DSAMP_MINFILTER, D3DTEXF_LINEAR);
版权声明:本文为博主原创文章,未经博主允许不得转载。
D3DXMATRIX mat_world;
D3DXMatrixIdentity(&mat_world);
g_pd3dDevice->SetTransform(D3DTS_WORLD,&mat_world);
设置观察矩阵
D3DXVECTOR3 eye(0.0f,0.0f,-10.0f);
D3DXVECTOR3 lookat(0.0f,0.0f,0.0f);
D3DXVECTOR3 up(0.0f,1.0f,0.0f);
D3DXMATRIX mat_view;
D3DXMatrixLookAtLH(&mat_view,&eye,&lookat,&up);
g_pd3dDevice->SetTransform(D3DTS_VIEW,&mat_view);
设置投影变换矩阵
D3DXMATRIX mat_proj;
D3DXMatrixPerspectiveFovLH(&mat_proj,D3DX_PI/2,1.0f,1.0f,100.0f);
g_pd3dDevice->SetTransform(D3DTS_PROJECTION,&mat_proj);
创建非多级渐进纹理:
D3DXCreateTextureFromFileEx( g_pd3dDevice,
L"texture.jpg",
0, 0, //纹理宽度和高度, "0"表示以图形文件的宽度和高度作为纹理的宽度和高度
1, //渐进纹理序列级数
0, //纹理使用方式, 一般为0
D3DFMT_X8R8G8B8, //纹理图形格式
D3DPOOL_MANAGED, //纹理资源的内存类型
D3DX_DEFAULT,
D3DX_DEFAULT,
0xFF000000,0,0,
&g_pTexture )
创建多级渐进纹理:
D3DXCreateTextureFromFileEx( g_pd3dDevice,
L"texture.jpg",
0, 0, //纹理宽度和高度, "0"表示以图形文件的宽度和高度作为纹理的宽度和高度
0, //渐进纹理序列级数
0, //纹理使用方式, 一般为0
D3DFMT_X8R8G8B8, //纹理图形格式
D3DPOOL_MANAGED, //纹理资源的内存类型
D3DX_DEFAULT,
D3DX_DEFAULT,
0xFF000000,0,0,
&g_pMipTex )
纹理过滤:
最近点采样
g_pd3dDevice->SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_POINT);
g_pd3dDevice->SetSamplerState(0, D3DSAMP_MINFILTER, D3DTEXF_POINT);
线性过滤
g_pd3dDevice->SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_LINEAR);
g_pd3dDevice->SetSamplerState(0, D3DSAMP_MINFILTER, D3DTEXF_LINEAR);
版权声明:本文为博主原创文章,未经博主允许不得转载。
相关文章推荐
- C#实现图形位置组合转换的方法
- C#实现判断图形文件格式的方法
- C#实现图形路径变换的方法
- php生成图形验证码几种方法小结
- CentOS的图形安装及初始环境设置教程
- C#实现图形区域组合操作的方法
- php实现图形显示Ip地址的代码及注释
- Java Web开发之图形验证码的生成与使用方法
- android中图形图像处理之drawable用法分析
- Android开发之图形图像与动画(五)LayoutAnimationController详解
- C++实现图形界面时钟表盘代码
- C++实现二维图形的傅里叶变换
- Java在Linux下 不能处理图形的解决办法 分享
- LINUX6不能启动,bringing up interface eth0:
- 北京图王软件开发有限公司产品介绍
- PB做的史上最强的矢量画图软件(VISIO也要低头)
- 一次接线图的图符设计
- 一次接线图的图形概要设计
- 电力行业的图形应用概谈
- 电力行业的图形功能介绍