
Сергей
25.06.2018
13:56:42

Ivan
26.06.2018
06:52:09
А как при frameless можно убрать скругление рамки в win 7? Его сразу при запуске нет, а если максимизировать и потом минимизировать обратно, появляется.

Oleh
26.06.2018
11:42:53
Есть сайт в нем есть редактирование картинки в реальном времени при помощи Js так вот подключилолся к нему через Webview, но время от времени оно немного подтормаживает, мб кто знает как мне оптимизировать работу с сайтом этим?

Google

Lev
26.06.2018
12:44:17
не использовать вебвью? сделать свой редактор картинок?
Оно так и будет подтормаживать ибо у тебя рендер через вебвью весьма затратная операция

Andrey
26.06.2018
12:48:22

Max
26.06.2018
13:38:09
@tonyganch Я помню что electron-vibrancy поддерживал регионы ограниченные view которые добавлялись к окну, то есть можно было сделать размытой только боковую панель, а все остальное оставить opaque. Когда все это интегрировалось в электрон, то по моему оставили только возможность выбирать тип vibrancy для всего окна целиком и как то ограничить его действие нельзя? Дело в том, что vibrancy довольно таки не дешевый эффект и если мне нужно сделать только часть окна то как то слишком расточительно выходит делать это для всего окна, а затем маскировать большую облать непрозрачным фоном

Kelin
26.06.2018
17:15:25
мне кажется, что при создании эффекта vibrancy всегда область всегда полностью размывается, а там уже заливается ненужное

Oleh
26.06.2018
17:45:54
если писать браузе на єлектрон, то как лучше вкладки такие как у хрома сделать?

Dika
26.06.2018
17:47:52

Oleh
26.06.2018
17:51:18
браузер на браузере…
растолкуй, мне нужно просто знать как организовать вкладки, ибо то что я написал, явно говнокод

Сергей
26.06.2018
18:01:33

Max
26.06.2018
18:39:14

Сергей
26.06.2018
18:39:48

Max
26.06.2018
18:39:55
да

Сергей
26.06.2018
18:39:58
лол

Google

Max
26.06.2018
18:42:14
MacBook Pro Late 2014 15". Как ни странно не устраивает. Все хорошо, если у тебя обычный UI на React, разницы никакой, но как только присутствует canvas заполняющий 80% окна, вот в нем отзывчивать падает в ~4 раза в сравнении если делать без vibrancy вообще
Потому что, когда включается vibrancy не только backdrop blur начинает работать, кстати который работает на CPU через vDSP/Accelerate framework, потому что для больших радиусов размытия проже использовать IIR а не FIR фильтр, который еще и несколько раз применяется, что бы сымулировать Gaussian blur. Не суть, все что нужно знать vibrancy нагружает CPU а не GPU на Mac-е
+ vibrancy требет еще и transparancy для окна - следовательно еще и fillrate падает

Сергей
26.06.2018
18:53:29

Max
26.06.2018
18:54:10
А зачем канвас?
Есть Direct Acyclic Graph который быстрее отрисовывть на канвасе а не на svg или DOM

Сергей
26.06.2018
18:54:48

Kelin
26.06.2018
18:55:04
че все так дрочат на vibrancy, говно же ведь

Сергей
26.06.2018
18:55:09

Max
26.06.2018
18:55:10

Сергей
26.06.2018
18:55:14

Kelin
26.06.2018
18:55:24
да в чем красиво, ну блюрится фон и блюрится, хз

Сергей
26.06.2018
18:55:40

Kelin
26.06.2018
18:55:56
эта мода уже несколько раз приходила и уходила

Сергей
26.06.2018
18:56:31
что еще
Модификация цветов, контраста, и ещё какой-то эффект, который позволяет белому тексту отображаться нормально, и черному тоже

Kelin
26.06.2018
18:56:54
и весь этот геморр, чтобы тупо картинка на фоне была
кек

Сергей
26.06.2018
18:57:09
Ну да

Max
26.06.2018
18:57:10
Пруфы
Вот, только для iOS:
https://github.com/KyoheiG3/DynamicBlurView

Google

Сергей
26.06.2018
18:57:18

Yung
26.06.2018
18:57:21

Max
26.06.2018
18:57:31
Да, представь себе на OSX так же

Kelin
26.06.2018
18:57:34
но я не вижу в этом красоты

Yung
26.06.2018
18:57:38
имеем что имеем, лол

Сергей
26.06.2018
18:57:43

