Skip to content

Commit 9abccb0

Browse files
committed
Fixing editor camera duplication
1 parent 342763c commit 9abccb0

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

src/editor/edition-tools/node-tool.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Node, AbstractMesh, Mesh, Tools as BabylonTools, Camera, InstancedMesh, SubMesh, Color3 } from 'babylonjs';
1+
import { Node, AbstractMesh, Mesh, Tools as BabylonTools, Camera, InstancedMesh, SubMesh, Color3, ArcRotateCamera } from 'babylonjs';
22

33
import AbstractEditionTool from './edition-tool';
44
import SceneManager from '../scene/scene-manager';
@@ -136,10 +136,12 @@ export default class NodeTool extends AbstractEditionTool<Node> {
136136
scene.activeCamera = r ? node : this.editor.camera;
137137
});
138138

139-
if (node['panningSensibility'] !== undefined) {
139+
if (node instanceof ArcRotateCamera) {
140140
camera.add(node, 'panningSensibility').step(1).name('Panning Sensibility');
141+
camera.add(node.inputs.attached.mousewheel, 'wheelPrecision').step(0.01).name('Zoom Factor');
141142
}
142-
else if (node['speed'] !== undefined) {
143+
144+
if (node['speed'] !== undefined) {
143145
camera.add(node, 'speed').step(0.01).name('Speed');
144146
}
145147

src/editor/editor.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -629,6 +629,10 @@ export default class Editor implements IUpdatable {
629629

630630
this.playCamera = scene.activeCamera;
631631

632+
const existingCamera = scene.getCameraByName('Editor Camera');
633+
if (existingCamera)
634+
existingCamera.dispose();
635+
632636
this.createEditorCamera();
633637

634638
// Clear scene manager

0 commit comments

Comments
 (0)