Skip to content
Snippets Groups Projects
Commit 40aa847d authored by David Sehnal's avatar David Sehnal
Browse files

mol-canvas3d: do not set camera clipping when in transition

parent 59c528b2
No related branches found
No related tags found
No related merge requests found
...@@ -131,6 +131,13 @@ class Camera implements Object3D { ...@@ -131,6 +131,13 @@ class Camera implements Object3D {
namespace Camera { namespace Camera {
export type Mode = 'perspective' | 'orthographic' export type Mode = 'perspective' | 'orthographic'
export interface ClippingInfo {
near: number,
far: number,
fogNear: number,
fogFar: number
}
export function createDefaultSnapshot(): Snapshot { export function createDefaultSnapshot(): Snapshot {
return { return {
mode: 'perspective', mode: 'perspective',
......
...@@ -15,7 +15,7 @@ class CameraTransitionManager { ...@@ -15,7 +15,7 @@ class CameraTransitionManager {
private func: CameraTransitionManager.TransitionFunc = CameraTransitionManager.defaultTransition; private func: CameraTransitionManager.TransitionFunc = CameraTransitionManager.defaultTransition;
private start = 0; private start = 0;
private inTransition = false; inTransition = false;
private durationMs = 0; private durationMs = 0;
private source: Camera.Snapshot = Camera.createDefaultSnapshot(); private source: Camera.Snapshot = Camera.createDefaultSnapshot();
private target: Camera.Snapshot = Camera.createDefaultSnapshot(); private target: Camera.Snapshot = Camera.createDefaultSnapshot();
......
...@@ -189,7 +189,8 @@ namespace Canvas3D { ...@@ -189,7 +189,8 @@ namespace Canvas3D {
let didRender = false let didRender = false
controls.update() controls.update()
setClipping() // TODO: is this a good fix? Also, setClipping does not work if the user has manually set a clipping plane.
if (!camera.transition.inTransition) setClipping();
const cameraChanged = camera.updateMatrices(); const cameraChanged = camera.updateMatrices();
if (force || cameraChanged) { if (force || cameraChanged) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment