fix: framerate-independent global scale speed#33
Merged
Conversation
ScaleGlobal.Interact multiplied the per-frame mouse pixel delta by Time.deltaTime, tying uniform-scale speed to the frame rate (higher fps -> smaller dt -> slower scaling for the same drag). Drop Time.deltaTime so the scale delta depends only on drag distance; MouseSensitivity is retuned to 0.0333 to preserve the previous feel at 60 fps.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
From #26 (P2).
ScaleGlobal.Interactmultiplied the per-frame mouse pixel delta byTime.deltaTime, so uniform-scale speed depended on the frame rate (higher fps → smaller dt → slower scaling for the same drag).Fix: drop
Time.deltaTimeso the scale delta depends only on drag distance.MouseSensitivityretuned2f → 0.0333fto preserve the previous feel at 60 fps (old effective rate was2 * (1/60) ≈ 0.0333per pixel).fix:→ patches to 3.0.3 on merge.Note
Low Risk
Small interaction tweak in one scale handle; feel is constant-matched to 60 fps but worth a quick manual drag check.
Overview
Fixes framerate-dependent uniform scaling on the global (center cube) scale handle in
ScaleGlobal.Interact.The drag delta was incorrectly multiplied by
Time.deltaTimeon top of per-frame mouse pixel movement, so higher FPS made scaling slower for the same drag.Time.deltaTimeis removed so scale change tracks drag distance only.MouseSensitivityis retuned from2fto0.0333fto approximate the old feel at 60 fps (2 * deltaTimeper pixel).Reviewed by Cursor Bugbot for commit dabf758. Bugbot is set up for automated code reviews on this repo. Configure here.