|
class UpdateCallback : public osg::NodeCallback
{
public:
//构造函数
UpdateCallback(A* a, B* b, C& c, osg::Node* nd)
{
}
~UpdateCallback()
{
}
virtual void operator()(osg::Node* node, osg::NodeVisitor* nv)
{}
private:
A* aa;
B* bb;
C cc;
osg::Node* nod;
};
///////////////////////////////////////////////////////////////////////////
while(!viewer->done())
{
osg->update(); //这个函数里执行更新回调。。
osg->PreFrameUpdate();
viewer->frame();
osg->PostFrameUpdate();
//Sleep(10); // 让其它程也占用CPU,放出10MS
}
请问像上面那样写回调类可以么(给他设了好几个成员变量,因为要对一些对象进行求交运算),执行效率会不会很低?另外后面把执行更新回调的函数放在while循环里可以么,我是在mfc下的。
还有一个小问题,如果需要将一些运动对象让它在地上运动,当对象很多时候,与地形的求交有没有什么好办法,我发现在当对象很多的时候的update要占很长的时间。。。3q |
|