Сообщения, созданные пользователем ДЕНИС
22 июля 2016 15:24
Ответ на сообщение пользователя Семенцов Роман
….Но опять же, я согласен, что такие вещи надо оставлять на совести разработчика и ему самому решать, когда рендерить новый кадр.
Было бы очень круто если бы вы успели это реализовать к релизу.. хочу все-же попробовать собрать приложение до начала месяца
Денис
21 июля 2016 19:53
Ответ на сообщение пользователя Семенцов Роман
С этим посложнее - релиз уже не загорами. Быстро добавить такой функционал не получится, надо ещё подумать над необходимостью его реализации.
например тот же ТРИИ с которого собственно я пришел к вам.. там это есть и оно там давно. по идее значит нужно было ))) про время согласен конечно. хотя от паузы это вроде ка кне сильно отличаться будет.
Получается логика такая , всегда пауза а по запросу рендер и сразу снова пауза.. только чтоб не писать это все внешне пусть уж в блоке рендера крутится само , а запуск тогда через инициализацию и переменную .
Попутный вопрос который проистекает из вышесказанного, а зачем вообще "движок" рендерит кадры если сцена статична и в ней ни чего не поменялось? ))))))) ясно, что электричество в розетке халявное , а вот в батарейке не халявное.. по хорошему все то, что описано выше можно да и нужно завязать на изменения в сцене, если нет изменений то пауза рендера! это логично !
Денис
21 июля 2016 18:26
21 июля 2016 17:10
Резюмируя все вышесказанное:
Проблема ( необходимость) :
сейчас "движок B4W" заточен на получение макс. возможного FPS и не предусматривает опции ручного( по таймеру) рендеринга как напримре можно сделать в THREE.JS указав, что по событию должен перерисовать.
Существуют варианты когда наприме нужно перерисовать сцену или ее часть и вывести например один раз в секунду поменяв в сцене что либо итд… или по наступлению события.
выше было предположене, что можно после отрисовки кадра ставить на паузу, а перед необходимостью рефреша снимать с паузы и после снова ставить .. ка то очень замутно получается …
по идее нужна возможность указать при инициализации, что рефрешем мы управляем вручную и дать возможность выполнить однократный рендеринг, и снова ждать команды на рендер. или еще сделать вариант с ограничителем FPS например не более 1 кадра в сек или в миллисекундах от прошлого кадра. конечно и тот и тот варинт будет к стати во многих проектах, может, чтобы им(ограничителем) можно было управлять в ручную.
Еще прошу пояснить по ПАУЗЕ рендеринг полностью остатнавливается и ресурсы не потребляются?
( это когда в бекграунд уходит задача)
ПРИМЕР обсуждавшийся выше - КВАРЦЕВЫЕ ЧАСЫ , и даже часы с перерисовкой в неск кадров в секунду тоже варинт.
Спасибо заранее.
Проблема ( необходимость) :
сейчас "движок B4W" заточен на получение макс. возможного FPS и не предусматривает опции ручного( по таймеру) рендеринга как напримре можно сделать в THREE.JS указав, что по событию должен перерисовать.
Существуют варианты когда наприме нужно перерисовать сцену или ее часть и вывести например один раз в секунду поменяв в сцене что либо итд… или по наступлению события.
выше было предположене, что можно после отрисовки кадра ставить на паузу, а перед необходимостью рефреша снимать с паузы и после снова ставить .. ка то очень замутно получается …
по идее нужна возможность указать при инициализации, что рефрешем мы управляем вручную и дать возможность выполнить однократный рендеринг, и снова ждать команды на рендер. или еще сделать вариант с ограничителем FPS например не более 1 кадра в сек или в миллисекундах от прошлого кадра. конечно и тот и тот варинт будет к стати во многих проектах, может, чтобы им(ограничителем) можно было управлять в ручную.
Еще прошу пояснить по ПАУЗЕ рендеринг полностью остатнавливается и ресурсы не потребляются?
( это когда в бекграунд уходит задача)
ПРИМЕР обсуждавшийся выше - КВАРЦЕВЫЕ ЧАСЫ , и даже часы с перерисовкой в неск кадров в секунду тоже варинт.
Спасибо заранее.
Денис
17 июля 2016 12:14
Ответ на сообщение пользователя Кирилл
На вашем месте я сначала бы сделал, что бы просто работало. А потом уже думать нужна ли эта функция….
По опыту знаю, разработчики b4w идут навстречу своему комьюнити, и могут внести дополнительный функционал.
ну по нашему обсуждению получается что нет такой функции. значит нужна, пауза после каждого кадра тоже не вариант
Денис
15 июля 2016 19:30
15 июля 2016 19:29
Ответ на сообщение пользователя Кирилл
Насколько я знаю при потере фокуса активной вкладки все ставится на паузу и тэто вроде не отключить… А так ставьте вручную паузу после окончания анимации.
т.е. получатеся что все время надо вызывать пауза и потом запуск итд.. получается что на операцию больше чем нужно в каждом цикле
Денис
15 июля 2016 18:33
Ответ на сообщение пользователя Кирилл
Да оно и правильно, как мне кажется, если захочешь по крутить модель, то тебе нужно макс фпс. К тому же в b4w сразу имеется инерция, при повороте камеры. Поэтому вешать на событие мыши колбек на отрисовку не вижу смысла, хотя на слабых компьютерах может отзывчивость подняться.
в том то и все тело у меня по тапу происходят только некоторые изменения(планирую) с поворотами итд части модели.. мне надо минимизировать потребление ресурсов т.е. чтоб оно не рендерило если нет изменений в сцене!
а был виден последний кадр готовый , а тем более если дивайс спит или перешел в пониж энергопотребление илии фокус ушел с окна итд.
Денис
15 июля 2016 18:28
Либо же если у вас отдельный canvas внутри страницы то его размеры в пикселях.
ага у меня в ЦСС все жестко забито без ресайзов ( специфика проекта такая)
Можете расписать пути, куда вы положили текстуры, и blend файл?
Блин ((
проверил. а теперьпочему то в проекте все в одно место указывает все пути .. что за х,
apps_dev/L3
Денис
15 июля 2016 17:35