Oleg_T
> Поворот дамми на 180 гр. нечего не дал, просто рендер начинается со спины.
Если теперь (когда он спиной) повернуть дамми на 180, то, по идее, он должен стать лицом вперёд (или я неправильно тебя понял?).
В общем, единственный выход - это шаманить с дамми.
Мне нужно отрендерить 9 ракурсов с 0° по 180°. А остальные 7 ракурсов игра сама отражает в зеркальном отражении. Скрипт рендерить все 16 ракурсов на 360°, остальные 7 ракурсов мне не к чему.
Но это, так сказать, мелочь. Просто думал, что можно это отредактировать.
На счет текстурирования хотел спросить:
Как правильно в Максе на основную текстуру наложить маску цвета RGB?
Извините, не хочу надоедать, но у меня опять возникли вопросы.
Нашел где прописано угол разворота. Изменил, как мне нужно, на 180 градусов. Выставил 9 ракурсов, но при рендеринге скрипт смещает каждый ракурс на 1 градус.
Т. е. получается так:
А должно быть так:
Думаю это происхидит из-за того, что скрипт разворачивает камеру на целое значения градуса. А в моем случае каждый ракурс нужно поворачивать на 22,5 градуса.

Возможно, ли изменить в скрипте количество ракурсов на 180 гр. и указать точный поворот на 22,5 градуса? Если – да, то где это прописать?
Script
Хочу, еще спросит, как рендерить в свою 256 цветную палитру?
И моя монетка в общую копилку.
У меня сейча Макс не стоит, проверить не могу. Но как-то давно писал экспортёр модель->спрайт: SpriteRenderer
Элементы объекта перед выгрузкой лучше сгруппировать. :)
Ещё тут на форуме товарищ классную штуку выкладывал, которая убирает чёрный ободок по краям (делает его полупрозрачным, как и положено).
Это вот её переделка, остаточек (не знаю как назвать). Добавляется в рендер-эффекты (фон у модели должен быть чёрным): SpriteBorderRemoveEffect
MoonStone
чёрный ободок проще всего убирается снятием галки "антиалиасинг геометрии с бекграундом" и рендер в 2-4 раза больших спрайтов в пнг, а потом ресайз в шопе, получается ваще конфетка
Oleg_T
всякие манипуляции с цветами проще проводить после рендера в шопе
MoonStone, спасибо. Только вот не могу запустить твой скрипт SpriteRenderer. Он для какай версии?
Подобный SpriteBorderRemoveEffect скрип я уже использую.
чёрный ободок проще всего убирается снятием галки "антиалиасинг геометрии с бекграундом" и рендер в 2-4 раза больших спрайтов в пнг, а потом ресайз в шопе, получается ваще конфетка
kinyz, если ты имеешь виду эту опцию:
то он ухудшает качество рендера самой модели.
всякие манипуляции с цветами проще проводить после рендера в шопе
Не охота потом в шопе возиться.
Запуск скрипта "SpriteRender.ms" в 3DSMax'е (копирнул инструкцию из своей старой темы):
Запускаем скрипт: MAXScript -> Run Script...
Или кладём его в папку \Scripts\Startup, тогда он будет запускаться каждый раз при запуске 3DSMax'а.
Затем вытаскиваем иконку со скриптом на какую-нибудь панель поближе:
Customize -> Customize User Interface... -> закладка "Toolbars"
Выбираем Category: NogTools
Появившийся Action "Sprite Renderer" вытаскиваем на какую-нибудь панельку вверху.
Жмакаем получившуюся кнопку и работаем.
Рендерится объект в выбранном ViewPort'е. Вращается по оси Z.
Ось можно поменять внутри кода, там где (point3 0 0 1). Тогда скрипт надо сохранить и перезапустить, разумеется.
Насчёт версии 3DSMax'а.. Вот теперь точно не скажу, что у меня тогда стояло.. Что-то из двух: 9-я версия или 2009-я.
Надеюсь, что получится запустить. Если нет, то скажи версию студии и какие ошибки получаются - попробуем разобраться.
kinyz, да, есть такая тема с масштабированием, но для обработки моделей-спрайтов на потоке такое не годится.
На каком-то из этапов всё равно приходится вводить автоматизацию. И данном случае эффект при рендере - это самая выгодная точка, где можно сэкономить на ручной работе.
Спасибо, запустил. На счет (point3 0 0 1) не понял. Вписывал разные значения, но на 22,5 камеру не разворачивает.
Да, насчёт оси я действительно непонятно выразился...
Тут варианты такие:
(point3 0 0 1) - это вращение вокруг оси Z.
(point3 0 1 0) - это вращение вокруг оси Y.
(point3 1 0 0) - это вращение вокруг оси X.
Насчёт поворота камеры на 22,5 градуса: там у меня не градусы задаются, а количество ракурсов, для этого там есть поле "Angles count:".
Ставишь, соответственно, 16 углов и получаешь анимацию с 16-ти сторон.
Ну и название спрайта надо указать.
В общем, для протокола, вот все параметры, которые я вижу тут в скрипте:
"Sprite name" - имя спрайта, это понятно. Имя файла будет формироваться по принципу: "<имя спрайта>!<индекс угла поворота>_<номер кадра анимации>.tga", то есть, если спрайт назвать "cat", то на выходе получим что-то вроде: "cat!1_1.tga". Расширение и, соответственно, формат файла можно поменять в коде, просто заменив "tga" на тот же, "png", скажем.
"Angles count" - количество углов (ракурсов), с которых будет отрендерена анимация.
"Export path" - путь, куда будет сохранена эта куча файлов с картинками.
В подразделе "Animation" есть поля:
"From" - номер кадра, с которого мы будем выгружать анимацию (то есть первый кадр анимации).
"To" - номер кадра, являющийся последним в выгружаемой анимации
"Every Nth frame" - стоит понимать как "выгружать каждый n-ый кадр" (на случай, если в максе анимация слишком тщательная и часть кадров стоит опустить).
MoonStone, спасибо. Настроил как мне нужно.
Подскажите, пожалуйста.
При рендеринга корабля, вокруг парусов образовывается белая окантовка:
Хотя текстура парусов имеет прозрачный фон:
Как это исправить?
P.S. при рендере использую скрипт (наподобие скрипта SpriteBorderRemoveEffect), который убирает чёрный ободок по краям, и перекрашивает в зеленый фон.
Тема в архиве.