Multiple timeline fixes and adjustments#1170
Conversation
There was a problem hiding this comment.
Pull request overview
This PR focuses on improving flyby timeline editing/preview behavior and preventing gizmo interaction during camera preview or when it would interfere with flyby camera visualization.
Changes:
- Added signed radians-to-degrees helpers and switched flyby rotation/FOV derivation to use signed degrees.
- Centralized “gizmo usable” checks and applied them across picking, drawing, and mouse movement paths.
- Refined flyby timeline camera insertion behavior (including camera-number shifting for insertions) and added a view-model event to request “zoom to fit”; playback completion now leaves the playhead at the end.
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| TombLib/TombLib/Utils/MathC.cs | Adds SignedRadToDeg helpers to support signed angle conversions. |
| TombEditor/Controls/Panel3D/Panel3DPicking.cs | Avoids gizmo picking when gizmo should be inactive. |
| TombEditor/Controls/Panel3D/Panel3DDraw.cs | Hides gizmo based on unified CanUseGizmo() logic. |
| TombEditor/Controls/Panel3D/Panel3DCameraMovement.cs | Avoids updating gizmo during fly mode unless usable. |
| TombEditor/Controls/Panel3D/Panel3D.cs | Introduces CanUseGizmo() gating logic for preview/selection/flyby proximity. |
| TombEditor/Controls/Panel3D/MouseHandler/Panel3DMouseMove.cs | Gates gizmo mouse-move updates behind CanUseGizmo(). |
| TombEditor/Controls/Panel3D/MouseHandler/Panel3DMouse.cs | Avoids hover/picking updates when gizmo shouldn’t be active. |
| TombEditor/Controls/FlybyTimeline/FlybyTimelineViewModel.cs | Adjusts add/insert camera logic, undo ordering, and adds ZoomToFitRequested event. |
| TombEditor/Controls/FlybyTimeline/FlybyTimelineView.xaml.cs | Subscribes/unsubscribes to ZoomToFitRequested and queues zoom-to-fit. |
| TombEditor/Controls/FlybyTimeline/FlybySequenceHelper.cs | Uses Vector3.IsFinite and signed degree conversion for editor-camera rotation copying. |
| TombEditor/Controls/FlybyTimeline/FlybyPreviewController.cs | When playback ends, sets playhead to total duration instead of resetting to 0. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 11 out of 11 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot Could you please review this Pull Request and check for any regressions? |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
I've reviewed all 11 changed files thoroughly. Here are my findings: No regressions found. The changes are well-structured and correct. Specific notes: Camera number insertion logic ( Undo ordering in
Edge case: The |
📍 Connect Copilot coding agent with Jira, Azure Boards or Linear to delegate work to Copilot in one click without leaving your project management tool.