Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • 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 /
  • Help Room /
avatar image
0
Question by Jay_Pauly · Aug 25, 2015 at 05:09 PM · animationcrossfade

Pause Animation.CrossFade

Hi there,

I'm using the animation.CrossFade function to fade from one animation to another and it works fine. However in my application, I want the animation to be paused whenever I hit the pause key.

To do that I set the animation["MyAnimation"].speed = 0;

When any animation is running and I hit pause, it works fine, but if I hit pause while the application is crossfading an animation it doesn't stop.

Can you please share some ideas?

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

4 Replies

· Add your reply
  • Sort: 
avatar image
0

Answer by Craftnime · Aug 26, 2015 at 09:46 AM

Not entirely sure if this works, but you could use a coroutine directed to a function in which the Animation.CrossFade function is in. Like:

 function Start () {
     StartCoroutine("Blah");
     while (Input.GetKeyDown != "p") {yield;}
     yield StopCoroutine("Blah");
 }
 
 function Blah () {
     //The stuff, like that crossfade
 }

In which the key "p" is the key to stop the coroutine.

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
avatar image
0

Answer by Jay_Pauly · Aug 26, 2015 at 11:08 AM

Unfortunately it doesn't work, because by default when I pause the application the "Execute" method is not runned. Therefore, your solution is already implemented and still it doesn't work. :(

Thanks though, @Craftnime!

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
avatar image
0

Answer by Craftnime · Aug 26, 2015 at 01:57 PM

Oh maybe, I forgot to insert yield behind the two coroutine commands. Try both or either! yield StartCoroutine("Blah"); And/or yield StopCoroutine("Blah"); (I edited that answer)

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
avatar image
0

Answer by Jay_Pauly · Aug 26, 2015 at 02:10 PM

Yup I got it. However it does solve the problem. When I pause the application, I don't run the method where the crossFade is implemented. So, as I said, I'm already implementing your solution.

Tried using animation.Blend, this one stops when we step the animation speed to zero, but I don't get the same behaviour as I get with crossFade.

Thanks anyway!

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

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.

Follow this Question

Answers Answers and Comments

27 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 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

animator.crossfade() not working properly 2 Answers

How can I effectively generate a random idle animation? Unity generates ugly transitions. 0 Answers

Crossfading happens too fast 2 Answers

CrossFade won't crossfade animation, it just jumps to it. 0 Answers

Animator CrossFade or Animator Transition 1 Answer


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