Взаимодействие с предметами.

Программирование на Юнити.

Взаимодействие с предметами.

Сообщение Fatalix3d 06 янв 2010, 16:37

Приветствую! У меня такой вопрос (искал с помощью поиска не нашел), так вот:
Как узнать наведена и нажата ли мышь на объекте (3d модель), ну допустим навели мы на Cube и нажали мышь и он начал вертеться? То есть эквивалент команды EntityPick в Blitz3d если кто с ним знаком.
Fatalix3d
UNец
 
Сообщения: 47
Зарегистрирован: 23 дек 2009, 17:43

Re: Взаимодействие с предметами.

Сообщение Zaicheg 06 янв 2010, 16:42

Fatalix3d писал(а):Приветствую! У меня такой вопрос (искал с помощью поиска не нашел), так вот:
Как узнать наведена и нажата ли мышь на объекте (3d модель), ну допустим навели мы на Cube и нажали мышь и он начал вертеться? То есть эквивалент команды EntityPick в Blitz3d если кто с ним знаком.

viewtopic.php?f=5&t=602
Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец

Re: Взаимодействие с предметами.

Сообщение Neodrop 07 янв 2010, 03:02

Можно ещё проще. Почитайте в справке про OnMouseOver() и OnMouseDown()
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Взаимодействие с предметами.

Сообщение Fatalix3d 07 янв 2010, 11:52

Я тут запутался ... вообщем имею Cube и такой скрипт;
Код: Выделить всё
var rotation:int; // Крутится или нет

function OnMouseOver ()
{
   rotation=1;
   itemName="Cube";
}

function OnMouseExit ()
{
   rotation=0;
   itemName="";
}

function Update(){
   if(rotation==1){
   transform.Rotate(0,45*Time.deltaTime,0);
   }
}
То есть мы наводим на него мышь и он вертится, убираем перестает. Так вот я пытаюсь сделать что бы при наведении на этот куб в углу появлялось сообщение что это куб, текст выводим через GUI вот так.
Код: Выделить всё
var target: ObjectRotator;

function OnGUI () {
GUI.Label(Rect(10,10,200,50),"Cube");
}


1)Вот тут и то и вопрос! Как надо обращаться к другому скрипту и считать от туда переменную содержащую имя обьекта?
2)Наверно глупый вопрос но как обьявлять переменные типа String? Пробывал так
Код: Выделить всё
var itemName:string
нечего хорошего не получилось:(
3) Глобальные переменные выглядят так? static var?
4)Как узнать кординаты мыши что то типа MouseX(),MouseY()?

Спасибо за внимание.
Fatalix3d
UNец
 
Сообщения: 47
Зарегистрирован: 23 дек 2009, 17:43

Re: Взаимодействие с предметами.

Сообщение Neodrop 07 янв 2010, 12:06

В ЖАбе, просто с большой буквы. String
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Взаимодействие с предметами.

Сообщение Fatalix3d 07 янв 2010, 13:37

Спасибо:) Эх все моя невнимательность))) Сделал скрипт где содержатся ID предметов, при наведение на предмет (Cube) все прекрасно работает-сверяет ,но стоило загрузить мне свою модель и при накидывании на него скрипта он выводит сообщение "Losing preferab и там кнопки Add и Cancel" и OnMouseOver() перестает работать, а с кубом и прочими примитивами имеющийся в Unity3d работает, а с моделями нет((( Почему????
Fatalix3d
UNец
 
Сообщения: 47
Зарегистрирован: 23 дек 2009, 17:43

Re: Взаимодействие с предметами.

Сообщение Neodrop 07 янв 2010, 14:03

Видимо на ней нет коллайдера все-таки? :-?

Скрипт, реагирующий на наведение мыши, обязан висеть на объекте имеющем коллайдер. ИМЕННО на нем. Пройдите туторы в конце концов! X(
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Взаимодействие с предметами.

Сообщение Fatalix3d 10 янв 2010, 12:12

[V]
Fatalix3d
UNец
 
Сообщения: 47
Зарегистрирован: 23 дек 2009, 17:43


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12