Render.ru

WIP. Самолет и полет

Евгений Глазов

Активный участник
Рейтинг
5
#1
Доброго времени, уважаемые коллеги.
Так уж случилось, что возникла необходимость создать не статическую картинку, а видеоряд. Да еще и фотореалистичный. Отчего и зачем - не спрашивайте.
Конечная цель работы - самолет во время взлета, в воздухе, выполняющий различные эволюции в воздухе.
Планирую использовать Maya для создания и анимации самолета и Vue для создания природного окружения. Говорю честно - в 3D я новичок. Потому за не совсем корректные порывы и вопросы прошу больно не бить :)
Одним из сложных лично для меня моментов является написание скриптов на MEL. Потому и решил сначала победить себя. С этой целью нашел в недрах сети готовую модель самолета и озадачился реализовать вращение пропеллера.
Был написан скрипт следующего содержания:

currentUnit -time "pal"
currentTime 1
int $F
for ($F = 1 ; $F < 48 ; $F = $F + 1)
{
currentTime $F
select -r cessna172_helix_Group ;
rotate -r -os 0 -45 0 ;
select -cl ;
}


При попытке запустить новоиспеченный скрипт был получен следующий листинг:

currentUnit -time "pal"
currentTime 1
int $F
for ($F = 1 ; $F < 48 ; $F = $F + 1)
{
currentTime $F
select -r cessna172_helix_Group ;
rotate -r -os 0 -45 0 ;
select -cl ;
};
// Error: int $F
//
// Error: Syntax error //
// Error: for ($F = 1 ; $F < 48 ; $F = $F + 1)
//
// Error: Syntax error //
// Error: for ($F = 1 ; $F < 48 ; $F = $F + 1)
//
// Error: Syntax error //
// Error: }; //
// Error: Syntax error //

Тут я понял, что меня послали, вот только не понял, куда и почему...
 

Евгений Глазов

Активный участник
Рейтинг
5
#3
Вот скрипт, который заработал

currentUnit -time "pal";
currentTime 1 ;
int $F ;
for ($F = 1 ; $F < 48 ; $F = $F + 1)
{
currentTime $F ;
select -cl ;
select -r cessna172_helix_Group ;
rotate -r -os 0 -45 0 ;
select -cl ;
} ;

..и вот результат:
 

Евгений Глазов

Активный участник
Рейтинг
5
#5
Время прошло, а необходимость осталась.... Возникли новые подводные камни.
Один из них следующий. На просторах интернета была найдена модель самолета Cessna172 (см.прикрепленный файл). Из нее экспортирована геометрия и .obj-файл после предварительного удаления истории создания. Геометрия скормлена Mari 2.6. Начал красить. Образовались следующие грабли: наношу рисунок на одно крыло - переключаю камеру или запекаю текстуру - зеркальное отражение появляется симметрично на крыле либо фюзеляже. Режим симметрии в Мари отключен.
Где я неправ?
 

Вложения

кодо!

Активный участник
Рейтинг
9
#7
Образовались следующие грабли: наношу рисунок на одно крыло - переключаю камеру или запекаю текстуру - зеркальное отражение появляется симметрично на крыле либо фюзеляже. Режим симметрии в Мари отключен.
Скорее всего, uv-развертку нужно смотреть. Похоже, что она сделана только на половину модели. На вторую половину, соответственно, симметрично отображена.
 

Евгений Глазов

Активный участник
Рейтинг
5
#8
Скорее всего, uv-развертку нужно смотреть. Похоже, что она сделана только на половину модели. На вторую половину, соответственно, симметрично отображена.
Если я правильно Вас понял, предпочтительнее пересоздать развертку?
 

кодо!

Активный участник
Рейтинг
9
#9
Если я правильно Вас понял, предпочтительнее пересоздать развертку?
Проверьте развертку - если на ней лишь полсамолета (и одно крыло) - разверните заново, чтобы элементы (группы полигонов) не накладывались друг на друга.
 

vkuch

Знаток
Рейтинг
23
#11
поскольку речь идет о ролике ( не игра), то может быть проще воспользоваться простыми функциями и Key Frame Animation.
Вращение пропеллера ( если он вращается по оси Х)
rotateX += 10
где 10 переменная величина в зависимости о стадии работы двигателя: запуск, разогрев, полет
 
Сверху