Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 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 /
avatar image
0
Question by Noxury · Jun 12, 2020 at 11:36 AM · audiosourceaudioclipaudio.playoneshotaudio listener

Dopplereffect value sets internal to 0 when PlayOneShot starts on looping AudioSource

While experimenting on a car nitro script, I noticed some weird behaviour of the AudioSource.PlayOneShot(Audioclip clip) when dopplervalue > 0 and I highly doubt if it is intended to behave so.

The procedure with my use case is the following:


The audiosource refers to a looping clip of the nitro sound and plays while boosting. When the player starts to boost, an ignition sound is layered on top of the playing audiosource, using the PlayOneShot function.


The AudioListener is on the camera which is not moving to test the doppler effect. Now when the ignition sound starts, the doppler effect is not hearable anymore although the inspector value is untouched, so I assume it is internal set to 0.

This lasts as long as the PlayOneShot clips' duration, afterwards the doppler effect is the same as set by the inspector (default 1).

Now I could turn the doppler value to 0, but then I will never have this effect, and trying to set the doppler value after PlayOneShot to correct it has no effect.


This is the code attached to the car:

 [RequireComponent(typeof(AudioSource))]
 public class Nitro : MonoBehaviour {
     private AudioSource nitro;
     public AudioClip nitroIgnition;
     public AudioClip nitroLoop;
 
     void Awake(){
         nitro = GetComponent<AudioSource> ();
         nitro.loop = true;
         nitro.clip = nitroLoop;
     }
 
     void Update(){
         if (Input.GetKeyDown (KeyCode.LeftShift)) {
             nitro.PlayOneShot (nitroIgnition);
             nitro.Play ();
         } else if (Input.GetKeyUp (KeyCode.LeftShift)) {
             nitro.Stop ();
         }
     }
 }


I think when using the PlayOneShot function a new hidden audio source with the same parameters as the already existing one, but why would it change the doppler value of that one at the beginning and when it is destroyed?

Could somebody clarify that?

Thanks in advance.

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
0

Answer by Jon_Olive · Jun 13, 2020 at 12:55 PM

@Noxury I don't understand why without digging into it further - but it would seem from other posts about problems with PlayOneShot() (see https://forum.unity.com/threads/playoneshot-pitch.704351/ for example) that PlayOneShot() can only take an initial value for pitch and not have that value vary during playback. Since the built in doppler is basically doing a pitch change on the source depending on the relative velocity of source and listener along the axis between them it would appear that would also stop doppler working on a source triggered by PlayOneShot().

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

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

AudioSource volume inconsistency 1 Answer

Problems combining Audio triggers, PlayOneShot and Audio Arrays 1 Answer

How to switch Audiosource without stacking by an input? 0 Answers

2nd Audio Clip Not Playing 0 Answers

Play Audio on Object click? 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