作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
正在编写一个小型的 openscenegraph 应用程序,并且需要一种更改相机高度的方法。本质上,眼睛直视着空间中的球。我想要做的是能够降低摄像机高度,以便我能够从下方 catch ,并在需要时提高摄像机高度。如何使用 oPengl 代码或 OpenScenegraph 实现此目的?
int main(int argc, char* argv[])
{
osg::ref_ptr<osg::ShapeDrawable> shape2 = new osg::ShapeDrawable;
shape2->setShape( new osg::Sphere(osg::Vec3(3.0f, 0.0f, 0.0f),1.0f) );
shape2->setColor( osg::Vec4(0.0f, 0.0f, 1.0f, 1.0f) );
osg::ref_ptr<osg::Geode> root = new osg::Geode;
root->addDrawable( shape2.get() );///add first osgshapeDrawable2
osgViewer::Viewer viewer;
viewer.setSceneData( root.get() );///set the Geode as scenedata for the viewer
return viewer.run();
}
最佳答案
您需要接管 osgViewer::Camera
的控制权,您不应该尝试使用基本的 OpenGL 执行此操作。
osgViewer::Viewer::getCameraWithFocus
应该让您获得相机。从这里您可以设置相机的位置和外观。
请记住,在像您这样的基本应用中,相机操纵器每帧一次设置相机的位置(基于鼠标交互)。
您需要决定如何处理鼠标输入,并可能接管相机操纵器正在执行的任务。
关于C++ OpenSceneGraph 更改相机眼睛高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13615588/
我对机器学习有一点了解,想自己实现一个学习系统,但不知道该怎么做。谁能给我一个演示或使用其他方法来比较人脸? 这是一个相关的帖子:https://stackoverflow.com/questions
这不是问题,但我很困惑什么 3D 空间对应什么。我习惯于听到模型、 View 、投影空间,但在我的工作中他们使用世界、眼睛、投影。我没有意识到 World 和 Eye 是模型和 View 的同义词,所
我是一名优秀的程序员,十分优秀!