Спаун префабов - Форум Игроделов
Ср, 08 Май 2024, 10:38 
 
Приветствую Вас Гость Главная | Регистрация | Вход
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум Игроделов » UNITY3D » HELP & FAQ » Спаун префабов
Спаун префабов
HeadLinerДата: Вс, 17 Ноя 2013, 20:28 | Сообщение # 1
Нет аватара
 
Сообщений: 55
Награды: 0
Репутация: 0
Статус: Offline
Сдравствуйте, скажите как можно реализовать, сцену простого гаража в гонке (обычный выбор машины). Как я понял нужно реализовать спаун префаба машины по нажатию кнопки, но как это сделать я понятия не имею. Подскажите пару ссылок с уроками если можно, и пожалуйста объяните устройтво скрипта такого типа)

Сообщение отредактировал HeadLiner - Вс, 17 Ноя 2013, 20:57
 
СообщениеСдравствуйте, скажите как можно реализовать, сцену простого гаража в гонке (обычный выбор машины). Как я понял нужно реализовать спаун префаба машины по нажатию кнопки, но как это сделать я понятия не имею. Подскажите пару ссылок с уроками если можно, и пожалуйста объяните устройтво скрипта такого типа)

Автор - HeadLiner
Дата добавления - 17 Ноя 2013 в 20:28
vintoДата: Вс, 17 Ноя 2013, 23:33 | Сообщение # 2
 
Сообщений: 103
Награды: 0
Репутация: 14
Статус: Offline
создать префаб на сцене можно функцией Instantiate(go,transform.position,transform.rotation) где go- объект который создаём , далее понятно думаю, координаты и угол поворота, но тебе как я понял нужен караж с переключением авто, так что нужно использовать go.SetActiveRecursively (если юнити 3ей версии) либо SetActive(Если юнити 4)

Код
var cars : GameObject[]; //наши машины
var i : int=0;                     //счётчик

function Update(){

cars[i].SetActive(true);  //делаем объект активным(вкл его) cars[i] i будет равно порядковому номеру машины в массиве cars

  if(Input.GetKeyDown(KeyCode.RightArrow)){//проверка на нажатие стрелки вправо
i++;
}
  if(Input.GetKeyDown(KeyCode.LeftArrow)){//проверка на нажатие стрелки влево
i--;
}

if(i>cars.lenght-1){  //если наш счётчик больше чем колво машин в массиве cars
i=0;                      //обнуляем счётчик
}
if(i<0){                  //если наш счётчик меньше 0
i=cars.lenght;        //активируем последнюю машину                 
}

}


как отключить подумай сам
 
Сообщениесоздать префаб на сцене можно функцией Instantiate(go,transform.position,transform.rotation) где go- объект который создаём , далее понятно думаю, координаты и угол поворота, но тебе как я понял нужен караж с переключением авто, так что нужно использовать go.SetActiveRecursively (если юнити 3ей версии) либо SetActive(Если юнити 4)

Код
var cars : GameObject[]; //наши машины
var i : int=0;                     //счётчик

function Update(){

cars[i].SetActive(true);  //делаем объект активным(вкл его) cars[i] i будет равно порядковому номеру машины в массиве cars

  if(Input.GetKeyDown(KeyCode.RightArrow)){//проверка на нажатие стрелки вправо
i++;
}
  if(Input.GetKeyDown(KeyCode.LeftArrow)){//проверка на нажатие стрелки влево
i--;
}

if(i>cars.lenght-1){  //если наш счётчик больше чем колво машин в массиве cars
i=0;                      //обнуляем счётчик
}
if(i<0){                  //если наш счётчик меньше 0
i=cars.lenght;        //активируем последнюю машину                 
}

}


как отключить подумай сам

Автор - vinto
Дата добавления - 17 Ноя 2013 в 23:33
Форум Игроделов » UNITY3D » HELP & FAQ » Спаун префабов
  • Страница 1 из 1
  • 1
Поиск:
Загрузка...

Game Creating CommUnity © 2009 - 2024