Страница 1 из 1

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

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

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

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

viewtopic.php?f=5&t=602

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

СообщениеДобавлено: 07 янв 2010, 03:02
Neodrop
Можно ещё проще. Почитайте в справке про OnMouseOver() и OnMouseDown()

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

СообщениеДобавлено: 07 янв 2010, 11:52
Fatalix3d
Я тут запутался ... вообщем имею 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()?

Спасибо за внимание.

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

СообщениеДобавлено: 07 янв 2010, 12:06
Neodrop
В ЖАбе, просто с большой буквы. String

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

СообщениеДобавлено: 07 янв 2010, 13:37
Fatalix3d
Спасибо:) Эх все моя невнимательность))) Сделал скрипт где содержатся ID предметов, при наведение на предмет (Cube) все прекрасно работает-сверяет ,но стоило загрузить мне свою модель и при накидывании на него скрипта он выводит сообщение "Losing preferab и там кнопки Add и Cancel" и OnMouseOver() перестает работать, а с кубом и прочими примитивами имеющийся в Unity3d работает, а с моделями нет((( Почему????

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

СообщениеДобавлено: 07 янв 2010, 14:03
Neodrop
Видимо на ней нет коллайдера все-таки? :-?

Скрипт, реагирующий на наведение мыши, обязан висеть на объекте имеющем коллайдер. ИМЕННО на нем. Пройдите туторы в конце концов! X(

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

СообщениеДобавлено: 10 янв 2010, 12:12
Fatalix3d
[V]