Создание объектов и 3D-текста кодом
11 января 2016 17:56
не подскажете, где это посмотреть? попробую разобраться…При создании проекта через менеджер можно выбрать опцию "Create Scene Starter Files":
ссылка
- при этом запустится блендер в консольном режиме и проэкспортирует дефолтный blend-файл в bin и json.
Если, вкратце:
1) При отправке формы создания проекта произойдет запрос к серверу по некоторому урлу.
2) Наш tornado-сервер при обработке запроса в отдельном процессе выполняет заданную команду, конкретно вот здесь:
ссылка
Команда представляет собой запуск питоновского скрипта с раличными параметрами:
ссылка
3) В итоге скрипт на сервере запустит блендер с необходимыми флагами (открыть такой-то blend-файл и выполнить такой-то скрипт внутри блендера):ссылка
11 января 2016 18:02
Спасибо за подробный ответ! Буду разбираться
Нарыл такую команду
bpy.ops.text.to_3d_object(split_lines=False)
Create 3d text object from active text data block
Parameters: split_lines (boolean, (optional)) – Split Lines, Create one object per line in the text.
научился создавать текст в консоли блендера проще некуда)
он все команды пишет
bpy.ops.object.text_add()
bpy.ops.object.editmode_toggle()
bpy.ops.font.text_insert(text="ADDED")
bpy.ops.object.editmode_toggle()
bpy.context.object.data.extrude = 0.5
не получилось запустить рендер….
bpy.context.space_data.context = 'RENDER'
но это пока не суть…
У меня возник какой вопрос… Может поделитесь опытом?
а то может не стоит и копья ломать
Допустим получили из БД данные, ну к примеру название. То есть одно слово.
теперь нам надо сделать его 3D. Мы формуриуем запрос серверу запустить блендер, создаем скриптом там текст, рендерим его (экспортируем в json blend4web-ом) и потом загружаем полученное в сцену.
Вот эти операции с Блендером сколько займут времени… Запускается он в фоне, значит должен быстрее… Не сильно ли это затормозит запуск сайта… Может у вас есть какие то данные по этому вопросу?
Нарыл такую команду
bpy.ops.text.to_3d_object(split_lines=False)
Create 3d text object from active text data block
Parameters: split_lines (boolean, (optional)) – Split Lines, Create one object per line in the text.
научился создавать текст в консоли блендера проще некуда)
он все команды пишет
bpy.ops.object.text_add()
bpy.ops.object.editmode_toggle()
bpy.ops.font.text_insert(text="ADDED")
bpy.ops.object.editmode_toggle()
bpy.context.object.data.extrude = 0.5
не получилось запустить рендер….
bpy.context.space_data.context = 'RENDER'
но это пока не суть…
У меня возник какой вопрос… Может поделитесь опытом?
а то может не стоит и копья ломать
Допустим получили из БД данные, ну к примеру название. То есть одно слово.
теперь нам надо сделать его 3D. Мы формуриуем запрос серверу запустить блендер, создаем скриптом там текст, рендерим его (экспортируем в json blend4web-ом) и потом загружаем полученное в сцену.
Вот эти операции с Блендером сколько займут времени… Запускается он в фоне, значит должен быстрее… Не сильно ли это затормозит запуск сайта… Может у вас есть какие то данные по этому вопросу?
Дорогу осилит идущий
21 января 2016 11:00
Вот эти операции с Блендером сколько займут времени… Запускается он в фоне, значит должен быстрее… Не сильно ли это затормозит запуск сайта… Может у вас есть какие то данные по этому вопросу?
Довольно быстро: у меня при создании нового проекта через менеджер запуск и экспорт дефолтной сцены занимают ~0.005сек. Единственное отличие - там готовый файл и никаких больше манипуляций с ним не производится. Так что все-таки больше будет влиять скорость канала.
Желательно, кончено, по возможности сделать кеширование, чтобы блендер лишний раз не запускался.
21 января 2016 11:20
21 января 2016 12:36
25 июля 2016 15:14