new MMSDT.targetFollow

运动目标跟随

针对某一个模型或子网格模型的视角跟随运动

参数

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; } }

在线演示