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.
The problem here is that when the mouse moves quickly, the movement delta is so large that the mouse enters the "left", "right", or "down" arrow regions briefly before the re-center logic is able to reposition the mouse. This triggers the input code to change the cursor to one of those appropriate images. The problem happened in that both the mouse cursor update routine and the cursor creation routine had logic problems that would show the cursor when it changes. The latter would even override forced cursor hides done by
plMouseDevice::HideCursor(true)
.I elected to NOT make panning the camera a forced hide (see
plCameraBrain1::MsgReceive()
'sS_SET_FREELOOK
handler) because that seems like more of a gameplay oriented feature. It would be a shame if the cursor got stuck force hidden because we accidentally missed a mouse release, mouse-escaping the window, or something like that.