Введение

Основы

3dsMax8

MaxScript

Учебная программа по мультимедийным
и развлекательным приложениям
компании Autodesk

 

 

 

 

 
 

Москва • Санкт-Петербург • Киев 2006

 


ББК 32.973.26-018.2.75

A11
УДК 681.3.07

Издательский дом "Вильямс"
Зав. редакцией С Я. Тригуб
Перевод с английского и редакция И. В. Берштейна

По общим вопросам обращайтесь в Издательский дом "Вильяме" по адресу:
info@williamspublishing.com, http://www.williamspublishing.com
115419, Москва, а/я 783; 03150, Киев, а/я 152

 

Autodesk, Inc.

А11 Основы 3dsMax 8 MAXScript: учебный курс от Autodesk. : Пер. с англ. — М. : Издательский дом "Вильямс", 2006. — 256 с. : ил. — Парал. тит. англ.

ISBN 5-8459-1044-7 (рус.)

Эта книга представляет собой практическое пособие по изучению принципов и методов создания сценариев MAXScript как весьма эффективного средства повышения производительности труда в Autodesk 3dsMax 8. Многочисленные примеры и простые упражнения, включенные в учебный материал этой книги, позволяют освоить основы программирования на языке Autodesk 3dsMax 8 MAXScript и научиться создавать и отлаживать сценарии для построения пользовательского интерфейса, автоматизации рутинных операций преобразования объектов, текстурирования, освещения, анимации и визуализации сцен. Дополнительный учебный материал к книге прилагается на CD-ROM. Книга адресована тем пользователям Autodesk 3dsMax 8, которые стремятся повысить эффективность своего труда с помощью сценариев, автоматизирующих многие часто повторяемые операции.

ББК 32.973.26-018.2.75

 

 

Все названия программных продуктов являются зарегистрированными торговыми марками соответствующих фирм.

Никакая часть настоящего издания ни в каких целях не может быть воспроизведена в ка­кой бы то ни было форме и какими бы то ни было средствами, будь то электронные или ме­ханические, включая фотокопирование и запись на магнитный носитель, если на это нет письменного разрешения издательства FocalPress.

Authorized translation from the English language edition published by Focal Press, Copyright © 2006, Elsevier Inc.

All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from the Publisher.

Russian language edition published by Williams Publishing House according to the Agreement with R&I Enterprises International, Copyright © 2006

 

 

ISBN 5-8459-1044-7 (рус.) © Издательский дом "Вильямс", 2006

ISBN 0-240-80858-4 (англ.) © 2006, ElsevierInc., 2006

 


Оглавление

 

Введение
Глава 1. Основы MAXScript
Глава 2. Построение пользовательских интерфейсов
Глава 3. Интерфейс 3dsMax
Глава 4. Объекты и классы
Глава 5. Преобразования и анимация
Глава 6. Работа с объектами в MAXScript
Приложение
Предметный указатель

Содержание

 

Введение
Новое в этом издании
О копировании файлов упражнений
От издательства
Глава 1. Основы MAXScript
Задание
Введение
Синтаксис и организация сценария
Комментарии
Многострочные операторы
Переменные и данные
Нетипизированные переменные
Приемник команд MAXScript Listener
Применение MAXScript Listener
Свойства объектов
Дополнительные свойства объектов
Макрорегистратор
Функции
Параметры и обозначение функций
Создание собственных функций
Передача аргументов по значению
Передача аргументов по ссылке
Исключение из правила передачи аргументов по значению (дополнительный материал)
Возврат значений из функций
Локальные и глобальные переменные
Определение переменных
Глобальные переменные
Локальные переменные

Содержание

 

Условные операторы
Операторы if-then
Логические операторы НЕ, И, ИЛИ
Операторы if-then-else
Перечень операторов
Циклические конструкции
Цикл for
Циклы с многими операторами
Циклы while
Совокупности
Массивы
Функции для массивов
Вывод массивов на печать
Многомерные массивы (дополнительный материал)
Метасимволы
Структуры
Синтаксис структуры
Функция-конструктор структуры
Инициализация структуры
Функции-члены структуры
Вызов функций во время построения структуры (дополнительный материал)
Строки
Сцепление
Поиск содержимого строки
Замена
Взаимное преобразование чисел и строк
Создание и выполнение сценариев
Работа с выражениями
Изменение цвета каркаса объектов в цикле
Заключение
Глава 2.Построение пользовательских интерфейсов
Задание Введение 79 79
Построение пользовательских интерфейсов
Типы пользовательских интерфейсов
Виды сценариев
Макросценарии

Содержание

Файлы сценариев
Свитки
Ввод элементов пользовательского интерфейса
Обработчики событий
Группы в свитке
Создание рабочего сценария
Создание пользовательского интерфейса
Ввод обработчиков событий
Точная настройка пользовательского интерфейса
Автоматическое удаление диалоговых окон
Ввод событий для кнопки выбора
Использование локальных переменных
Включение и отключение элементов пользовательского интерфейса
Заключение
Глава 3. Интерфейс3dsMax
Задание
Введение
Получение копии, экземпляра и ссылки
Копия
Экземпляр
Ссылка
Клонирование узлов с помощью функции maxOps.CloneNodes
Копирование массивов
Команды Max
Панели команд
Основная панель инструментов
Выбор объектов на сцене
Выбор точек
Функция mouseTrack (дополнительный материал)
Интерфейс раскраски (дополнительный материал)
Заключение
Глава 4. Объекты и классы
Задание
Введение

 

