@Sr_Arthur

Почему цикл в MaxScript выдает такой результат?

Всем доброго дня. Недавно начать изучать написание скриптов в MaxScript для 3d max и столкнулся с следующей проблемой:

s = sphere ()

for i=1 to 5 do
(
a=copy s pos:[i*50, 0, 0]
if (s.pos.x>150) then
(
s.pos.z=50
)
)

Маленький скрипт который создает сначала сферу, а затем через цикл копирует ее 5 раз, с условием, что когда значение координаты по Х станет больше чем 150, тогда значение позиции по Z надо присвоить значение 50. В итоге скрипт просто делает 5 копий без изменений позиции по Z. Причем есть небольшая странность, когда я заменил оператор сравнения на обратный, то есть (s.pos.x < 150), то одна сфера все таки изменила позицию по Z=50, но самое странное, что это была самая первая сфера, которая создавалась то начала цикла, и как она взяла это значение с условного оператора if мне вообще не понятно...
  • Вопрос задан
  • 64 просмотра
Пригласить эксперта
Ответы на вопрос 1
Заменить s.pos на a.pos в двух местах
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы