Конвертировать 3D модель в SceneJS JSON, включая текстуру

Мотив
Я пытаюсь создать небольшое демо-приложение с использованием WebGL. Я решил использовать SceneJS, потому что он показался мне простым фреймворком и его более чем достаточно для этой цели.

Я загрузил пару моделей .blend (Amy Rose, среди прочих) и экспортировал их в файл Collada (.dae) с помощью Blender. Затем я использовал scenejs-pycollada, чтобы преобразовать их в json-модель.

Я только что потратил пару часов на то, чтобы заставить работать scenejs-pycollada конвертер. Видимо, заставить эти зависимости Python работать в Windows не так-то просто, если вы никогда раньше не использовали Python. ;)

Проблема
Но теперь я застрял (снова). Моя проблема в том, что у моделей нет ни текстур, ни материалов.

Я использовал Пример плоскости Сеймура из SceneJS. Модель, которую я преобразовал, едва заметна. Она черная и, похоже, не реагирует на освещение в сцене. Если я загружу самолет и модель вместе, я увижу, что модель загружена, потому что ее руки и ноги торчат из самолета.

Теперь я последовал нескольким руководствам, которые позволили мне экспортировать текстуру как изображение PNG. Затем я изменил имя файла текстуры в JSON модели, чтобы оно соответствовало имени файла, но это не помогает.

Поэтому я надеюсь, что кто-нибудь поможет мне найти способ экспортировать модели Blender (или другие обычные 3D модели) в формат JSON, используемый SceneJS, включая текстуры.

Любой другой способ загрузки моделей в SceneJS тоже подойдет, лишь бы он работал.

Если у кого-нибудь есть ссылка на бесплатное скачивание JSON-моделей тел/фигур, это бы помогло на данный момент, но я скорее узнаю, как это работает. :)

Я использую

  • Windows 7 Home Premium 64bit
  • Python 2.7 (Windows 32bit)
    Я выбрал 32-битную версию, из-за кажущейся лучшей поддержки библиотек и более доступных инсталляторов. Сначала я перепутал 32 и 64 бит, и это вызвало проблемы, но теперь все работает (кроме текстур, то есть).
  • Blender 2.59
  • SceneJS 0.8.0

Мой рабочий процесс
В Blender я экспортирую модели в файлы Collada (*.dae), а затем конвертирую их в Raw JSON с помощью scenejs-pycollada. Это дает мне файл JSON с двумя объектами в нем. Первый - сцена, второй - модель. Я сохраняю второй и помещаю его в переменную Javascript, которая используется в коде примера SceneJS. Модель заканчивается свойствами , "type": "library", "parent": "Scene", которые мне нужно удалить из кода, чтобы он вообще загрузился.

9
задан GolezTrol 10 October 2011 в 01:36
поделиться