Jump to content
  • Advertisement
Sign in to follow this  

Mouse/pointer behavior with objects on screen

This topic is 2146 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

So what I'm working on right now is the part where the pointer on the screen (currently controlled by mouse and/or keyboard, eventually by gamepad as well) needs to know what object it is 'over'. Obviously this is for the detecting of selecting UI buttons, units, stuff like that. But I'm also wanting to have 'hover over' text, so it's not all about detecting pointer placement when a button is clicked.


My partner had a bit of this functionality already coded and it works fine, problem being it was written just for one object(the cities.) Clearly we want to reduce code duplication and have this handled outside of the specific eligible elements. I looked through my two XNA books* but I didn't see anything addressing this topic. (If I missed it, feel free to simply point it out to me.)


First, isn't there already something out there which will handle this? A class or interface included in XNA or C#? I found VisualTreeHelper, but I'm not sure that's going to work, or at least we'll have to redo a lot of our work to fit into Visual objects. (Overall I wasn't given the impression VTH was what one wanted for games, sounded more officey.) Am I missing it?


Secondly, if we do need to write our own, what I was thinking was creating a class which held a 2D List--the inner list holds objects which have the boundaries of objects on the screen which should react to the pointer, and the outer list would be layers of those objects (so that a unit takes priority over the terrain it's standing on.) Does that sound decent, or problematic?






*my XNA books: XNA Game Studio Creator's Guide 2ed, Cawood & McGee

XNA 4.0 Game Development by Example: Beginner's Guide, Jaegers

Edited by IndyOfComo

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!