Форум

Обновить библиотеку gl-matrix.js

23 февраля 2016 12:30 #7638
В сборке Blend4web 16.01 используется версия gl-matrix 2.1, тем временем уже достаточно давно релизнулась версия 2.3.2 с достаточно большим количеством изменений и дополнений.

Хотелось бы ещё понять, зачем понадобилось в пределах всей библиотеки gl-matrix менять порядок переменных( например, в оригинале vec3.add(out,a,b ), в blend4web vec3.add(a,b,out) )
23 февраля 2016 19:55 #7644
Хотелось бы ещё понять, зачем понадобилось в пределах всей библиотеки gl-matrix менять порядок переменных( например, в оригинале vec3.add(out,a,b ), в blend4web vec3.add(a,b,out) )

В основном для унификации всего API. Многие функции API предполагают запись результата выполнения в последний формальный параметр функции (обычно это out/dest). Но при этом допускается отсутствие фактического параметра, соответствующего формальному параметру out/dest (функция вызывается с меньшим количеством фактических параметров).
Команда Blend4Web
kirill@blend4web.com
23 февраля 2016 23:48 #7650
Мы решили, что в первой версии glMatrix была более "правильная" последовательность записи аргументов, поэтому решили оставить всё как есть при обновлении на вторую версию.

Кроме того, мы никогда не говорили, что это оригинальный glMatrix, все модифицированные модули теперь часть кода движка, а с обновлением не спешим, поскольку уже не раз были проблемы с багами и неоднозначностями в расчётах тех или иных функций. Со временем, конечно, синхронизируем.
Команда Blend4Web
https://twitter.com/AlexKowel
24 февраля 2016 12:34 #7670
Многие функции API предполагают запись результата выполнения в последний формальный параметр функции (обычно это out/dest). Но при этом допускается отсутствие фактического параметра, соответствующего формальному параметру out/dest (функция вызывается с меньшим количеством фактических параметров).
Кирилл, но почему вы тогда не учли возможность отсутствия параметра out, когда переписывали эту библиотеку? Просто тоже обратил внимание, что в целом по API при отсутствии выходного объекта создаётся новый, а в библиотеке glMatrix нет

Александр, тогда хотя бы рассмотрите пожалуйста вариант добавления в стандартный API модуля таких методов как equals, hermite, spline - их конечно можно интегрировать в проект руками, но по-моему это довольно стандартный функционал

Также было бы интересно услышать, планируете ли вы переходить от Closure Compiler к, например, Grunt или Gulp?

Заранее спасибо за ответ
24 февраля 2016 15:14 #7685
Да, я вижу в новой версии добавилось много полезных функций для интерполяции, со следующего релиза скорее всего обновим.

Closure Compiler нам вполне хватает, также функции вышеназванных утилит частично берёт на себя Project Manager, unit test-ы у нас не используются, их функцию выполняет масса тестовых приложений и сцен, на которых мы отлаживаем наши релизы.
Команда Blend4Web
https://twitter.com/AlexKowel
24 февраля 2016 16:08 #7694
Тогда из пожеланий было бы очень полезно получить в одном из следующих релизов .map файлы для минифицированных сборок клиентского движка, их тоже сильно не хватает :(
 
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.