matlab火星漫游车转向控制,OSG开发笔记(二十四):OSG漫游之平移与转向

本文介绍了如何使用OpenSceneGraph(OSG)开发漫游器,实现类似CS游戏中的WSAD移动和QE/方向键视角转动功能。作者通过创建自定义的`MyCameraMainpulator`类,覆盖`osgGA::MatrixManipulator`的纯虚函数,实现了漫游器的初始化、位置移动和视角旋转。文章详细讲解了漫游器的工作原理,并提供了源代码示例。
摘要由CSDN通过智能技术生成

若该文为原创文章,未经允许不得转载

原博主博客地址:https://blog.csdn.net/qq21497936

本文章博客地址:https://blog.csdn.net/qq21497936/article/details/98964269

目录

前言

Demo工程实现功能

Demo运行效果

操作器概述

初始化默认位置

移动位置

实现简单的漫游器

漫游器代码

MyCameraMainpulator.h

MyCameraMainpulator.cpp

OSG 3.4.0 中的漫游器概览

OSG三维开发专栏

《OSG开发笔记(一):OSG介绍、编译》

《OSG开发笔记(二):OSG帮助文档编译》

《OSG开发笔记(三):OSG使用osgQt嵌入Qt应用程序》

《OSG开发笔记(四):OSG不使用osgQt重写类嵌入Qt应用程序》:

《OSG开发笔记(五):OSG场景理解与基础类概述》

《OSG开发笔记(六):OSG内存管理》

《OSG开发笔记(七):OSG复现OpenGL入门示例和OSG坐标系》

《OSG开发笔记(八):OSG模型文件存储与读取》

《OSG开发笔记(九):OSG模型的基本操作之添加/删除、显示/隐藏、开关节点开/关》:

《OSG开发笔记(十):OSG模型的变换之平移、旋转和缩放》

《OSG开发笔记(十一):OSG渲染状态与2D纹理映射》

《OSG开发笔记(十二):OSG基本几何图形、内置几何类型》

《OSG开发笔记(十三):OSG三维纹理映射(体渲染)》

《OSG开发笔记(十四):OSG交互》

《OSG开发笔记(十五):OSG光照》

《OSG开发笔记(十六):OSG视口、相机和视点》

《OSG开发笔记(十七):OSG中的相机移动》

《OSG开发笔记(十八):OSG鼠标拾取pick、拽托球体以及多光源》

《OSG开发笔记(十九):OSG文字显示》

《OSG开发笔记(二十):OSG使用HUD显示文字》

《OSG开发笔记(二十一):OSG使用HUD绘制图形以及纹理混合模式》

《OSG开发笔记(二十二):OSG场景背景》

《OSG开发笔记(二十三):Qt使用QOpenGLWidget渲染OSG和地球仪》

《OSG开发笔记(二十四):OSG漫游之平移、转向和低抬头》

《OSG开发笔记(二十五):OSG漫游之CS移动、碰撞检测与跳跃》

《OSG开发笔记(二十六):OSG漫游之上下楼梯》

《OSG开发笔记(二十七):OSG路径漫游之录制播放固定路径动画》

《OSG开发笔记(二十八):OSG模型固定路径动画》

持续补充中…

OSG开发笔记(二十四):OSG漫游之平移、转向和低抬头

前言

80后典型的使用三维技术的游戏代表作就是CS,CS中可以使用WSAD移动,移动的过程就是漫游。

Demo工程实现功能

WSAD:向前后左右移动

QE/方向键左右:向左右移动视角

方向键上下:向上下移动视角(抬头、低头)

Demo运行效果

e96f7a619870d6f8b748bb157c9a9a66.png

32a98c710ef6d2e38020c184fcc27a25.png

94a18623a714b52528110e0b680d1a5d.png

操作器概述

在场景中有一个重要的概念,漫游。漫游就是在场景中移动,漫游可以按照用户的要求漫游也可以按照预先的计划漫游(路线)。在之前的开发中,都是用的是OSG自带的操作器Trackball,大众而好用,满足基本需求。但是无法实现CS中的漫游方式(移动还有碰撞等等)。

场景的核心管理类是viewer,想要自定义漫游则必须相应事件,比如鼠标动了

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值