0 Favourites

How to determine if the mouse is outside the rendering area?

  • I'm having difficulty finding a way to do this. I want the screen to scroll when the mouse is near the edge of the window, but stop if it goes past the edge of the window (the rendering area, technically). In all the tests I've done, it just keeps scrolling.

    Anyone know of a way to accomplish this? I've tried checking the mouse values but they stop updating outside the window. Checking if the mouse is over a fullscreen sprite doesn't work either for the same reason.

  • Just an idea, but in the event that you are not running full screen (allowing your mouse to get off the window), try having a couple pixels of dead zone right around the edge that does not scroll. If you are full screen, I think you would not want this dead zone, but there are conditions to take care of that.

  • Construct 3

    Buy Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Buy Now Construct 3 users don't see these ads
  • The problem with that method is it's inconsistent based upon the speed of the mouse and where it happens to be when the measurements of its position are checked - if the mouse moves quickly, it's a large gap.

  • How about only scrolling when:

    ViewportLeft("MouseLayer") < Mouse.X < ViewportRight("MouseLayer")

    ViewportTop("MouseLayer") < Mouse.Y < ViewportBottom("MouseLayer")

    ?

    edit: Sorry, I've just re-read the full thread and realised this would probably be subject to the same issues. I don't know what to suggest

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)
Similar Topics Posts Views Last Post
Unread hot topic
96 57,351
bitworks's avatar
bitworks
Unread hot topic
90 77,101
leonhard's avatar
leonhard
Unread hot topic
56 8,563
Zebbi's avatar
Zebbi