3DCenter.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Reply to this topicStart new topic
> Своё окно с ползунками, Даже по тутору не получается.
Petro_Chel
сообщение 11/06/2011, 21:24
Сообщение #1


Учитель
Иконка группы

Группа: Пользователи
Сообщений: 334
Регистрация: 16/01/2006
Из: Санкт-Петербург
Пользователь №: 21 267



Здравствуйте.
Решил создать своё окошко с ползунками. Стал делать по книге "Создание персонажей в Maya" Криса Мараффи. (гл.6 стр.348).
В кач-ве примера там приводится следующий скрипт:

window -title "test" -widthHeight 300 200;
columnLayout;
button -label "select" -width 100 -command "select -r Sphere";
button -label "Unselect" -width 100 -command "select -cl";
attrFieldSliderGrp -label "Move Sphere Up and Down"
-minValue -20 maxValue 20 -columnAlign 1 left
-attribute Sphere.ty;
showWindow;


По идее должно создаться окошко с двумя кнопками и ползунком, который будет по игрику гонять Sphere от -20 до 20.
А не создаётся, блин stena.gif
Пишет
// Error: Invalid object or value: 20 //
Какой-то косяк именно с ползунком


Вот такое невесёлое начало. А вообще мне нужно создать ползунок, который гонял бы параметр "Image number" от 1 до 5.


Go to the top of the page
 
+Quote Post
Petro_Chel
сообщение 11/06/2011, 22:03
Сообщение #2


Учитель
Иконка группы

Группа: Пользователи
Сообщений: 334
Регистрация: 16/01/2006
Из: Санкт-Петербург
Пользователь №: 21 267



Вот сам тутор.
Прикрепленное изображение
Прикрепленное изображение
Go to the top of the page
 
+Quote Post
Petro_Chel
сообщение 11/06/2011, 23:19
Сообщение #3


Учитель
Иконка группы

Группа: Пользователи
Сообщений: 334
Регистрация: 16/01/2006
Из: Санкт-Петербург
Пользователь №: 21 267



Книжка по MEL + гугл + метод тыка = дошёл своим умом.

window -title "test" -widthHeight 300 200;
columnLayout;
button -label "select" -width 100 -command "select -r file1" ;
button -label "Unselect" -width 100 -command "select -cl" ;
attrFieldSliderGrp -label "Move Sphere Up and Down"
-min 1
-max 5
-at file1.frameExtension;
showWindow;


А книжку свою я где-нибудь ритуально сожгу demod.gif
Go to the top of the page
 
+Quote Post
Petro_Chel
сообщение 12/06/2011, 00:44
Сообщение #4


Учитель
Иконка группы

Группа: Пользователи
Сообщений: 334
Регистрация: 16/01/2006
Из: Санкт-Петербург
Пользователь №: 21 267



Что ж, продолжаю сам себе (?) ставить задачи wink.gif

Есть проект. В нём рядом лежат папки dom.1, dom.2, dom.3 в каждом "доме" также система подпапок из wall.1, wall.2, wall.3. Ну и в стенах файлы file.1, file.2, file.3.
Собственно реально ли сделать по принципу ползунков смену папок? Тоесть верхний ползунок тасовал бы "дома", средний - "стены", а третий - файлы.
Ну и разумеется чтобы при смене "дома" автоматом второй и третий ползунки брали "стены" и файлы из нового.
Прикрепленное изображение Прикрепленное изображение
Go to the top of the page
 
+Quote Post
Petro_Chel
сообщение 14/06/2011, 07:04
Сообщение #5


Учитель
Иконка группы

Группа: Пользователи
Сообщений: 334
Регистрация: 16/01/2006
Из: Санкт-Петербург
Пользователь №: 21 267



Видать чего-то нереального я хочу, раз безответен мой вопрос glare.gif

Продолжил эксперименты. Решил отбросить возню с перенаправлением к разным папкам.
Создал копию plane2, положил на неё вторую текстуру. Задумка в том, чтобы при выключении visiblity у plane1, включалась видимость у plane2.
Скрипт такой:

window -title "test" -widthHeight 400 200;
columnLayout;
attrFieldSliderGrp -label "visible1"
-min 0
-max 1
-at "pPlane1.visibility";
//attrFieldSliderGrp -label "visible1"
// -min 0
// -max 1
// -at "pPlane2.visibility";
//button -label "select" -width 100 -command "select -r file1" ;
//button -label "Unselect" -width 100 -command "select -cl" ;
attrFieldSliderGrp -label "file1"
-min 1
-max 5
-at file1.frameExtension;
attrFieldSliderGrp -label "file2"
-min 1
-max 5
-at file2.frameExtension;
showWindow;

