Изучаю блендер, и возникла задача экспорта сцены которую я не смог решить т.к. нет нормального описания что и где =((
если тут есть народ который знает и умеет, отпишитесь плизь, хотелось бы научиться
Экспорта куда?
в простейший свой формат
Я недавно писал экспортер в "простейший свой формат", ориентировался по этому уроку и (в основном) методу научного тыка. В Python естьхорошая функция dir(объект), показывающая, что прячется внутри объекта.
(Что-то не могу скрипт найти...)
Пока что у меня получилось экспортировать: имя объекта, точки и названия текстур =)
Аа, ну у меня аналогично :) Хотя я больше и не пытался.
Ну это у меня первые таксказать часы работы на питоне и в блендере :D так что мб ещё многое смогу =)
но всё же охото со спецом в этом деле поговорить :)
Сейчас попытался переделать свои скрипты под 2.5х. Пришлось изрядно пропотеть. И Блендер новый и Питон не тот, что раньше. Ещё и документация теперь, не в хтмл, а в богомерзком пдф, с криворуким поиском.
Ну а получилось ?
Пока точно не могу сказать, ибо не могу проверить в боевых условиях. На глазок, вроде как нормально работает. Сделал младшего брата моего скриптеца, пишет в текстовый файл:
- количество mesh объектов;
- для каждого mesh объекта пишет:
1) название объекта;
2) количество треугольников в объекте;
3) для каждого треугольника;
a ) сохраняет обычные и текстурные координаты;
4) имя текстуры, если есть;
https://sites.google.com/site/scotomir/download/io_export_mbt.py
Не, ему надо и нормали, и кости и еще много чего
Нормали там же лежат где и координаты вершин, а скрипты для анимации я ещё не перегонял.
Писал экспортер на 2.49, а с 2.5х не ковырялся еще, хотел спросить, там преемственность сохранилась или перекроили все и вся?
.Scotina
>а скрипты для анимации я ещё не перегонял.
В частности на это бы я взглянул, обязательно перегони)
Как это там все сохраняется и что от куда берется, ты по IPO сохраняешь или evaluatePose(frame) и после берешь матрицы?
>текстурные координаты
Каналы текстурные все сохраняешь или только один? где они там лежат кстати, если у нас два текстурных канала, три?
goto
Перекроили всё и вся. Изменены многие имена переменных и объектов, многие сменили своё местоположение. И никакого режима совместимости ( по крайней мере я не нашёл ). Т.е. старые скрипты придётся переписывать "от и до".
"...Каналы текстурные все сохраняешь или только один?..."
Именно в этом примере я брал координаты только одного канала, того, который активен в данный момент. Попозже перепишу для множества слоёв. Вроде бы текстурные слои в 2.5 также устроены, как и в 2.4х ( почти также ), т.е. надо будет просто перебрать по очереди все UV слои mesh, делая их активными.
Кстати, похоже на то, что Питон всё-таки осалил Блендер. Вчера новый только что скачанный Блендер 2.58a заставил меня пропотеть также как и Питон. Написал скриптец, решил его "зарегистрировать", ну чтобы он прописался в Экспорт/Импорт, и опаньки... в add-ons, вообще ни одно скрипта не показывается, а попытки зарегистрировать любой, даже из ихней же папки с аддонами, скрипт, приводили к каким-то там ошибкам, якобы связанные с неправильной кодировкой. "Решил" проблему установив билд Блендера, тот который в зипархиве они выкладывают.
.Scotina
>старые скрипты придётся переписывать "от и до".
мдя уж... но хорошо что есть доки, есть куда глянуть.
>Вроде бы текстурные слои в 2.5 также устроены, как и в 2.4х ( почти также ), т.е. надо будет просто перебрать по очереди все UV слои mesh, делая их активными.
uv_textures да похоже, что так, там же коллекция этих текстур, прошелся по списку, каждую активировал и сохранил.
>в add-ons, вообще ни одно скрипта не показывается
гуй не ковырял для скриптов еще, пока хватает того что они работают (или не работают), подгрузил его и Alt+P на экспорт модельку.)
Тема в архиве.