计算机游戏与动画技术(三)5月27日作业

测试通过不断改变观察矩阵实现动画效果。

设计思路:将观察矩阵写成随时间改变的函数,并放在主函数中。

因此,只要将观察矩阵的参数改为随时间变换的变量即可。

重写的函数:

//-----------------------------------------------------------------------------
// Desc: 观察矩阵变换
//-----------------------------------------------------------------------------
void setViewByTime(CTime start) {
	CTime now = CTime::GetCurrentTime();
	CTimeSpan timeSpan;
	timeSpan = now - start;
	float t = timeSpan.GetTotalSeconds();
	D3DXVECTOR3 vEyePt(t*4, t, t);
	D3DXVECTOR3 vLookatPt(t, t, t);
	D3DXVECTOR3 vUpVec(0.0f, 1.0f, 0.0f);
	D3DXMATRIXA16 matView;
	D3DXMatrixLookAtLH(&matView, &vEyePt, &vLookatPt, &vUpVec);
	g_pd3dDevice->SetTransform(D3DTS_VIEW, &matView);
}

截图:

计算机游戏与动画技术(三)5月27日作业_第1张图片计算机游戏与动画技术(三)5月27日作业_第2张图片计算机游戏与动画技术(三)5月27日作业_第3张图片

你可能感兴趣的:(计算机游戏与动画技术)