LINUX.ORG.RU
ФорумTalks

Почему тормозит анимация сложных svg объектов?


0

0

В Фоксе.

Открыл Блендер, намоедлил птичку из почти пол мильона полигонов. Сложности для. Сконвертировал в svg. Открыл в Фоксе - тормоза.

К слову, в Qt'шных демо отрисовка сцены из двух десятков шариков не тормозит только при использовании OpenGL рендерера - программная отрисовка идёт рывками.

Ого! На этой анимации ReKonq сожрал 560 мегов памяти. Прозреваю что это часть проблемы.

К слову, он орисовал сцену без артефактов, в отличие от Firefox.

wyldrodney
() автор топика
Ответ на: комментарий от aiqu6Ait

А вот графические движки с такой мелочью справляются.

Собственно, почему браузеры не используют для этих целей OpenGL?

wyldrodney
() автор топика

Кто-нибудь пробовал открывать сложные примеры для Inkscape, на пример с машинками, в том же Inkscape?

Nixopatolog
()
Ответ на: комментарий от linux4ever

Тебе объяснить значение слова «вышел»? Рожай уже мысль.

Вопрос был не в том. Почему какие-то 16 шариков с несколькими градиентами тормозят при обработке на процессоре - вот вопрос.

wyldrodney
() автор топика
Ответ на: комментарий от wyldrodney

>Тебе объяснить значение слова «вышел»? Рожай уже мысль.

Плять, OpenGL 3.2 уже вышел, но в MESA его нет, дальше что? WebGL мог выйти, мог зайти, но поддержки ускорения нет в драйверах.

linux4ever
()
Ответ на: комментарий от linux4ever

Вот и я о том: что сказать то хотел?

Как это нет поддержки ускорения в драйверах?! о_О Боже, да у меня игры на святом слове летают!

wyldrodney
() автор топика
Ответ на: комментарий от linux4ever

А зачем? Ты всё равно крому как метанировать и тупить, пытаясь задеть, ничего не можешь. Даже мысль за несколько постов не осилил.

Вопрос выше. Нет ответа - лучше молчи.

wyldrodney
() автор топика
Ответ на: комментарий от wyldrodney

Ты тупой, если ты даже читать не умеешь, то это твои проблемы.

OpenGL _3.2_ и _MESA_

linux4ever
()
Ответ на: комментарий от wyldrodney

Как это нет поддержки ускорения в драйверах?! о_О Боже, да у меня игры на святом слове летают!

А если у пользователя стоит какая-нибудь говеная встроенная интеловская или ВИАвская видеокарта, которая OpenGL только эмулировать умеет, да и то только 2D? Как он сможет просмотреть 3D картинку???

Eddy_Em ☆☆☆☆☆
()
Ответ на: 4.2 от wyldrodney

Кстати, а где-нибудь примеры есть? А то на их сайте только «Sorry, no example code has been uploaded yet.»

Сам сейчас делаю 3D библиотечку SVG, если добавить туда еще и возможности OpenGL, было бы совсем хорошо (а то у меня и сцены из ~100-200 объектов при повороте притормаживают).

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

>видеокарта, которая OpenGL только эмулировать умеет

Не поверишь, моя нвидия с закрытыми дровами точно так же эмулирует.

Как он сможет просмотреть 3D картинку???

Все _видеокарты_ умеют 3D. Даже 2D - идёт как разновидность последнего.

Суть в том, что малюш слил: в WbGL'овской вики указано что Firefox умеет эту технолгию даже с Mesa. Но речь шла совсем не о нужно или ненужности обработки векторной графики на видеокарте. Речь о другом: почему оно тормозит на процессоре.

Вот почему какие-то шарики с парой градиентов тормозят?

wyldrodney
() автор топика
Ответ на: комментарий от wyldrodney

>Firefox умеет эту технолгию даже с Mesa

Ты имбецил, умеет без DRI и со включенным gallium. Тормоза будут на месте. А NVidia вообще не факт, что поддерживается.

linux4ever
()
Ответ на: комментарий от wyldrodney

Не поверишь, моя нвидия с закрытыми дровами точно так же эмулирует.

Первый раз слышу, чтобы закрытые нвидиавские дрова «эмулировали» OpenGL, вообще-то, видеокарта с ним напрямую работает, без эмуляции.

Пример: дома у меня nVidia, glxgears показывает ~1500 в полноэкранном режиме (1920x1080), а на работе ATI, и опять слетела поддержка OpenGL (почему-то вместо fglrx используется mesa), показывает 40 (1680x1050). Разница между реальным OpenGL и эмулированным, думаю, понятна?

Вот почему какие-то шарики с парой градиентов тормозят?

А потому и тормозят, что вместо процессоров видеокарты их узловые координаты вычисляются обычным процессором, который подобные расчеты делает в сотни (а то и тысячи) раз медленнее.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от wyldrodney

А чем поддепжка svg в Qt не устроила?

Во-первых, Qt RIP.

Во-вторых, я делаю веб-приложение, и мне нужна поддержка нормальной 3D графики в браузере.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Ему бы на нобелевскую премию 3D дизайнеры сложились бы, если бы он заставил рендеринг работать через GL.

linux4ever
()

Ты слишком многого хочешь) Тут бывает, что SVG фон на всю страницу для задания бордера вызывает тормоза, а ты про мильоны полигонов)

Deleted
()

в ёпере 10.50 намереваются прикрутить Vega, аппаратный рендерер svg

kott ★★★★★
()

если ты полез в примеры qt - то исследование ты не завершил. Там есть режима:

в первом команды непосредственно отслаються X серверу. То есть рисование идет с помощью полигонов. Этот режим безбожно тормозит как под linux, так и под windows. Но под mac os его отставание от open gl незначительно, но качество выше.

второе режим: отрисовка кадров с помощь QRender или как его там. Фактически отсылается только кадры. Работает с приемлемой скоростью (не сильно уступает open gl), причем одинаково быстро, как под linux, так и под mac os/windows. Быстрее на порядок где-то по моему

третий - трансляций в open gl команды. Тут не все гладко - качество хромает местами, местами не точно и тд.

Тормозом в данном случае, как и везде, при работе с большим кол-вом разнородной информации для отрисовки, выступает Х-сервер.

namezys ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.