Вопрос: как грамотно сюда внести понятие "если"?
"pPlane2.visibility" = 1, ЕСЛИ "pPlane1.visibility" = 0, и наоборот - "pPlane1.visibility" = 1, ЕСЛИ "pPlane2.visibility" = 0.
(Ползунок видимости для plane2 как видите я отключил. Не вариант).

(Книжки по мелу читаю, но честно говоря, матов на них не хватает. Сплошь абстрактная вода и ноль реальных примеров. Будто писали их математики-теоретики, чтоб их. facepalm.gif )
Go to the top of the page
 
+Quote Post
Petro_Chel
сообщение 21/06/2011, 21:22
Сообщение #6


Учитель
Иконка группы

Группа: Пользователи
Сообщений: 334
Регистрация: 16/01/2006
Из: Санкт-Петербург
Пользователь №: 21 267



В общем с системой "папок-подпапок" я зашёл в тупик (и, судя по соотношению "просмотров/комментариев", не я один).

Поэтому сделал всё гибридным способом mel + expression. (Спасибо, Sanctus, за толчок мысли в нужном направлении).

Итак. Создал три одинаковых plane, на каждую кинул по текстуре с включенной сиквенцией (expression delete).
Далее создал объект-пустышку sphere. Добавил атрибут visible (enum от 1 до 3). + к сфере прилепил экспрешн:

if(pSphere1.visible==1){pPlane1.visibility=1;}
if(pSphere1.visible==1){pPlane2.visibility=0;}
if(pSphere1.visible==1){pPlane3.visibility=0;}
if(pSphere1.visible==2){pPlane1.visibility=0;}
if(pSphere1.visible==2){pPlane2.visibility=1;}
if(pSphere1.visible==2){pPlane3.visibility=0;}
if(pSphere1.visible==3){pPlane1.visibility=0;}
if(pSphere1.visible==3){pPlane2.visibility=0;}
if(pSphere1.visible==3){pPlane3.visibility=1;}
if(file1.frameExtension==1){file2.frameExtension=1 ;}
if(file1.frameExtension==1){file3.frameExtension=1 ;}
if(file1.frameExtension==2){file2.frameExtension=2 ;}
if(file1.frameExtension==2){file3.frameExtension=2 ;}
if(file1.frameExtension==3){file2.frameExtension=3 ;}
if(file1.frameExtension==3){file3.frameExtension=3 ;}

Далее запустил след. скрипт:

window -title "Changes" -widthHeight 400 200;
columnLayout;
attrFieldSliderGrp -label "visible"
-min 1
-max 3
-at "pSphere1.visible";
attrFieldSliderGrp -label "файл"
-min 1
-max 3
-at file1.frameExtension;
showWindow;

Получилось окошко с двумя ползунками. Первый делает невидимыми все plane кроме одной, второй собственно отвечает за номер файла на всех plane разом.

Вот так простенько, но работает.
"Всем" спасибо. dry.gif

P.S. "Понимая Maya" рулит laugh.gif
Go to the top of the page
 
+Quote Post
Petro_Chel
сообщение 21/06/2011, 23:55
Сообщение #7


Учитель
Иконка группы

Группа: Пользователи
Сообщений: 334
Регистрация: 16/01/2006
Из: Санкт-Петербург
Пользователь №: 21 267



QUOTE (Petro_Chel @ 21/06/2011, 22:22) *
Добавил атрибут visible (enum от 1 до 3)...

Data type не "enum", а "integer". (опечаточко happy.gif )
Go to the top of the page
 
+Quote Post
Petro_Chel
сообщение 24/09/2011, 17:03
Сообщение #8


Учитель
Иконка группы

Группа: Пользователи
Сообщений: 334
Регистрация: 16/01/2006
Из: Санкт-Петербург
Пользователь №: 21 267



Новая проблема.
Есть строчка

attrFieldSliderGrp -label "файл"
-min 1
-max 3
-at file1.frameExtension;


Нужно чтобы помимо file1.frameExtension этот же ползунок менял и file5.frameExtension
Почему-то непрокатывают варианты
if(file1.frameExtension==1){file5.frameExtension=1;}
или
file1.frameExtension=file5.frameExtension

Уж по всякому писал, но похоже дело не в грамматике((

Go to the top of the page
 
+Quote Post
Petro_Chel
сообщение 24/09/2011, 21:18
Сообщение #9


Учитель
Иконка группы

Группа: Пользователи
Сообщений: 334
Регистрация: 16/01/2006
Из: Санкт-Петербург
Пользователь №: 21 267



Отбой.
Включил мозг и засинхронил эти параметры через connection editor happy.gif
Go to the top of the page
 
+Quote Post
Bots
сообщение Системное сообщение






Fast ReplyReply to this topicStart new topic

1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 29/03/2024 - 01:23