• 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
Question by PuzzleBox · Nov 01, 2011 at 03:53 AM · animationmouse

Reacting to Mouse animation...

I'm trying to make animations that react to the player's mouse. I looked all over the unity reference site and nothing works. What am I missing?

 function Update () {
 }
 
 function OnMouseEnter () {
     animation.Play("Element 1");
     yield WaitForSeconds (1);
     animation.Play("Element 0");
 }
 
 function OnMouseDown () {
     animation.Play("Element 2", PlayMode.StopAll);
 }
Comment

People who like this

0 Show 3
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 gfr · Nov 01, 2011 at 04:08 AM 0
Share

Are the functions called at all (check with some Debug.Log()). If not, do you have a collider on those objects? Are they on the "ignore raycast" layer?

avatar image PuzzleBox · Nov 01, 2011 at 04:22 AM 0
Share

so I must put script that effects animation on an object that has a collider and animation component?

avatar image gfr · Nov 01, 2011 at 04:32 AM 0
Share

Yes, your script has to be on a gameobject with a collider.

2 Replies

· Add your reply
  • Sort: 
avatar image
Best Answer

Answer by gfr · Nov 01, 2011 at 04:31 AM

First thing to check is wether the functions are called at all, e.g. using Debug.Log().

If they are not:

  • Check that you have a collider on your object, otherwise `OnMouseEnter()`/OnMouseDown()/... will not be called:

    OnMouseEnter is called when the mouse entered the GUIElement or Collider.

  • Beware that they are not called for objects on the "Ignore Raycast" layer.

Comment

People who like this

0 Show 0 · 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

Answer by roamcel · Nov 01, 2011 at 09:35 AM

All 3D interaction between gameobjects and the mouse needs be done through COLLIDERS. Colliders are responsible of intercepting events between gameobjects and the world, basically.

1 add a collider of any type to your gameobject

2 add the following code in a c# script that you attach to the gameobject

 void OnMouseDown() {
     Debug.Log("AHAHA stop clicking me!");
 }

3 in play mode click over the gameobject

Comment

People who like this

0 Show 0 · 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

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

4 People are following this question.

avatar image avatar image avatar image avatar image

Related Questions

C# Decrease Mouse Sensitivity Camera Move 0 Answers

Loop animation on button hold 2 Answers

C# Make Child Not Animate Looped Animation 1 Answer

Trying to simply play this animation... Help please. 1 Answer

How could it be done "Cooldown" for a shield ? 2 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