Texture tab: one masked container for everything the view moves (#82)
Only the picture was masked, so the checkerboard, the frame outlines, the handles and the name plates were drawn over the panel next door once the sheet was zoomed past the tab. The dark block in the report is the checkerboard's base: checker.ts fills the whole image rect and clips only the light squares to the widget. Everything that pans and zooms now sits in one masked container, the pattern WorldViewport and AnimationCanvas already use. A check samples pixels outside the tab and names the frames drawn past it; a guard in front of it asserts that zooming really pushes the sheet over every edge, or the pixel probes would measure nothing and stay green forever. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
fe036db8f2
commit
4f240a50fd
4 files changed
+58
-17
No files matched your search
@@ -315,6 +315,7 @@ export function installDebugHook(app: Application, state: EditorState, editor: E
|
||||
pickerWidth: () => textureEditor.picker.w,
|
||||
/** Where an image pixel of the shown sheet sits on screen (frames are dragged in image coordinates). */
|
||||
pointAt: (x: number, y: number) => textureEditor.imageToScreen(x, y),
|
||||
rect: () => textureEditor.canvasRect(),
|
||||
},
|
||||
animation: {
|
||||
/** Frames, the one on screen, play state and where the preview picture is drawn. */
|
||||
|
||||
Reference in new issue
Block a user