在3DBrowser中,可以增加一个插件,插件中只有一个初始化函数Init3DPlugin(),可以实现插件的初始化,插件中有一个实现FrameListener 接口的类,该类可以实现键盘鼠标的处理,从而可以控制场景中物体的动作。
// Create the FrameListener
mFrameListener = new (mWindow, mCamera, mSceneMgr);
mRoot->addFrameListener(mFrameListener);
由于FrameListener接口构造函数需要三个参数mWindow,mCamera,mSceneMgr,因此,创建FrameListener应该在窗口,相机和场景管理器创建之后再创建。
可以看出,其中最重要的就是nWindow,FrameListener需要监听该窗口的消息循环,只有这样,才可以得到鼠标和键盘消息。