пятница, 27 апреля 2012 г.

Условная функция в MEL

Однажды, работая над моделированием домом, мне и как всем 3D-шникам нужно посмотреть со всех сторон оценить свою работу в процессе.
Отлично, но часто мешает плоскость - Земля, которая перекрывает экран, если мы опускаем камеру слишком низко.

Решение:
У нас есть:
Плоскость- pPlane1
Камера- persp
Создаем expression. Выделяем плоскость, смотрим atrribute editor на transform node (в ней указаны положения в пространстве, вращение, видимость и т.д.)


RMB на любом значении и выбираем Create New Expression. Появиться окно Expression Editor.


Не важно что выбрано вверху, это только для удобство автоподстановки.
Самое важно - это текстовое поле внизу.
Нам надо понять алгоритм: Если камера опускается ниже горизонта (0 по Y), то плоскость станет невидимой. В другом случае пусть будет видимой.
Если это if
В другом случае это elce

И там мы напишем:

if (persp.translateY<0) 
{
pPlane1.visibility=0;
}
else
{
pPlane1.visibility=1;
}


Теперь надоедливая плоскость не будет нам мешать :)

Комментариев нет:

Отправить комментарий

Контакты: gmail mnexuss@gmail.com | ICQ 201882385 | Add me to Skype