1.繪圖前初始化Camera矩陣
2.程式運作時,根據使用者動作實時更新Camera矩陣
3.繪圖時先取得Camera矩陣,然後應用該矩陣繪圖
4.在消息處理過程中調用Camera的消息處理函數
隻有這樣才能實時得到變化的Sence
下面看一下核心代碼
1. 在InitD3D函數中初始化三種矩陣,world matrix, view matrix, porjection matrix,對應步驟1

Code
2. 定義函數SetupMatrix用來設定目前矩陣,定義函數OnFrameMove,用來更新每一幀

1 void OnFrameMove()
2 {
3 // update every frame
4 g_Camera.OnFrameMove() ;
5 }
6
3. 在Render()函數中,首先調用OnFrameMove(), 更新Frame,對應步驟2, 然後調用SetupMatrix(),取得目前矩陣并應用,對應步驟3
1 // Update frame
2 OnFrameMove() ;
3
4 // update matrix
5 SetupMatrix() ;
7
4. 在WinProc函數的最後調用camera的消息處理函數
1 g_Camera.HandleMessages(hWnd, msg, wParam, lParam) ;
完整代碼

本文轉自zdd部落格園部落格,原文連結:http://www.cnblogs.com/graphics/archive/2009/10/28/1591205.html,如需轉載請自行聯系原作者