Объектно-ориентированное программирование
Иерархия классов
Наследование классов
Определение типов классов
Экземпляры
Свойства
Класс MAXWrapper
Методы
Конструкторы
Методы типа get и set
Отображаемые методы
Работа со справочным руководством по MAXScript
Грамматика MAXScript
Необязательные параметры
Возвращаемые значения
Присваивание ссылок
Заключение
Глава 5. Преобразования и анимация
Задание
Введение
Свойства преобразований изменением положения и масштабированием
Преобразование изменением положения
Преобразование масштабированием
Преобразование вращением
Метод Euler Angles
Рамочная система координат
Локальные вращения
Кватернионы
Метод AngleAxis
Контексты
Контекст coordsys
Анимация
Контроллеры
Ключевые кадры анимации
Значения ключевых кадров
Типы контроллеров

Содержание


Содержание

 

Ось вращения
Удаление ключевых кадров
Касательные к ключевым кадрам
Заключение
Глава 6. Работа с объектами в MAXScript
Задание
Введение
Применение модификаторов
Источники света и камеры
Источники света
Камеры
Материалы
Управление средством визуализации
Обратные вызовы
Внесение элемента случайности
Заключение Приложение
Отладка, перехват и обработка ошибок
Виды ошибок
Периоды компиляции и выполнения
Методы отладки сценариев
Обратное отслеживание по стеку
Перехват и обработка ошибок
Отладчик MAXScript Debugger
Доступ к отладчику
Команда прерывания
Окно вывода из отладчика
Командная строка отладчика
Окно диспетчера наблюдения
Исправление ошибок в отладчике
Установка активного кадра стека
Интерфейс отладчика

Содержание

Файловый ввод-вывод
Указатель файла и смещение
Запись в файлы
Доступ к файлам на уровне системы
Диалоговые окна открытия и сохранения файлов
Открытие диалогового окна сохранения файлов
Ввод-вывод в двоичные файлы
Запись в двоичный файл
Чтение из двоичного файла
Дополнительные функции двоичного ввода-вывода
Редактор Visual MAXScript
Сохранение и активизация панелей, созданных в редакторе  
Visual MAXScript
Другое применение редактора VMS
Встраивание элементов управления ActiveX в свитки средствами MAXScript
Система публикации функций и интерфейсы
Контроллеры управления по выражению и по сценарию Предметный указатель 243 246

Приглашаем вас изучить основы программирования на языке MAXScript для приложения Autodesk® 3dsMax® 8. В этой книге вам предоставляется возможность освоить ряд методов автоматизации рутинных операций средствами языка создания сценариев MAXScript, чтобы научиться с его помощью настраивать среду 3dsMax для более продуктивной работы в данном приложении.

Средства MAXScript позволяют взаимодействовать со сценой 3dsMax и автоматически управлять действиями или операциями из сценария посредством опе­раторов. Для этого операции записываются в форме текста (сценария), a 3dsMax интерпретирует сценарий и выполняет последовательность операций. Такие тек­стовые сценарии можно сохранить и повторно использовать в любой момент. MAXScript охватывает практически все свойства 3dsMax.

Научиться писать сценарии на определенном уровне может каждый, однако сложность сценариев в конечном итоге зависит от трех следующих факторов.

• Практика. Постоянная работа с MAXScript и изучение сценариев, написанных другими, способствуют развитию способностей создания сценариев.

• Математическая подготовка. Для написания сценариев очень важно знать основы математики, и особенно — тригонометрии.

• Опыт программирования. Для создания сценариев полезно иметь некоторый опыт программирования, хотя и необязательно.

Самым лучшим источником информации, необходимой для работы с MAXScript, служит руководство по MAXScript, которое составлено в виде оперативной справки, входящей в состав 3dsMax. Основное назначение данного руководства — дать исчерпывающую справку по всем инструментам MAXScript и показать, как ими пользоваться. Поэтому для того, чтобы научиться писать сценарии, очень важно уметь пользоваться руководством по MAXScript. В одном из упражнений, вклю­ченных в настоящее издание, показано, каким образом следует искать нужную информацию в оперативной справке, чтобы продолжить изучение MAXScript по завершении данного практического курса.

Проработав материал этой книги, вы сможете самостоятельно анализировать сценарии, написанные другими. В таких сценариях вы можете обнаружить неизвестные вам методы создания сценариев или те же самые задачи, решаемые по- другому. Как правило, при написании сценариев допускается несколько вариантов решения одной и той же задачи, и по ходу создания все более крупных и сложных сценариев у вас постепенно выработается собственный стиль их написания.


Введение