x


Does transform get copied before or after Start() called inside Instantiate()

I've got a networked situation where a projectile is being spawned on a server, then the client is told to spawn it as well. The server spawns it with the correct orientation, but on the client it spawns with a bad rotation.

I think this is due to the projectile's Start() method being called before the transform data being passed into Instantiate() is copied to the projectile. (the network code path kicks off during a Start() call on a component of the projectile, so the uninitialized transform would be coming across potentially).

I can't seem to find any information on order of operation within Instantiate, does anyone know when the transform (rotation more specifically) is copied to the new data object vs. when Start is called?

more ▼

asked Sep 02 '11 at 09:09 PM

sampenguin gravatar image

sampenguin
91 3 4 7

If you want to be sure about this, add an yield delay inside Start - but use a boolean flag to hold periodic functions like Update:

var delay = true; // nobody moves while delay is on!

function Start(){
    yield; // wait for one frame...
    yield WaitForSeconds(0.5); // or wait for 0.5 seconds
    // your Start code goes here
    delay = false; // delay finished
}

function Update(){
    if (delay) return; // do nothing until delay finished
    // Update code goes here
}
Sep 02 '11 at 09:28 PM aldonaletto

I would say it is better to find out than to defend against the unknown.

Sep 02 '11 at 09:32 PM Waz
(comments are locked)
10|3000 characters needed characters left

1 answer: sort newest

Start is called much later. OnEnabled and Awake are called inside Instantiate. You can add Debugs to see the order.

more ▼

answered Sep 02 '11 at 09:30 PM

Waz gravatar image

Waz
6.4k 22 33 71

(comments are locked)
10|3000 characters needed characters left
Your answer
toggle preview:

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

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Topics:

x1673
x156

asked: Sep 02 '11 at 09:09 PM

Seen: 698 times

Last Updated: Sep 02 '11 at 09:32 PM