помогите псевдокодом

ну или идеи киньте
надо камера примерно как в nfs .. ну или что нить нормальное
щас update камеры работает на немного страшноватом коде
но он работает
irr::core::matrix4 camera_base_projection;
camera_base_projection.setTranslation(irr::core::vector3df(-4.0f,2.0f,0.0f));
NxMat34 pose = player->getGlobalPose();
const NxVec3 pos = pose.t;
const NxMat33 orient = pose.M;
irr::core::matrix4 irrMat;
orient.getColumnMajorStride4(&irrMat.M[0]);
irr::core::vector3df rot = irrMat.getRotationDegrees();
pos.get(&irrMat.M[12]);
irrMat.M[3] = irrMat.M[7] = irrMat.M[11] = 0.0f;
irrMat.M[15] = 1.0f;
irr::core::matrix4 irrMat2;
irrMat2.setRotationDegrees(rot);
irrMat2.setTranslation(irrMat.getTranslation());
irrMat2 *= camera_base_projection;
irr::core::vector3df pos_c = irrMat2.getTranslation();
irr::core::vector3df target(pose.t.x,pose.t.y,pose.t.z);
target += camera->getTarget() * 0.0005f;
camera->setPosition(pos_c);
camera->setTarget(target);
ps. матричные операции зло, запутатся нефиг делать...