Qt irrlicht(鬼火)3D引擎 摄像机旋转问题

简介: 点击打开链接Irrlicht中的摄像有一个函数 setUpVector()
if (m_device != 0 ) { core::vector3df rotation(y,x,0.f); m_camera->setRotation(rotation); f32 viewlength = m_camera->getTarget().getLength(); f32 angle = z*2*Pi/360.0; m_camera->setUpVector(vector3df(viewlength*cos(angle),viewlength*sin(angle),0.0f)); }


具体用法参考上面

还有一个方法旋转摄像机

是控制另一轴的旋转


void Scene_3D::slotUSBENGINE(f32 x, f32 y, f32 z)
{
    core::vector3df pos = m_camera->getPosition();
    core::vector3df target = (m_camera->getTarget() - m_camera->getAbsolutePosition());
    core::vector3df relativeRotation = target.getHorizontalAngle();
    target.set(0,0, core::max_(1.f, pos.getLength()));
    core::vector3df movedir = target;
    core::matrix4 mat;
    mat.setRotationDegrees(core::vector3df(relativeRotation.X, relativeRotation.Y, 0));
    mat.transformVect(target);
    movedir = target;
    movedir.normalize();
    pos += movedir*0.5f*(x/5);
    core::vector3df strafevect = target;
    strafevect = strafevect.crossProduct(m_camera->getUpVector());
    m_camera->setPosition(pos);
    target += pos;
    m_camera->setTarget(target);
    //    qDebug()<<"hjsdfjhkgsdfgjhksdfajhgksadfjhklsdfahjklsdfakhjlsakjhlsdfhkjsdfajhklsafkjhlsfajhklsfdahjklfsdahjklfsdahjklsfjkhlsd";
}
目录
相关文章
|
6月前
|
数据可视化 API vr&ar
探索Qt 3D之旅:从基础到实战,打造引人入胜的三维界面与应用
探索Qt 3D之旅:从基础到实战,打造引人入胜的三维界面与应用
911 2
|
6月前
QT4.7版本的OPENGL的3D旋转模型例子
QT4.7版本的OPENGL的3D旋转模型例子
127 0
|
6月前
|
数据可视化 图形学 开发者
【Qt 底层机制之图形渲染引擎】深入理解 Qt 的 渲染机制:从基础渲染到高级图形
【Qt 底层机制之图形渲染引擎】深入理解 Qt 的 渲染机制:从基础渲染到高级图形
959 4
|
6月前
|
Linux API iOS开发
【Qt 渲染引擎】一文带你了解qt的三种 渲染引擎,包括栅格引擎(Raster)、OpenGL 和本地绘图系统
【Qt 渲染引擎】一文带你了解qt的三种 渲染引擎,包括栅格引擎(Raster)、OpenGL 和本地绘图系统
200 0
|
存储
QT+OpenGL开始3D
顶点坐标起始于局部空间,它在之后会变为世界坐标,观察坐标,裁减坐标,并最后以屏幕坐标的形式结束。
105 0
|
Web App开发 编译器 C语言
QT5.14.2使用webkit引擎完成网页浏览
QT5.14.2使用webkit引擎完成网页浏览
1048 0
QT5.14.2使用webkit引擎完成网页浏览
|
C++
Qt功能优化:Qt 3D画廊
Qt功能优化:Qt 3D画廊
252 1
Qt功能优化:Qt 3D画廊
案例分享:Qt+OSG三维点云引擎(支持原点,缩放,单独轴或者组合多轴拽拖旋转,支持导入点云文件)
案例分享:Qt+OSG三维点云引擎(支持原点,缩放,单独轴或者组合多轴拽拖旋转,支持导入点云文件)
案例分享:Qt+OSG三维点云引擎(支持原点,缩放,单独轴或者组合多轴拽拖旋转,支持导入点云文件)
|
编解码 算法 计算机视觉
案例分享:Qt内窥镜相机录像程序(打开摄像头、支持多种摄像头、分辨率调整、翻转、旋转、亮度调整、拍照、录像、回放图片、回放录像)
案例分享:Qt内窥镜相机录像程序(打开摄像头、支持多种摄像头、分辨率调整、翻转、旋转、亮度调整、拍照、录像、回放图片、回放录像)
案例分享:Qt内窥镜相机录像程序(打开摄像头、支持多种摄像头、分辨率调整、翻转、旋转、亮度调整、拍照、录像、回放图片、回放录像)

推荐镜像

更多