
- •Часть 1
- •Окно maxScript Listener
- •Окно maxScript Editor
- •Простейшие математические операторы и выражения
- •Пропуск проходов и принудительный выход из циклов
- •Часть 2 Функции
- •Объекты и классы в объектно-ориентированном программировании
- •Определения
- •Операции со строками
- •Операции с массивами
- •Команды 3ds max в maxScript
- •Часть 3 Создание свитков
- •События
- •Элементы интерфейса
- •Часть 4 Сплайны
- •Класс SplineShape
- •Часть 5 Простейшие диалоговые окна
- •If queryBox “Хотите продолжить?” beep:false then ... Некоторые из методов работы с объектами
- •Характерные точки объектов
- •Системы координат
- •Координатные сетки
- •Определение угла между двумя векторами
- •Представление ориентации при помощи кватернионов (quaternions)
- •Создание вспомогательных объектов-пустышек Dummy
- •Изменение общих параметров анимации
- •Анимация вершин сплайнов
- •Примеры контроллеров анимации path constraint и link constraint
- •Методы print и format
Часть 1
MAXScript – встроенный в 3ds max язык написания скриптов. Скрипт – это текстовый файл, обычно с расширением .ms.
При помощи скриптов можно:
Программировать множество действий пользователя, таких как моделирование, анимация, наложение материалов, визуализация (rendering) и др.
Интерактивно контролировать программу из командной строки окна Listener.
Создавать для скриптов стандартный пользовательский интерфейс, размещая его элементы в свитках панели Utility, или в управляющих окнах.
Создавать из скриптов макрокоманды и вставлять их в качестве кнопок на панели инструментов 3ds max.
Расширять или изменять пользовательский интерфейс для объектов (objects), модификаторов (modifiers), материалов (materials), текстур (textures), эффектов визуализации (render effects) и атмосферных эффектов (atmosperic effects).
Создавать дополнения для собственных объектов-сеток (mesh objects), модификаторов и эффектов визуализации.
Создавать свои собственные инструменты импорта/экспорта с помощью встроенного средства ввода/вывода файлов (file I/O).
Писать процедурные контроллеры и с их помощью управлять состоянием всей сцены.
Создавать инструменты групповых вычислений, например, скрипты для последовательной визуализации множества сцен.
Управлять внешними приложениями через механизм OLE Automation.
Записывать свои действия в 3ds max, как команды MAXScript.
Хранить в файлах сцен скрипты, которые будут запускаться при каждом из определенных событий, например, до и после открытия файла сцены, созданием нового файла, после и перед визуализацией, изменением выбранных объектов и т.п.
Доступ к MAXScript: Command Panel > Utility > MAXScript
MAXScript – падающее меню
Инструмент Описание
Open Listener отображает окно MAXScript Listener. Это окно также можно открыть, нажав кнопку F11.
New Script отображает окно MAXScript Editor для записи нового скрипта.
Open Script открывает диалоговое окно File Open. Выбранный скрипт отображается в новом окне MAXScript Editor.
Run Script открывает диалоговое окно File Open. Выбранный скрипт прочитывается и выполняется. Все выходные данные печатаются в окне Listener.
Utilities отображает список доступных программ-скриптов (утилит). Имя утилиты не появится в окне до тех пор, пока MAXScript ее не запустит.
Close Закрывает свиток MAXScript и все свитки утилит.
Окно maxScript Listener
Свойства
Чтобы выделить строку целиком, нужно подвести курсор к ее левому краю (он примет вид стрелки) и щелкнуть один раз. Если щелкнуть, не отпуская, и повести мышкой, выделяться будут сразу несколько строк.
Методом drag-and-drop можно перемещать выделенный текст между частями окна Listener и между окнами Editor и Listener. Если переместить его на панель инструментов 3ds max, создается макроскрипт с этим текстом.
Выделенный текст автоматически загружается в поле поиска, когда пользователь выбирает из падающего меню Search пункт Find или Replace.
Цветовое кодирование: вводимый пользователем текст – черный, выходной текст MAXScript – синий, текст сообщений об ошибках – красный.
Некоторые полезные команды
CTRL+B Выделяет текст внутри скобок любого типа. Можно нажимать несколько раз, если есть еще скобки, выделение будет расширяться (В Editor тоже работает).
ENTER Если курсор находится на конце последней строки, она выполняется, в окне Listener печатается выходной текст и курсор переходит на новую строку.
Если курсор находится в другом месте, добавляется новая строка, начиная с его текущей позиции.
Number-Pad ENTER Выполняется строка, содержащая курсор.
SHIFT+ENTER То же самое, если текст не выделен. Иначе выполняется только выделенный текст.
? Всякий раз, когда выполняется одна или несколько команд, последний вычисленный результат, отображаемый в окне Listener сохраняется во внутренней переменной ?. Для дальнейшего использования можно присвоить его любой пользовательской переменной: x = ?