Canvas. 2d-контекст. Z-буфер.
Доброго времени суток, "когда" бы Вы не находились в часовом пространстве Земли.
Хотел задать общий вопрос по поводу возможности работы с буфером глубины в canvas'е при "2d" контексте. Есть ли какая-либо возможность кидать всю пачку изображений на отрисовку, чтобы аппаратно было вычислено, какие пиксели рисовать, а какие не трогать? Или всё это делать руками, перебирая ImageData всех изображений(ну не всех, это уже дело оптимизации)? Благодарю. |
Rise, Вот я работаю с canvas в HTML. Рисую много картинок. И не хочу отрисовывать сначала фон, потом класть на него детали, а на эти детали ещё что-то рисовать последовательно. Это всё будет перегораживать то, что уже отрисовано. Хочу вычислить финальный результат и кидать его для рисования. Или от этих манипуляций приложение быстрее работать не станет?
|
Rise, Как минимум, при проверке объектов с большим z-индексом, при полной непрозрачности альфа-канала самого верхнего из найденных слоёв, кидать rgb-данные в ячейку финальной картинки по данным координатам. А далее, через putImageData, принимать изображение и рисовать его.
|
Rise, но это если руками всё делать...
|
Rise, Объектом я назвал объект, который таковым является в моём коде.
Ясно, обидно...и нет. Тем интереснее. Спасибо за ответ. Просто сам искал, не нашёл, подумал, плохо искал. Всего хорошего. |
Валес,
для канвы можно указать область рисования (clip), рисовать будет только внутри этой области. Попробуй, может, это ускорит отрисовку. Возможно, канва не будет делать копирование картинки в те области, которые находятся за пределами clip. |
Цитата:
|
Цитата:
|
Цитата:
я о том, что если clip - квадратик 10 на 10, а на канву кидаем картинку 200 на 300, то по скорости это должно быть как если бы рисовали картинку 10 на 10.. |
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
Цитата:
|
Цитата:
Перекрытые регионы перерисовыватся не будут. Люди с зарплатой в 50к $ из крупнейщих IT корпораций в течении десятков лет оптимизируют рендер браузера и канваса в том числе (это про браузерными войны). И тут приходит автор топика и реально думает что у него на скриптовом языке в браузере получится лучше. 99% таких оптимизаций приводят к обратному эффекту. Если автор действительно хочет оптимизировать то ему нужно начать с отладчика и поиска узких мест. Оптимизация без причины - признак дурачины. |
Цитата:
А вот - как ты предложил - https://jsfiddle.net/ojxtsode/ |
Часовой пояс GMT +3, время: 05:07. |