若该文为原创文章,未经允许不得转载
原博主博客地址: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运行效果
操作器概述
在场景中有一个重要的概念,漫游。漫游就是在场景中移动,漫游可以按照用户的要求漫游也可以按照预先的计划漫游(路线)。在之前的开发中,都是用的是OSG自带的操作器Trackball,大众而好用,满足基本需求。但是无法实现CS中的漫游方式(移动还有碰撞等等)。
场景的核心管理类是viewer,想要自定义漫游则必须相应事件,比如鼠标动了