Direct3D基础

设置世界变化矩阵

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);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值