Смена Камеры на нажатие кнопки. - Форум Игроделов
Вт, 04 Фев 2025, 01:53 
 
Приветствую Вас Гость Главная | Регистрация | Вход
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Смена Камеры на нажатие кнопки.
ghostukrДата: Сб, 04 Фев 2012, 20:41 | Сообщение # 1
 
Сообщений: 58
Награды: 0
Репутация: 67
Статус: Offline
Всем доброго времени суток.Сейчас мы с вами напишем скрипт для смены камеры.
1.Добавим компонент(First Person Controller и 1 Камеру-Назовем ее Camera2).
2.Создадим JS скрипт с таким содержимым:
Code
var camera1 : Camera;
var camera2 : Camera;
camera1.enabled = true;//Включен (по стандарту).
camera2.enabled = false; //Отключен
function Update ()    
{    
if(Input.GetKeyUp("c"))//Если нажата клавиша 'c' то:    
{    
if(camera2.enabled == false)//Если выключен то Включает    
camera2.enabled = true;
else    
camera2.enabled = false;    
camera1.enabled = true;
}
}

3.Сохраним,и переместим наш JS скрипт в FirstPersonController
4. Настраиваем его:
Camera1-(Это наша стандартная камера 1ого лица),Выбираем MainCamera которая находиться в папке First person controller
Camera2-(Это камера 3лица),Выбираем нашу созданную камеру с названием Camera2.
5.Проверяем,при нажатии на C должна смениться камера,и обратно.
P.S.-Переделал из скрипта с фонариком,спасибо пользователю:yyyaaazzz за скрипт.:3


Веб-Дизайнер.Умею работать с Sandbox.
Понравилось что то? + в репу:3


Сообщение отредактировал ghostukr - Сб, 04 Фев 2012, 20:43
 
СообщениеВсем доброго времени суток.Сейчас мы с вами напишем скрипт для смены камеры.
1.Добавим компонент(First Person Controller и 1 Камеру-Назовем ее Camera2).
2.Создадим JS скрипт с таким содержимым:
Code
var camera1 : Camera;
var camera2 : Camera;
camera1.enabled = true;//Включен (по стандарту).
camera2.enabled = false; //Отключен
function Update ()    
{    
if(Input.GetKeyUp("c"))//Если нажата клавиша 'c' то:    
{    
if(camera2.enabled == false)//Если выключен то Включает    
camera2.enabled = true;
else    
camera2.enabled = false;    
camera1.enabled = true;
}
}

3.Сохраним,и переместим наш JS скрипт в FirstPersonController
4. Настраиваем его:
Camera1-(Это наша стандартная камера 1ого лица),Выбираем MainCamera которая находиться в папке First person controller
Camera2-(Это камера 3лица),Выбираем нашу созданную камеру с названием Camera2.
5.Проверяем,при нажатии на C должна смениться камера,и обратно.
P.S.-Переделал из скрипта с фонариком,спасибо пользователю:yyyaaazzz за скрипт.:3

Автор - ghostukr
Дата добавления - 04 Фев 2012 в 20:41
seamanДата: Сб, 04 Фев 2012, 21:27 | Сообщение # 2
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Однократное переключение требовалось? Назад то уже не вернуть.
Так будет переключать камеры при каждом нажатии
Code
using Unity.Engine;

public class SwitchCamera : MonoBehaviour
{
    public Camera camera1;
    public Camera camera2;

    void Start()
    {
       camera1.enabled = true;//Включен (по стандарту).
       camera2.enabled = false; //Отключен
    }
    void Update ()     
    {     
       if(Input.GetKeyUp("c"))//Если нажата клавиша 'c' то:     
       {
           camera2.enabled = !camera2.enabled;   
           camera1.enabled = !camera1.enabled;
       }
    }
}
 
СообщениеОднократное переключение требовалось? Назад то уже не вернуть.
Так будет переключать камеры при каждом нажатии
Code
using Unity.Engine;

public class SwitchCamera : MonoBehaviour
{
    public Camera camera1;
    public Camera camera2;

    void Start()
    {
       camera1.enabled = true;//Включен (по стандарту).
       camera2.enabled = false; //Отключен
    }
    void Update ()     
    {     
       if(Input.GetKeyUp("c"))//Если нажата клавиша 'c' то:     
       {
           camera2.enabled = !camera2.enabled;   
           camera1.enabled = !camera1.enabled;
       }
    }
}

Автор - seaman
Дата добавления - 04 Фев 2012 в 21:27
ghostukrДата: Сб, 04 Фев 2012, 21:43 | Сообщение # 3
 
Сообщений: 58
Награды: 0
Репутация: 67
Статус: Offline
seaman, у меня переключает обратно.)

Веб-Дизайнер.Умею работать с Sandbox.
Понравилось что то? + в репу:3
 
Сообщениеseaman, у меня переключает обратно.)

Автор - ghostukr
Дата добавления - 04 Фев 2012 в 21:43
seamanДата: Сб, 04 Фев 2012, 22:46 | Сообщение # 4
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Где в Вашем скрипте
camera1.enabled = false;
нет. Значит она никогда у Вас не выключится.
 
СообщениеГде в Вашем скрипте
camera1.enabled = false;
нет. Значит она никогда у Вас не выключится.

Автор - seaman
Дата добавления - 04 Фев 2012 в 22:46
yyyaaazzzДата: Сб, 04 Фев 2012, 23:07 | Сообщение # 5
Нет аватара
 
