Написание парсера сцен командной строки для 3DS Max 2010
Я пытаюсь выяснить, возможно ли вообще написать синтаксический анализатор командной строки для 3ds max 2010. Я хочу собрать некоторую информацию из сцены max без необходимости загружать студию Max. Мне сообщили, что невозможно получить доступ к Max API без запуска max studio.
Возможно использование моей программы
C:\myparser.exe "myfile.max" > bonenames.txt
Любая помощь / предложения / хаки очень ценятся:)
Спасибо
1 ответ
Почти все возможно с достаточным временем, опытом и ресурсами. Но то, что вы предлагаете, обычно неосуществимо, если вы:
- Иметь полную документацию по бинарному формату файлов 3ds Max 2010 или
- Нужно извлечь исключительно небольшое количество информации со сцены.
Если вы пытаетесь извлечь только имена костей из файла - и только для реальных объектов костей вместо произвольной геометрии, используемой в качестве кости - есть шанс (хотя и очень тонкий), что создание множества файлов, которые отличаются очень незначительными способами, может позволить вам выполнить двоичный анализ и вывести некоторые шаблоны из содержимого.
Например, сохраните пустую сцену Max, затем добавьте к ней одну кость и сохраните ее, затем переименуйте кость (используя то же количество символов) и сохраните ее, затем переименуйте кость, чтобы добавить один символ и сохранить его, затем переместите кости и сохраните это, затем добавьте еще одну кость и сохраните это. Затем попробуйте добавить модификаторы, или блоки параметров, или скрыть кость, или переместить ее в другой слой и т. Д. И т. Д. И посмотрите, что вы получите. Если повезет, среди слоев кучи может быть разумный паттерн, который вы сможете разобрать для себя.