运动目标跟随
针对某一个模型或子网格模型的视角跟随运动
参数
new MMSDT.targetFollow( parameter )
var parameter = {
view: true, //true固定视角, false跟随视角
distance: 40, //跟随距离
position:[0,20,-30], //视角偏移。view为false时,只取高度,view为true时,xyz都用
}
属性,添加跟随目标
.update(setTarget)
var setTarget = {
mesh: models[0].children[8], //需要跟随的网格
position: [0,-39.4,0], //坐标偏移
rotation: 0, //旋转偏移
scale: 20, //缩放偏移
}
属性,取消跟随
.cancel()
属性,视角模式切换
.view = 布尔值; //true固定视角, false跟随视角
代码示例
var parameter = {
view: true, //true固定视角, false跟随视角
distance: 40, //跟随距离
position:[0,20,-30], //视角偏移。view为false时,只取高度,view为true时,xyz都用
}
var follow = new MMSDT.targetFollow( parameter ); //初始化目标跟随
//跟随的信息
var setTarget = {
mesh: models[0].children[8], //需要跟随的网格
position: [0,-39.4,0], //坐标偏移(填写主模型里的json设置)
rotation: 0, //旋转偏移(填写主模型里的json设置)
scale: 20, //缩放偏移(填写主模型里的json设置)
}
//接口
MMAPI.viewFollow = function(value){
switch(value) {
case 0: //取消跟随
follow.cancel(); //取消跟随
MMSDT.controlsTarget( [21,1,-53], 500, 1000 ); //目标复位
MMSDT.cameraTarget( [21,1,-53], [258,228,-227], 1000 ); //镜头复位
break;
case 1: //固定视角跟随
follow.view = true; //固定视角
follow.update( setTarget ); //更新跟随目标
break;
case 2: //灵活视角跟随
follow.view = false; //灵活视角
follow.update( setTarget ); //更新跟随目标
break;
}
}
在线演示
Powered by mms3D