Сообщений: 104
Награды: 0
Репутация: 83
Статус: Offline
Ну все равно seaman дельно советует smile Это уменьшает кол-во кода. Просто раньше я был совсем новичком и я не знал, что можно настолько все сократить))
 
СообщениеНу все равно seaman дельно советует smile Это уменьшает кол-во кода. Просто раньше я был совсем новичком и я не знал, что можно настолько все сократить))

Автор - yyyaaazzz
Дата добавления - 04 Фев 2012 в 23:07
ghostukrДата: Сб, 04 Фев 2012, 23:28 | Сообщение # 6
 
Сообщений: 58
Награды: 0
Репутация: 67
Статус: Offline
Хм. seaman, странно,почему у меня работает,у тебя на чем скрипт написан?не js случайно?я кстати пробовал написать как ты,(чуть по другому правда) но выдавало ошибку что то с else:c
--
Ну а если что извините,я только начинаю всего 1-2 День работаю с Unity, а с скриптами на Js вообще неск.минут:3


Веб-Дизайнер.Умею работать с Sandbox.
Понравилось что то? + в репу:3


Сообщение отредактировал ghostukr - Сб, 04 Фев 2012, 23:30
 
СообщениеХм. seaman, странно,почему у меня работает,у тебя на чем скрипт написан?не js случайно?я кстати пробовал написать как ты,(чуть по другому правда) но выдавало ошибку что то с else:c
--
Ну а если что извините,я только начинаю всего 1-2 День работаю с Unity, а с скриптами на Js вообще неск.минут:3

Автор - ghostukr
Дата добавления - 04 Фев 2012 в 23:28
seamanДата: Вс, 05 Фев 2012, 00:44 | Сообщение # 7
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Ну по твоему скрипту камера1 всегда включена. Почему камеры при этом все-таки переключаются? Не знаю. Возможно что-то связано с тем, что одна Main, другая нет.
Просто я бы не оставлял возможности глюков. Вдруг в будущем такое не сработает? Мой скрипт будет работать в любом случае. В нем одна камера включается, вторая выключается каждый раз при нажатии. Ну а чтобы не запутаться в if, в данном случае проще просто инвертировать текущее состояние. Это делает "!" - это оператор инверсии булевого значения. Т.е. если было true - станет false и наоборот.

PS^ Не очень понял - за что ты извиняешься?
 
СообщениеНу по твоему скрипту камера1 всегда включена. Почему камеры при этом все-таки переключаются? Не знаю. Возможно что-то связано с тем, что одна Main, другая нет.
Просто я бы не оставлял возможности глюков. Вдруг в будущем такое не сработает? Мой скрипт будет работать в любом случае. В нем одна камера включается, вторая выключается каждый раз при нажатии. Ну а чтобы не запутаться в if, в данном случае проще просто инвертировать текущее состояние. Это делает "!" - это оператор инверсии булевого значения. Т.е. если было true - станет false и наоборот.

PS^ Не очень понял - за что ты извиняешься?

Автор - seaman
Дата добавления - 05 Фев 2012 в 00:44
ghostukrДата: Вс, 05 Фев 2012, 00:53 | Сообщение # 8
 
Сообщений: 58
Награды: 0
Репутация: 67
Статус: Offline
Это просто такое выражение,возможно ты прав,может и баг произойдет:3

Веб-Дизайнер.Умею работать с Sandbox.
Понравилось что то? + в репу:3
 
СообщениеЭто просто такое выражение,возможно ты прав,может и баг произойдет:3

Автор - ghostukr
Дата добавления - 05 Фев 2012 в 00:53
ЛевшаДата: Вт, 10 Апр 2012, 20:07 | Сообщение # 9
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (seaman)
Почему камеры при этом все-таки переключаются? Не знаю.

Такая фишка - последняя включенная камера приоритетная. smile
Однако поддержу мнение что этим не стоит пользоваться, лучше жестко включать и выключать.


X.cor.R (Prologue)
 
Сообщение
Quote (seaman)
Почему камеры при этом все-таки переключаются? Не знаю.

Такая фишка - последняя включенная камера приоритетная. smile
Однако поддержу мнение что этим не стоит пользоваться, лучше жестко включать и выключать.

Автор - Левша
Дата добавления - 10 Апр 2012 в 20:07
ProfikДата: Ср, 25 Июл 2012, 19:51 | Сообщение # 10
 
Сообщений: 3
Награды: 0
Репутация: 0
Статус: Offline
у меня пишет

all compiler errors have to be fixed before you can enter playmode!

перевод

все ошибки компилятора должны быть установлены прежде, чем Вы сможете войти в playmode!
angry wacko sad


<iframe src="https://www.indiegogo.com/project/black-skull-pirate-adventure-and-action-game/embedded/8232738" width="222px" height="445px" frameborder="0" scrolling="no"></iframe>
 
Сообщениеу меня пишет

all compiler errors have to be fixed before you can enter playmode!

перевод

все ошибки компилятора должны быть установлены прежде, чем Вы сможете войти в playmode!
angry wacko sad

Автор - Profik
Дата добавления - 25 Июл 2012 в 19:51
seamanДата: Ср, 25 Июл 2012, 23:09 | Сообщение # 11
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
fixed - исправлены
Ну так исправляйте.
 
Сообщениеfixed - исправлены
Ну так исправляйте.

Автор - seaman
Дата добавления - 25 Июл 2012 в 23:09
  • Страница 1 из 1
  • 1
Поиск:
Загрузка...

Game Creating CommUnity © 2009 - 2025