Hidden и Do Not Render как управлять из API (если можно)?
25 октября 2016 17:40
Как управлять из API этими свойствами ренедера "на лету" (конечно если можно) ?
т.е. в одном кадре объект рендерится а в другом уже нет итд…
для облегчения сцены или для еще каки то других тех целей
т.к. тут https://www.blend4web.com/api_doc/module-objects.html
ни чего не нашел (
* Rendering Properties > Hidden
Если это свойство активировано, объект будет невидим при запуске сцены.
* Rendering Properties > Do Not Render
Отключить рендеринг объекта (например, вспомогательный объект физики).
т.е. в одном кадре объект рендерится а в другом уже нет итд…
для облегчения сцены или для еще каки то других тех целей
т.к. тут https://www.blend4web.com/api_doc/module-objects.html
ни чего не нашел (
* Rendering Properties > Hidden
Если это свойство активировано, объект будет невидим при запуске сцены.
* Rendering Properties > Do Not Render
Отключить рендеринг объекта (например, вспомогательный объект физики).
Денис
25 октября 2016 17:54
Как управлять из API этими свойствами ренедера "на лету" (конечно если можно) ?Добрый день!
т.е. в одном кадре объект рендерится а в другом уже нет итд…
для облегчения сцены или для еще каки то других тех целей
т.к. тут https://www.blend4web.com/api_doc/module-objects.html
ни чего не нашел (
m_scenes.hide_object
m_scenes.show_object
25 октября 2016 18:18
Ответ на сообщение пользователя Константин Хомяков
Добрый день!
m_scenes.hide_object
m_scenes.show_object
а… в сцене ))) понял.. , а каие то ограничения есть по использованию внутри идущего рендера?
и правильно ли я понимаю про то, что скрытый объект не рендерится?
и тогда проясните по второй функции "Do Not Render"
Денис
25 октября 2016 19:53
26 октября 2016 04:49
Ответ на сообщение пользователя Winter_Fox
Тут есть нюанс.
Он только скрытый. Без галки на объекте "Do Not Render" просмотрщик сцены например все равно считает треугольники всех скрытых объектов. Не знаю почему так.
ну и я вот и спрашиваю, важно же не только фиктивно скрыть , но и не тратить ресурсы на такой объект .
просим разъяснений от разработчиков. как правиьлно применять эти функции.
Спасибо.
Денис
26 октября 2016 10:26
есть как бы 3 уровня:
hidden - делает объект невидимым при старте, но с возможностью его включить в любой момент, поэтому для него генерируются необходимые буферы
do not render - объект никогда не будет виден, поэтому ресурсы видеокарты на него не тратятся, однако он присутствует в сцене как EMPTY, т.е. имеет позицию/поворот, может участвовать в констрейнтах и т.д.
do not export - объекта в сцене нет
hidden - делает объект невидимым при старте, но с возможностью его включить в любой момент, поэтому для него генерируются необходимые буферы
do not render - объект никогда не будет виден, поэтому ресурсы видеокарты на него не тратятся, однако он присутствует в сцене как EMPTY, т.е. имеет позицию/поворот, может участвовать в констрейнтах и т.д.
do not export - объекта в сцене нет
26 октября 2016 14:38
Ответ на сообщение пользователя Иван Любовников
есть как бы 3 уровня:
hidden - делает объект невидимым при старте, но с возможностью его включить в любой момент, поэтому для него генерируются необходимые буферы
do not render - объект никогда не будет виден, поэтому ресурсы видеокарты на него не тратятся, однако он присутствует в сцене как EMPTY, т.е. имеет позицию/поворот, может участвовать в констрейнтах и т.д.
do not export - объекта в сцене нет
т.е. получается, что времнно исключить объект из сцены нельзя, без того чтобы на него терялись ресурсы?
или же hidden исключает объект из сцены и он не просчитывается пона не будет включен? и он не влияет на картинку в сцене как-то его нет?
Денис
26 октября 2016 14:42
т.е. получается, что времнно исключить объект из сцены нельзя, без того чтобы на него терялись ресурсы?если только динамической загрузкой/выгрузкой
или же hidden исключает объект из сцены и он не просчитывается пона не будет включен? и он не влияет на картинку в сцене как-то его нет?он просто не рендерится, т.е. на это время не тратится, но он занимает память на GPU и может обрабатываться на js движком в тех или иных ситуациях, но тем не менее отключение рендеринга уже сильно скажется
26 октября 2016 18:43
Ответ на сообщение пользователя Иван Любовников
если только динамической загрузкой/выгрузкой
он просто не рендерится, т.е. на это время не тратится, но он занимает память на GPU и может обрабатываться на js движком в тех или иных ситуациях, но тем не менее отключение рендеринга уже сильно скажется
попробую сделать замеры , спаисбо
Денис
09 декабря 2016 00:52
не стану создавать новую тему .. продолжаю ковыряться с управлением материалами из АПИ
вот в консоли вижу такие ошибки:
"B4W ERROR: set_nodemat_value() is deprecated, use material.set_nodemat_value() instead."
КОД который генерит эти ошибки:
что не так вызываю , не пойму ( ???
ОЧЕПЯТАЛСЯ )) и удивиляюсь … ИСПРАВИЛ САМ:
АКТУАЛЬНО:
Еще вижу кучу таких варнингов в ФФоксе :
"
Error: WebGL: texImage2D: Incurred CPU-side conversion, which is very slow. b4w.min.js:587:55
Error: WebGL: texImage2D: Incurred CPU pixel conversion, which is very slow. b4w.min.js:587:55
Error: WebGL: texImage2D: Chosen format/type incurred an expensive reformat: 0x1908/0x1401
"
и что бы это могло значить?
вот в консоли вижу такие ошибки:
"B4W ERROR: set_nodemat_value() is deprecated, use material.set_nodemat_value() instead."
КОД который генерит эти ошибки:
if ((ambMode)&&(!isHighColorMode)){m_obj.set_nodemat_value(m_scs.get_object_by_name("ss"), ["material.SectorPaint","Value.clr"], 1);}
else{m_obj.set_nodemat_value(m_scs.get_object_by_name("ss"), ["material.SectorPaint","Value.clr"], 0);}
m_obj.set_nodemat_value(m_scs.get_object_by_name("ss"), ["material.SectorPaint", "Value"], s);
что не так вызываю , не пойму ( ???
ОЧЕПЯТАЛСЯ )) и удивиляюсь … ИСПРАВИЛ САМ:
if ((ambMode)&&(!isHighColorMode)){m_mat.set_nodemat_value(m_scs.get_object_by_name("ss"), ["material.SectorPaint","Value.clr"], 1);}
else{m_mat.set_nodemat_value(m_scs.get_object_by_name("ss"), ["material.SectorPaint","Value.clr"], 0);}
m_mat.set_nodemat_value(m_scs.get_object_by_name("ss"), ["material.SectorPaint", "Value"], s); //Value.clr
АКТУАЛЬНО:
Еще вижу кучу таких варнингов в ФФоксе :
"
Error: WebGL: texImage2D: Incurred CPU-side conversion, which is very slow. b4w.min.js:587:55
Error: WebGL: texImage2D: Incurred CPU pixel conversion, which is very slow. b4w.min.js:587:55
Error: WebGL: texImage2D: Chosen format/type incurred an expensive reformat: 0x1908/0x1401
"
и что бы это могло значить?
Денис