Using MayaCamUI
We are going to add to your 3D scene a navigation facility known to us since we modelled a 3D software. Using MayaCamUI
, you can do this with just a few lines of code.
Getting ready
We need to have some 3D objects in our scene. You can use some primitives provided by Cinder, for example:
gl::drawColorCube(Vec3f::zero(), Vec3f(4.f, 4.f, 4.f));
A color cube is a cube with a different color on each face, so it is easy to determine the orientation.
How to do it...
Perform the following steps to create camera navigation:
We need the
MayaCam.h
header file:#include "cinder/MayaCamUI.h"
We also need some member declarations in the main class:
CameraPersp mCam; MayaCamUI mMayaCam;
Inside the
setup
method, we are going to set up the camera's initial state:mCam.setPerspective(45.0f, getWindowAspectRatio(), 0.1, 10000); mMayaCam.setCurrentCam(mCam);
Now we have to implement three methods:
void MainApp::resize( ResizeEvent event ) { mCam = mMayaCam.getCamera(); mCam.setAspectRatio(getWindowAspectRatio...