You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Babylon.js中反转鼠标按下拖拽的操作方向

你使用的是Babylon.js的FreeCamera,要反转鼠标拖拽的操作方向,根据你要修改的操作类型对应调整相机属性即可:

  • 反转左键拖拽旋转视角的方向:修改相机的angularSensibilityX(水平方向)、angularSensibilityY(垂直方向)属性为负值,默认值为2000,改成-2000即可完全反转对应轴的操作方向
  • 反转右键拖拽平移视角的方向:直接将相机的invertPan属性设置为true即可

修改后的完整示例代码如下:

var createScene = function () {
    var scene = new BABYLON.Scene(engine);

    var camera = new BABYLON.FreeCamera("camera1", new BABYLON.Vector3(0, 5, -10), scene);
    camera.setTarget(BABYLON.Vector3.Zero());   
    
    // 反转鼠标拖拽旋转方向
    camera.angularSensibilityX = -2000;
    camera.angularSensibilityY = -2000;
    // 如需反转右键平移方向,取消注释下一行
    // camera.invertPan = true;
    
    camera.attachControl(canvas, true);

    var light = new BABYLON.HemisphericLight("light", new BABYLON.Vector3(0, 1, 0), scene);   
    light.intensity = 0.7;

    var sphere = BABYLON.MeshBuilder.CreateSphere("sphere", {diameter: 2, segments: 32}, scene);    
    sphere.position.y = 1;

    var ground = BABYLON.MeshBuilder.CreateGround("ground", {width: 6, height: 6}, scene);

    return scene;
};

注:上述相机属性的配置代码放在attachControl调用前后均可正常生效。

内容的提问来源于stack exchange,提问作者Solsiden

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 16:15:04