現在Xファイルを読み込んで表示する、ビューアを作成しています。

ttp://sorceryforce.com/manageddirectx/direct3d_cameraoperation.html
ttp://sorceryforce.com/manageddirectx/direct3d_inputmouse.html

↑のページを参考にしているのですが、φが90度を超えた場合でも、
カメラをそのまま回転させる方法がわかりません。
DirectXSDK付属のMeshViewerのように、360度自在にモデルを回転させるには、
↑のコードをどのように改造すればよいのでしょうか?

識者の方、知恵をお貸しください。