Kelin
26.06.2018
18:57:43
это как челка у айфона

Max
26.06.2018
18:58:00

Сергей
26.06.2018
18:58:12

Max
26.06.2018
18:58:37
Вот: https://github.com/KyoheiG3/DynamicBlurView/blob/master/DynamicBlurView/CGImage%2BAccelerate.swift#L39

Сергей
26.06.2018
18:59:11

Max
26.06.2018
19:00:14
Блин, еще раз говорю, в Mac так же, я как то это дебажил на OSX. Там дергается Accelerate framework

Max
26.06.2018
19:01:07
На CPU это выходит дешевле для больших радиусов размтия. Перед этим изображение еще даунсэмплиться в 2-4 раза

Сергей
26.06.2018
19:02:17
Пока ссылку в официальную доку с подтверждением твоих слов, нет смысла говорить об этом

Kelin
26.06.2018
19:02:56
а если это нигде не написано

Сергей
26.06.2018
19:03:11
Но я считаю что бред

Kelin
26.06.2018
19:03:18
заебись

Сергей
26.06.2018
19:03:35
Пруфов нет — разговор ни о чем

Google

Kelin
26.06.2018
19:03:41
это как говорить, что здание по документам не существует, но оно есть = его все равно не существует
не находишь?

Сергей
26.06.2018
19:03:56
Но в нашем случае в сорцы посмотреть не можем
Значит разговор идёт о здании на закрытом острове

Kelin
26.06.2018
19:06:03
которое может там быть, но скрывается

Admin
ERROR: S client not available

Сергей
26.06.2018
19:06:29

Max
26.06.2018
19:07:47
Я не собираюсь вдаваться в детали и высылать скрины с трейсами вызовов, может сделаю это как время будет. Я задал конкретный вопрос, а вышло уже на 2 страницы флуда

Сергей
26.06.2018
19:09:08

Max
26.06.2018
19:11:19
Возможно у нас просто разные требования к производительности. Какие приложения? Они использовали сложные графы на канвасе? WebGL и svg не в счет. Первый форсирует переключение на дискретный GPU, а второй и так тормозит на сложных графах

Сергей
26.06.2018
19:11:37

Max
26.06.2018
19:12:02

Сергей
26.06.2018
19:12:51

Max
26.06.2018
19:14:27

Сергей
26.06.2018
19:15:18
С тормозами не спорю.

Max
26.06.2018
20:52:54

Google

Max
26.06.2018
20:55:01
Так же профайлил CoreImage и MetalDevice. У обоих вызывался лишь surface blit (операция копирования на GPU в back buffer) и все
Найти конкретно vImageBoxConvolve не удалось, но все указывает на то, что все операции не покидали cpu host
Почему используется CPU для размытия с большим радиусом (Core Image + vImage/vDSP), а не GPU хорошо продемострировано здесь:
http://www.sunsetlakesoftware.com/2013/10/21/optimizing-gaussian-blurs-mobile-gpu
Для больших радиусов размытия GPU становиться не эффективным
Я думаю что через какое то время Apple перепишет это на Metal Compute Shaders но пока видимо они не делают это из-за совместимости
А вот в Windows Aero используется GPU, но там значительно меньше радиус размытия (примерно 16-24px)

Сергей
26.06.2018
21:32:11
пойду почитывать эти методы
спасибо

Max
26.06.2018
21:38:43
Это методы преобразования color space и перестановки каналов (типа RGB -> BGR). То что они присутствуют на host cpu уровне хорошо доказывает, что буффер с изображением не отправляется на GPU, так как на GPU эти операции как раз таки очень эффективны
Еще одна причина почему размытие происходит на cpu - это довольно таки дорогая операция пересылки данных от GPU к CPU host и обратно, иногда это намного дороже, чем сделать те же операции на чисто CPU расспаралелив и векторизировав их через SSE

Сергей
26.06.2018
21:45:58
За объяснение большое спасибо!

Max
26.06.2018
21:47:33
Да не за что. Я просто довольно плотно когда то занимался image processing и DSP. Поэтому тема с ее проблемами довольно таки знакома)
Создал feature request для этого: https://github.com/electron/electron/issues/13460

Олег Иванович
27.06.2018
12:43:31
как в момент сборки приложения убрать из него DEV зависимости? где почитать?

Max
27.06.2018
13:59:36
Эмм, ты думаешь во время сборки электрон рекомпилиться из исходников?) Насколько я знаю во время сборки скачивается просто уже готовая сборка и то, если необходимо