
成都虚拟展厅里点击展品弹出介绍、自由走动漫游,这些交互是怎么实现的?原理其实不复杂:3D场景里每个可交互物体都有一个碰撞区域,用户点击时程序检测到点击位置对应的物体,然后触发预设的交互动作。
在3D场景里设置相机,用户按方向键或点屏幕,相机位置和角度跟着变,就产生了"在走"的效果。第一人称视角就是相机跟着鼠标转方向。
每个展品模型上都绑了一个触发区域。用户点击屏幕时,程序计算从相机出发到点击位置的射线,看先碰到哪个物体。碰到展品了就弹出介绍窗口、播放视频或者跳转。
场景里设置一些透明的热点标记,用户点热点就跳到指定位置或者页面。热点可以做脉冲动画吸引用户注意。
3D模型面数太多会卡顿,要减面、贴图压缩、按需加载。手机上要特别注意性能。