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 Rams · Jul 16, 2013 at 07:15 AM · objectsdynamicinstantiationof

Dynamic instantiation of object with respect to another movingObject

Hi Everyone, I am trying to do an infinite boat riding game. I'm ok with the infinite moving and different animations that are required. The motto of the game is-> player has to throw the ball into a destiny while the boat is moving in forward direction. For that the destinies should be generated randomly, so that player has to throw the ball into that. the player will keep on moving.Every time I have to instantiate the destinies a bit infront of the player. So how can I access the dynamic position to create those.Any suggestions...? Thanx 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

2 Replies

· Add your reply
  • Sort: 
avatar image
0

Answer by robertbu · Jul 16, 2013 at 07:25 AM

This will depend on your setup. If you move your object in the forward direction, then you can use:

 var nextPos = transform.position + transform.forward * distance;

If you don't move towards forward and are using Translate(someDirection) to move the object, you can do:

 var nextPos = transform.position + someDirection.normalized * distance;

If you are using a rigidbody, and the rigidbody does not move towards the objects 'forward' you can do:

 var nextPos = transform.position + rigidbody.velocity.normalized * distance;

Where 'distance' is the distance in front of the moving object for the next spawn. 'nextPos' would then be used as the position in your Instantiate() call.

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 Rams · Jul 16, 2013 at 12:20 PM

Thanx for your reply. I am about to generate container few distance infront of the boat, every time.

     public Transform bucket; //this is the destiny to be put infront of the boat  
 public Transform gameObject; //this is the boat that travels forward   
 public Vector3 go;//this is for setting up the position every time  
     void Start () {  
       gameObject.transform.Translate(-7.624812f, -0.2119637f,-4.225473f);// for setting up the boat position on the water properly    
       }  
     void Update () {  
     gameObject.position = transform.right*0.02f + transform.position;  
     go = transform.position + transform.right* 2;  
     Hold();  
   
         Instantiate(bucket,go,Quaternion.identity);  
     if(bucket != null)  
     Destroy(bucket,3);//should be deleted after 3 sec.   
 }  
 IEnumerator Hold(){  
     print (Time.time);  
     yield return new WaitForSeconds(3);  
     print (Time.time);  
 }  

Now the buckets havebeen generating infinitely at a same location and they are destroying.can u please help me...!

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

15 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

Related Questions

Dynamically Adding Objects 1 Answer

dymanic create object while character approaches 0 Answers

Same y rotation (Camera and Character) 0 Answers

Create Special Plane Objects at runtime 1 Answer

How can I change scene after i've destroyed all my game objects? 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