IRC Logs for #zfx


2021-12-23

07:49:18 xq: moin moin
07:49:22 xq: efjam88 ist ja noch da! \o/
07:49:26 xq: hattest du noch erfolge?
07:59:50 IceMichael: moin
08:00:53 IceMichael: xq: sweet
08:00:56 IceMichael: zu beiden Punkten
08:03:20 xq: yep!
08:04:44 IceMichael: integration failing currently?
08:05:16 xq: ja
08:05:19 xq: D:
08:05:25 xq: high-speed zig coding
08:06:10 IceMichael: hmmm... ist dein renderer nicht auch schneller oder sparst du dir das auf?
08:06:16 IceMichael: weil svg so komplex ist, dass es suckt?
08:06:26 xq: wie meinst du das?
08:06:37 xq: mein renderer ist ne katastrophe was performance angeht :D
08:06:52 IceMichael: ach so. Ja gut, dann kommt das mit hardware aid later
08:07:02 IceMichael: weil meine desktop app ist ja gerade lahm wegen svg
08:07:38 IceMichael: ich wuerd also im Zweifel lieber alles zu tvg transpilen und nur das nutzen
08:07:56 IceMichael: und wenn man gpu-unterstuetzt tvgs rendern wuerde, waere es ja zumindest in Qt definitiv schneller
08:08:03 xq: jo
08:08:06 IceMichael: man muss sich nur mal den callstack anschauen beim rendern von svgs, allein der......
08:08:15 xq: Qt kannste aber ggf. auch einfach QtPainter nehmen
08:08:17 xq: zum rendern
08:08:37 xq: das wird sich jetzt dann alles zeigen
08:09:30 IceMichael: xq: zum tvg-rendern? na ja, pixel fuer pixel wird schon langsam sein damit
08:09:48 xq: warum pixel für pixel?
08:11:14 IceMichael: also Rechtecke hast du damals ja mit zwei Schleifen gemacht
08:11:21 IceMichael: oder wie wuerdst das in QtPainter regeln?
08:11:30 xq: https://doc.qt.io/qt-5/qpainter.html
08:11:33 xq: einfach mal die api angucken :D
08:11:41 xq: QPainter kann quasi schon 90% der draw commands
08:11:56 IceMichael: ich kenn QPainter ganz gut, aber wenn du damit nen Gradienten malst, bist du ziemlich lahm unterwegs
08:11:57 xq: void drawRects(const QVector &rectangles)
08:11:58 xq: zonk
08:12:04 xq: fertig ist draw_rectangles kommando
08:12:06 IceMichael: gut, fuer einfarbige Rechtecke, klar
08:12:25 IceMichael: ich hab bei mir wegen der Gradienten die meisten gecached in pixmaps
08:12:56 xq: ah
08:12:58 xq: ja gut
08:14:08 IceMichael: hm, aber wsl ist mein ganzer use case dann auch wieder sinnlos, weil die beste Loesung waere einfach selbst alle SVGs beim Start einmal zu rendern und zu cachen
08:14:28 xq: wenn sich die größe nicht ändert, ist das sowieso nen sinnvoller ansatz
08:14:48 IceMichael: na ja, in der Regel nicht ausser jemand spielt an seinen dpi settings waehrend App-Nutzung
08:15:03 xq: jo
08:15:03 IceMichael: bloeder ist, dass man die pixelzahl vorher schlecht vorhersagen kann
08:15:20 xq: warum, ist doch kein problem /o\
08:15:35 xq: du musst nen eigenen iconprovider machen
08:16:18 IceMichael: und wie will man den verbinden? ein Button sagt, wenn er ein Bild will, nicht, welche Groesse er fordert
08:16:26 IceMichael: er will das Bild haben und macht es entsprechend gross oder klein
08:16:55 IceMichael: Qts sizeHints sind kaputt. Genau so wie devicePixelRatio :/
08:17:28 xq: gr
08:17:28 IceMichael: und bei einem QPushButton kann man auch die margins und paddings nicht vorhersagen. Ich kenne alle Qt-Eigenschaften dazu, wuerde ich mal kuehn behaupten, die sind aber unvollstaendig
08:17:32 xq: alles kaka
08:17:35 IceMichael: genau
08:17:46 xq: ich muss mir das aber mal genauer angucken
08:17:49 IceMichael: daher hasse ich Qt auch und finde Electron und co. mittlerweile geiler, die auf HTML/CSS/JS setzen
08:17:53 IceMichael: da ist alles klar spezifiziert
08:17:54 xq: für mich wärs ja auch interessant, TinyVG in Qt zu nutzen
08:18:49 IceMichael: ja, definitiv
08:19:18 IceMichael: also Toolbuttons, Menubuttons, normale Buttons waeren fuer svgs in Desktop-Apps bei mir gerade wirklich oft die Hauptkunden von TVGs :) ist leider nicht soo viel fun
08:19:29 IceMichael: ich hab auch Buttons mal auf flat gestellt in der Hoffnung, dass setStyleSheet dann mehr Kontrolle hat
08:19:38 IceMichael: aber auch das failte relativ hart. Es bleiben ein paar paddings
08:19:54 IceMichael: man koennte hoechstens sagen, man baut einen komplett eigenen QWidget-based Button
08:24:46 xq: IceMichael: ja, du hast halt genau meinen use case
08:51:04 IceMichael: hm ja. Aber auch mit TVGs waere es ja sauberer alles zu cachen
08:51:14 IceMichael: also performanter
08:51:28 IceMichael: d.h. am Ende ist mir SVG vs TVG wsl egal?
08:51:50 xq: jo
08:51:55 xq: Tvg ist kleiner
08:52:12 IceMichael: ausser eben man kann TVG ohne cachen rendern und es ist trotzdem sauschnell, dann koennte ich mir den ganzen Kram sparen
08:52:45 IceMichael: und theoretisch ist dein Format ja wesentlich schneller zu rendern weil weniger komplex
08:53:03 xq: jo
08:53:08 xq: für kleinen kram isses auch schon zügig
08:53:12 IceMichael: aber das ist dann halt vermutlich richtig viel Arbeit, ich haette eh kA, wie man da rangeht
08:53:14 xq: aber ich hab noch keinen optimierten renderer
08:53:21 xq: das wird halt mal noch zeit
08:53:53 IceMichael: hm... also Qt-SVG vs. QPainter-impl von TVG waere durchaus ein spannender Benchmark, ueberleg ich gerade
08:54:25 IceMichael: Qt-SVG ist wirklich so hart saulahm. Irgdein draw-Call ist rekursiv mit 20-facher Stacktiefe oder so, hab ich beim profilen mal gesehen
08:55:06 IceMichael: und ehrlicherweise sind Gradienten nicht gerade in (ich benutze die ja nicht fuer meine icons, sondern fuer meine Poker-Matrix)
08:55:13 IceMichael: man will ja gerade oft eigentlich flat design
08:59:28 IceMichael: aber gut, ist ins blaue geraten, wsl waere ein netter start erstmal svg-benchmarks in qt zu researchen
09:00:26 xq: wenn du willst, kann ich mir deine icons ja mal angucken und schauen, wie gut das mit TinyVG geht
09:06:47 IceMichael: sollten grossteils sehr einfach sein, moment
09:07:22 xq: ich bin jetzt erst mal afk bis nachm mittag
09:07:28 xq: einkaufen und dann noch besuch von nem kollegen
09:07:34 IceMichael: alles klar, dann wann anders
09:07:38 IceMichael: hf
09:07:57 xq: aber teste das gerne
09:08:03 xq: brauch ja auch nen schnelleren renderer *grin*
10:41:04 Magister joined the channel
11:54:55 IceMichael: xq: uebrigens, falls du mal nen "echten" mac zum testen brauchst, kann ich scaleway empfehlen
11:54:57 IceMichael: franz anbieter
11:55:05 IceMichael: apple m1 silicon fuer 2,40 EUR pro Tag
11:55:18 IceMichael: gibt nichts Guenstigeres, was ich kennen wuerde
11:55:36 IceMichael: ich habe s noch nicht getestet, aber macht erstmal guten Eindruck
11:55:47 IceMichael: gibt auch online Artikel, wie man den fuer runner nutzt, wird also schon klappen
12:27:51 Schrompf joined the channel
14:03:21 Magister joined the channel
14:21:33 Magister joined the channel
14:47:57 xq: wie greife ich darauf zu?
14:59:00 IceMichael: xq: ueber VNC
14:59:06 IceMichael: wie geht VNC ueber win, mal googlen mom
14:59:29 IceMichael: ja, vnc viewer oder so zB
14:59:35 IceMichael: gibt aber eh auch ssh
14:59:49 IceMichael: und bei macos kann man im Gegensatz zu Windows darueber ja auch alles machen (jaa, geht bei Win auch, aber nicht so geil)
14:59:59 xq: win? :D
15:00:07 xq: icch bin linux core user
15:00:09 xq: und ich kenne VNC
15:00:13 IceMichael: ah gut
15:00:15 xq: aber man bekommt also nen desktop system
15:00:16 xq: sehr nice
15:00:17 IceMichael: na dann easy peasy
15:00:23 IceMichael: ja, scheint so
15:01:00 IceMichael: ja, ich find das Angebot auch echt super. Man braucht ja schon so was fuer automatisierte UI-Tests
15:01:07 IceMichael: das klappt lustigerweise aber auch mit github mac runnern
15:01:25 xq: heh
15:10:39 xq: https://github.com/TinyVG/sdk/pull/5
15:10:42 xq: OH EMM GEH
17:09:11 xq: IceMichael: ich hab grade 25 minuten gewartet, bis ein bild gerendert war LOL