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 HenryChinaski · Nov 29, 2013 at 04:03 PM · collidermultiplespherecast

Detect multiple objects with spherecast

I am trying to make a simple Third-Person Combat. The player model swings his sword, if a button is pressed. I use a spherecast to identify which enemy is hit and it works. Of course, if there are two enemys in front of the player, only one gets hit.

Is it possible to get the hit component for multiple GameObjects with spherecast?

I thought of get the hits by checking if the sword collides during animation, but it is an android project, so I wonder if this would consume much power?

I also thought of using a sphere collider and let the script check which GameObjects are inside and send them messages.

Has anyone experiences with this and could help me? Maybe there is a good tutorial? 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
4
Best Answer

Answer by robertbu · Nov 29, 2013 at 04:39 PM

How about Physics.SphereCastAll()?

Comment
Add comment · Show 10 · 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 HenryChinaski · Dec 02, 2013 at 12:55 PM 0
Share

Yes, thats totally it. I wasnt aware of this.

Could someone explain to me how I use the hit array in c#?

 RaycastHit hit;
 if (Physics.SphereCast(char_pos, 0.8f, fwd, out hit, 1)){
 
     hit.transform.gameObject.Send$$anonymous$$essage("GotHit",damage);
 }    

How can I send the message to all Objects inside the sphere? Is it "foreach (RaycastHit q in hit)" ?

avatar image HenryChinaski · Dec 02, 2013 at 01:41 PM 0
Share

With this: RaycastHit[] hit= Physics.SphereCastAll(char_pos, 0.8f, fwd, 2.1f);

 foreach(RaycastHit q in hit){
                 transform.gameObject.Send$$anonymous$$essage("GotHit", damage);
 }

I dont get an error, but Unity says, that there is no reciever for the "send message". Whats wrong?

avatar image ArkaneX · Dec 02, 2013 at 01:49 PM 0
Share

Do you have a method GotHit in any script attached to your game object? Please check example in Send$$anonymous$$essage doc.

avatar image HenryChinaski · Dec 02, 2013 at 01:55 PM 0
Share

Yes, and it works for sure, because

RaycastHit hit; if (Physics.SphereCast(char_pos, 0.8f, fwd, out hit, 1)){

 hit.transform.gameObject.Send$$anonymous$$essage("GotHit",damage);

}

works just fine.

avatar image meat5000 ♦ · Dec 02, 2013 at 01:58 PM 0
Share

You could use DontRequireReceiver flag as detailed in the docs. Or add a receiver to the object which receives the message.

Show more comments

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

19 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

Related Questions

Can Raycast get multiple points from the same collider? 1 Answer

How to call only ONE OnCollisionEnter, on one of two objects 1 Answer

1 Collider and multiple objects 1 Answer

Unity C# Bomb Radius Issue 0 Answers

Multiple Object Collider Detection to load new scene 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