• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
This question was closed Sep 12, 2015 at 08:28 PM by getyour411 for the following reason:

The question is answered, right answer was accepted

avatar image
3
Question by Leonardo T S · Jun 06, 2010 at 03:15 AM · mousefunctionclickdetectionright

Right mouse detection

Hello, I'm new in unity 3d, and I have a little script. There, I have a function OnMouseDown to detect when the mouse click. But, it works only with the left mouse button... I'm usig Input.GetMouseButton(1) to detect if the pressed mouse button is the right, but the OnMouseDown function only is called when I click with the left button.

Please help me!

Thanks....

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

2 Replies

  • Sort: 
avatar image
3
Best Answer

Answer by Eric5h5 · Jun 06, 2010 at 04:26 AM

There isn't an OnMouseDown function for anything other than the left button, but you can sort of override OnMouseOver instead, like this:

function OnMouseOver () {
   if (Input.GetMouseButton(1)) {
      // do something
   }
}
Comment
Add comment · Show 4 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Leonardo T S · Jun 06, 2010 at 05:35 PM 0
Share

I'm using it, exactly like you show, but the function is called only when I click with the left mouse button .

With this script, only works the right mouse button if I press the two buttons.

But thanks for the help.

avatar image Eric5h5 · Jun 06, 2010 at 08:17 PM 1
Share

No, it works with the right button only. $$anonymous$$aybe you have another script interfering with it. And make sure you use On$$anonymous$$ouse*Over* not On$$anonymous$$ouse*Down*.

avatar image Leonardo T S · Jun 08, 2010 at 04:52 PM 0
Share

Thanks, I found a solution for my problem... I used the comparation in the Update function, and works for me.

avatar image cregox · May 11, 2013 at 09:08 PM 0
Share

On$$anonymous$$ouseDown works also for touch on mobile platforms. I haven't tested, but I doubt this "override" would work for that. On top of it, no idea why Op accepted this answer while commenting he actually went another way, using Update and probably Input.Get$$anonymous$$ouseButton and some raycasting, which is more work but I think makes more sense. And it works for touching as well. @Leonardo you should post and accept your own solution!

avatar image
2

Answer by GFX47 · Apr 04, 2011 at 02:27 PM

Here's a complete solution for right click detection: http://blog.gfx47.com/2011/04/04/detect-right-click-on-game-objects-in-unity3d/ Hope that will help! ;)

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

2 People are following this question.

avatar image avatar image

Related Questions

Disable right mouse button 1 Answer

Detecting mouse click on GameObject with any mouse button. 2 Answers

right mouse down on a gameObject 2 Answers

detecting if the mouse is inside any gui element 1 Answer

Charging up the speed of an game object through a mouse click 3 Answers

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges