• 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 /
avatar image
0
Question by daville · Aug 08, 2013 at 12:58 AM · mobiletouchdisableonmousedownunity4

Disable Unity 4.x OnMouseDown on Mobile

So in previous versions of Unity OnMouseDown didn't work on Mobiles... So I made a Script to convert Touches Inputs and call OnMouse Methods.. everything fine.

but then suddendly Unity decided to implement OnMouse methods in Mobile.. now you can just code OnMouseDown and will react when touched..

This is driving me crazy... because it makes weird stuff when I use my own calls... it gets called twice (my script does more than down, up, it handles cross over states, drags, pitch, and lots of touch related stuff).

Also Unity only calls that method for 1 finger... no multitouch.. and when multi touch unity does something weird... it calls the method at whatever is in the middle of 2 fingers.

touch touch (1)--------|--------(2) calls here

so it presses buttons and stuff when no finger is touching... because it calls it between fingers... makes no sense!

so is there a way to turn OFF they new default call on that method for Mobile devices?

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

1 Reply

· Add your reply
  • Sort: 
avatar image
2
Best Answer

Answer by DaveA · Aug 08, 2013 at 01:01 AM

Simply don't implement OnMouseDown, or surround it with conditions:

 #if !UNITY_STANDALONE
 function OnMouseDown() {
 ....
 }
 #endif
Comment
Add comment · Show 1 · 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 daville · Aug 08, 2013 at 03:08 PM 0
Share

That worked.. I was using Application.platform, but this works to prevent Unity from calling On$$anonymous$$ouseDown() because I want the same game to be playable on $$anonymous$$obile and PC

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

15 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

iOS Mobile - Mouse Input vs Touch Input 1 Answer

mobile input / OnMouseDown / multi touch (most likely) 0 Answers

Is there a built in method that works like OnMouseDown() but for touch input? 1 Answer

Changing keyboard input to touch in script 0 Answers

Unity 2D Mobile Game Drawing Mechanic 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges