Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Spawn en Posicion Aleatoria

Iniciado por Jean, Diciembre 01, 2015, 05:44:06 PM

Tema anterior - Siguiente tema
Hola a Todos, tengo una pequeña duda, quiero hacer un Spawn de posiciones aleatorias y a la vez que esos spawn se creen constantemente durante todo el game.. Si alguien me podría explicar como hacerlo o tendría un tutorial en verdad me serviria. la verdad es que eh estado pensando y viendo algunos vídeos pero no se explican muy bien y ademas de que cada uno tiene una codificación diferente.Espero su Respuesta Gracias.

Diciembre 01, 2015, 08:00:11 PM #1 Ultima modificación: Diciembre 01, 2015, 08:08:53 PM por mrpacogp
Tienes que dar más datos. Es distinto si vas a usar vista ortografica puedas poner un plano y limitarla dentro de su tamaño. Sí la cámara esta en perspectiva sería conveniente hacer un raycast para el viewport y que te caja valores.dentro del rango visible.También puedes crear un array de transform en la escena y elegir uno al azar, eso suele ser mas sencillo pero menos aleatorio, porque quedará limitado al número de transforms obvio... 

ya veo, entiendo, veré algunas codificaciones de la primera opcion que me diste. De todas maneras en cualquier opcion siempre consigo el objetivo no? Gracias.

Diciembre 02, 2015, 06:51:26 PM #3 Ultima modificación: Diciembre 02, 2015, 07:02:08 PM por Jean
function Update () {
var contador : int;
contador = 1;
while (contador <= 10) {

Instantiate(this.gameObject, Vector3(0,0,0), Quaternion.identity);

contador = contador +1;
Debug.Log(contador);
}
}
Eso es lo que tengo hasta el momento pero me crea objetos infinitamente que debo hacer? Estoy haciendo algo mal? que me peudes recomendar? lo digo por que al crear varios objetos unity se me cuelga :v

vale ya tengo el codigo base, este codigo sirve para crear elementos cada cierto tiempo (1 sec), en fin ahora solo falta posicionarlo en "random" por asi decirlo ¿como podria hacerlo, eh visto que varios lo hacen con "Random.Range" seria correcto en mi caso? Por favor ayudenme.
#pragma strict
public var Objeto : GameObject;
private var cantidad : int;

function Start () {

Spawn();

}

function Update () {

}

function Spawn () {
cantidad = 1;
while(cantidad <=10){
Instantiate(Objeto);
cantidad++;
yield new WaitForSeconds(1);
}
}
 

Vaya voy aprendiendo :')
#pragma strict
public var Objeto : GameObject;
private var cantidad : int;

function Start () {

Spawn();

}

function Update () {

}

function Spawn () {
cantidad = 1;
while(cantidad <=10){
Instantiate(Objeto,Vector3(Random.Range(-10,10),Random.Range(-10,10),0),Quaternion.identity);
cantidad++;
yield new WaitForSeconds(1);
}
}
 

Etiquetas: