最近在研究Babylon.js这款专业Web3D的游戏引擎,官网的教程很全面,但不免有些遗漏的地方。今天,就讲Babylon.js中相机的投影类型。
Babylon.js中的相机类型有UniversalCamera,ArcRotateCamera,FollowCamera等等,在测试程序的时候,这些相机的投影类型默认都是透视投影。那么,其实在开发的时候,我们有些特殊的需求是需要平行投影的。
直接看效果吧,下面图1是透视投影的图。
下面图2是平行投影的图。
下面是代码。在创建相机之后,加上就可以了。
camera.mode = BABYLON.Camera.ORTHOGRAPHIC_CAMERA; //指定相机的类型
var ratio=window.innerHeight/window.innerWidth; //计算屏幕宽高比
camera.orthoLeft=13; //设置近平面的左侧边界
camera.orthoRight=-13; //设置近平面的右侧边界
camera.orthoTop=13*ratio; //设置近平面的顶部边界
camera.orthoBottom=-13*ratio; //设置近平面的底部边界
left,right,top,bottom的值根据需求自己指定就可以了。