3d场景中摄影机的设置问题

3d场景下摄影机如何摆放和设置才能把场景显示到屏幕上,研究了很久摸不着头脑,希望能讲解下createPerspective 和lookAt ,虽然自己乱碰也能正常显示,但是视角很奇怪,如何根据场景做定量的摄影机设置,各位大神讲解一下啊。

自己试验的代码,能显示但是不知道如何控制位置把场景显示到屏幕窗口的下方,希望给指导下
std::string fileName = “models/changing.c3b”;
auto sprite3 = Sprite3D::create(fileName);
auto s = Director::getInstance()->getWinSize();
sprite3->setPosition3D(Vertex3F(0, 0,s.height));
this->addChild(sprite3);

auto camera =Camera::createPerspective(60, (GLfloat)s.width/s.height, 100, -200);

camera->setCameraFlag(CameraFlag::USER1);

camera->setPosition3D(Vec3(0, 500, 600) + sprite3->getPosition3D());
camera->lookAt(Vec3(0, 300, 100)+sprite3->getPosition3D(), Vec3(0,1,0));

this->addChild(camera);
this->setCameraMask((unsigned short )CameraFlag::USER1);

代码中用到的模型是FantasyWarrior3D 例子里面的,https://github.com/chukong/FantasyWarrior3D 可以下载到

首先,您需要对3D相机有个大体的了解,刚百度了一篇文章感觉还可以希望可以对您有帮助: http://bbs.tairan.com/article-6-1.html。
然后,再去看cpp-tests里面的相机例子。