• 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 thinmanroad · Jan 10, 2018 at 01:07 PM · vector3space shootertransform.forwardasteroids

Space Shooter - Asteroids moving randomly

Hello guys. First of all, I know this question has been asked, but I couldn't fix it with the given answers. My problem is the same as a lot of people were having: my script instantiates the asteroids and then they start moving at X,Y and Z, when they are supposed to move only in Z. It worked fine with just one asteroid, the problem starts when I loop the instantiation. The answer already given is to change "transform.forward" to "Vector3.forward", but when I do that it just does the same thing. I tried debugging but I can't find a solution. I'll post a couple of scripts and I hope you guys can help me.

 public class GameController : MonoBehaviour {
 
     public GameObject hazard;
     public Vector3 spawnValues;
     public int hazardCount;
 
     void SpawnWaves() {
         for(int i = 0; i < hazardCount; i++){
             Vector3 spawnPosition = new Vector3 (Random.Range(-spawnValues.x, spawnValues.x),spawnValues.y,spawnValues.z);
             Quaternion spawnRotation = Quaternion.identity;
             Instantiate (hazard, spawnPosition, spawnRotation);
         }
     }
 
     void Start() {
         SpawnWaves ();
     }
 }


 public class Mover : MonoBehaviour {
 
     Rigidbody boltRigidbody;
     public float speed;
 
     void Start(){
         boltRigidbody = GetComponent<Rigidbody> ();
         boltRigidbody.velocity = Vector3.forward * speed;
 
     }
 }

 public class RandomRotator : MonoBehaviour {
 
     public float tumble;
     Rigidbody asteroidRigidbody;
     void Start() {
         asteroidRigidbody = GetComponent<Rigidbody> ();
         asteroidRigidbody.angularVelocity = Random.insideUnitSphere * tumble;
     }
 }




P.S. : As I already said, if I comment the for loop it just spawns one asteroid moving in the correct axis, the problem starts when I loop the instantiation.

P.D.: Actually now that I checked better it doesn't matter if I spawn 10 or 1, they move at X and Y when they should only move at Z.

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
Best Answer

Answer by thinmanroad · Jan 10, 2018 at 05:41 PM

I fixed it. The problem was that I don't recall them saying in the tutorial that Asteroids should have the collider as Is trigger, so they where colliding with each other and therefore bouncing and moving in different directions. Setting the collider to Is trigger fixed it.

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.

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

121 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

Related Questions

Limit a Gameobject speed using ClampMagnitude 0 Answers

space shooter smooth movement between x 2 Answers

C# how to make things happens Through time? 0 Answers

Vector3 does not contain a constructor that takes 4 arguments 0 Answers

how to calculate the angle between two vectors? 6 Answers

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges