基于Logitech三维鼠标的虚拟建筑漫游系统(2)
发布时间:2021-06-08
发布时间:2021-06-08
基于Logitech三维鼠标的虚拟建筑漫游系统
1:能够建立起虚拟环境的三维几何模型,以及物体的真实感特性,如光照、纹理等;
2:系统能够实时地生成图形;
3:系统生成的画面必须达到一定的真实感;
4:要提供观察者能够任意漫游的交互工具
5:要能提供立体视觉。
为了给用户创建一个身临其境和沉浸其中的环境,必要条件之一就是根据需要在实时漫游系统中逼真地表现出客观世界中的一切对象。在虚拟场景中,可以假设客观世界是由若干对象组成,每个对象的几何外形可以通过多边形进行拟合,对象的真实感则通过对多边形赋予材质和光照来表现。考虑到目前市场上三维造型软件已相当成熟,以及本项目的特点、图形计算机性能以及视景仿真的实时性要求,选用MultiGen-Paradigm公司的实时三维建模软件MultiGen Creator作为虚拟环境的建模工具[3]。
2 场景漫游中的视点变换与控制
虚拟场景漫游是指用户在虚拟场景中不断改变观察视点的位置以及视线方向,如靠近、远离场景中的某个物体,或作环视、俯视及仰视等。场景漫游是虚拟环境中一个最基本的交互手段。从图形学角度来讲,对于一个已经在世界坐标系中构造好的三维场景而言,漫游的实质就是在图形引擎渲染每一帧场景图像之前,改变观察空间的定义参数,从而达到从不同位置、角度观察场景的目的。
v观察方向为V(Vx,Vy,Vz)。如果在渲染下一假设当前帧场景图像的视点位置为E(Ex,Ey,Ez),
观察方向向量以先后顺序绕X、帧场景图像时,视点位置在世界坐标系中的平移量为 ( x, y, z),
Y、Z轴分别转动α、β、δ角,则对于下一帧场景图像而言,其视点位置和视点方向分别为:
′ 1 Ex E′
y = 0
Ez′ 0 1 0
Vx′ cosδ V′ sinδ y =
Vz′ 0 1 0sinδcosδ0000 x Ex 10 y Ey (1) ×01 z Ez 001 1 0 sinβ1000cosβ000 1 0 0cosα0 0 sinα 01 00sinαcosα00 Vx 0 Vy (2) 0 Vz 1 1 00 cosβ 00 010 sinβ 01 0
上述旋转变换有先后顺序。旋转顺序不同,(2)式中的三个变换矩阵作用顺序也不同。
2.1 三维鼠标的组成
三维空间中的对象一般都具有空间6自由度信息,对它们的操作一般要求跟踪控制装置具有6自由度,传统的二维平面上的跟踪设备显然不能满足要求。近年来,这类能够输出6自由度信息的跟踪设备有了很大的发展,已有多种设备投入使用,如:Polhemus的ISOTRAK和FASTRAK、Spacetec IMC Spaceball、Logitech的3D Mouse和Space Control Mouse等。本文着重探讨如何运用Logitech三维鼠标作为场景漫游时的视点跟踪传感器。