IRC Logs for #zfx


2021-12-15

06:27:53 Magister joined the channel
07:58:52 xq: moin
08:19:57 Indiana: moin
08:47:20 xq: haaa!
08:54:07 xq: https://mq32.de/public/b7e69fa8e46c2c6e4e1297cbee5be1291ed167f2.png
08:54:11 xq: einfach mal TinyVG im Browser nutzen
09:30:14 IceMichael: xq, wie das im Browser?
09:30:17 IceMichael: und was ist genious about it, -vv
09:30:34 xq: habe nen wasm-polyfill gelötet
09:30:40 xq: der kann TVG zu SVG rendern
09:30:48 xq: das ganze mit ein bisschen JS-Gluecode
09:31:01 xq: und schwupp tut das hier:
09:54:26 IceMichael: das klingt nice
09:57:16 xq: https://tinyvg.tech/polyfill/index.htm
09:57:17 xq: check it out
10:06:33 xq: IceMichael: https://mq32.de/public/4251f7ffc3c21d321ad8fac4c52c32d6d4032e37.png
10:06:39 xq: ich glaub ich hab die Prüfung bestanden
10:08:02 IceMichael: ja, sehr nice
10:08:23 IceMichael: das Ergebnis liegt dann als Bild direkt auf der Webseite, also caching usw. wäre dann noch so ein Ding?
10:12:08 xq: inwiefern? caching übernimmt der browser für mich
10:12:20 xq: das ganze ist einfach wie ne png/svg-Datei zu verwenden :)
10:22:05 IceMichael: xq: also ich seh da src="...", also ist das erzeugte Bild im String und damit Quellcode und wird damit nicht separat gecached, falls du auf ner andren Seite dasselbe tvg nutzt?
10:22:27 xq: exakt
10:22:38 xq: was heißt gecached?
10:22:45 xq: die TVG-Datei wird gecached
10:23:12 IceMichael: eigentlich wuerde man ja den output cachen wollen
10:23:19 xq: wieso?
10:23:19 IceMichael: sonst laeuft ja dein wasm auf jeder Seite fuer alle Bilder erneut
10:23:24 xq: ja?
10:23:29 xq: das kostet literally keine zeit
10:23:35 xq: wir sprechen von µs
10:23:47 IceMichael: einstellig oder..?
10:23:56 xq: kein plan, wie man das misst
10:23:58 xq: ich guck mal
10:23:58 IceMichael: bzw pro bild oder fuer mehrere? also falls es mal viele werden, mein ich
10:24:09 IceMichael: hm, sollte eh jeder browser koennen
10:26:32 xq: pro bild
10:26:38 xq: 1,5
10:27:08 xq: für das dicke bild
10:27:13 xq: und 0.5 für das kleine
10:29:47 xq: IceMichael: https://tinyvg.tech/
10:29:58 xq: kannst du mir mal deine eindrücke der seite schildern
10:29:59 xq: was fehlt dir?
10:30:04 xq: was ist gut? was ist schlecht?
10:32:59 IceMichael: ok, das ist echt nix :) aber laeuft auf client eh? aber vermutlich hat eh jedes device genug cpu dafuer
10:33:11 IceMichael: oder kann das von browser abhaengen, ob es effizient ist wasm hm...
10:33:17 IceMichael: ist ja schon C++ was ausgefuehrt wird?
10:33:20 IceMichael: mal seite viewen
10:34:35 IceMichael: ich wuerd wsl noch staerker rausstellen, dass die Einfachheit auch die Fehleranfaelligkeit reduziert. Du kannst zB dein Beispiel bringen, dass eine SVG von Qt ganz anders dargestellt wird als von Telegram Renderer oder Inkscape. Das macht
10:34:38 IceMichael: es noch geiler
10:34:42 IceMichael: die Demo ist aber auch schon sehr nice obv
10:35:20 IceMichael: hm,w as ist macOS aarch64? man kennt ja hauptsaechlich intel und m1
10:36:28 IceMichael: sonst vll noch ein super-quick guide, wie man jetzt vorgeht, wenn man seine svgs durch tvgs ersetzen will? weiss nicht, obs in docs zum download drin ist. Ich downloade ungern so was, ich will docs immer im browser sehen :D ist dein 3. link, aber steht unter downloads, daher... aber das bin wsl nur ich
10:37:42 xq: ja, läuft aufm client. da ist ja auch nicht viel zu tun
10:38:32 xq: m1 ist aarch64
10:38:58 xq: downloads: ne pdf ist ne pdf
10:39:11 xq: ob du die jetzt im browser liest oder woanders ist mir scheiß egal ;)
10:39:18 xq: das ist hier definitiv ein you-problem ^^
10:39:33 xq: ich kann auch "Downloads" durch "Resources" ersetzen *shrug*
10:40:53 xq: wo würdest du die fehleranfälligkeit hinpacken?
10:42:28 xq: aktuell "TinyVG im Projekt nutzen" ist noch nicht so weit
10:42:32 xq: das kommt, wenn die Spezifikation steht
10:42:41 xq: dann mach ich ne native library
10:43:12 xq: die hustet dann alle relevanten formate raus (aka: draw lists und raw buffer)
10:48:09 IceMichael: hm, woher kommt aarch64 als begriff? hab das noch nie irgendwo so gelesen
10:48:21 IceMichael: apple silicon, M1 sind so die ueblichen woerter
10:48:23 IceMichael: anyways
10:48:37 xq: apple silicon ist nen marketing begriff
10:48:43 IceMichael: na ja, er laedt pdf bei mir runter, nicht im browser, dann les ich es nicht
10:48:46 IceMichael: aber ja, ist me :D
10:48:46 xq: aarch64 ist der offizielle begriff für die CPU-Architektur
10:48:54 xq: das ist definitiv ein you-problem
10:49:00 xq: konfigurier deinen browser besser
10:49:12 xq: bei mir öffnet er es im browser
10:49:15 IceMichael: normalerweise zeigt er pdfs im browser an
10:49:18 xq: das ist ne user setting, was du möchtest
10:49:27 IceMichael: jo, safari spinnt da
10:49:32 xq: ich mach keine spezielle content disposition
10:50:27 xq: so
10:50:29 xq: zahnarzt
10:50:31 xq: bis später
10:50:39 IceMichael: good luck!
10:54:01 Schrompf joined the channel
10:55:24 IceMichael: xq: hm, also aarch64 irritiert mich immer noch. In dem Artikel dazu bei wiki findet man keinen Link zu Apple M1. Und auf der M1-Seite steht nur ARM-based processor aber nirgendwo aarch64. Und auf den M1s, auf denen ich unterwegs war, zeigt der sys-output auch kein aarch64 irgendwo... ich glaube, das speaking word ist "Apple processor" oder so...
10:55:42 IceMichael: also kann sein, dass es technisch stimmt, aber unter aarch64 wird man eher nur ratend zu M1 kommen, wuerde ich denken
10:55:45 IceMichael: mein Schrompf
10:55:49 IceMichael: aeh, moin
10:56:13 Schrompf: IceMeinchael!
10:56:42 IceMichael: gut geloest, gut geloest!
12:20:58 joeydee joined the channel
12:21:03 joeydee: moin
12:39:19 xq: moin IceMichael
12:39:22 xq: *Schrompf, joeydee
12:40:04 xq: und natürlich gibts aufm wiki bei aarch64 keine liste von prozessoren
12:40:08 xq: weißt du, wie viele das wären? :D
12:42:02 xq: zudem wäre es ein stilbruch, da jetzt ne CPU-Bezeichnung hinzuschreiben und bei allen anderen nicht
14:16:17 Schrompf: boah, recruiter sind anstrengend
14:16:26 Schrompf: rekrutierer und kopfjäger
14:16:39 Schrompf: "Wie kann ich Sie heute oder morgen erreichen?"
14:16:59 Schrompf: und die Frau fragt ernsthaft noch, was ich denn meine, wenn ich mit "bitte keine solche Eile" reagiere
14:20:13 xq: ohje
14:21:08 Schrompf: das steht sicher in irgendnem handbuch zum recruiting, praktisch jede nachricht auf Xing schließt so
14:21:36 Schrompf: und es sorgt jedes mal dafür, dass ich instant in ner "SO NICH; JUNGER MANN!!!"-Haltung bin
14:24:06 joeydee: Die typische Bewerbung schließt ja auch mit "Sie können mich jederzeit erreichen unter ..." - wenn man für Gespräch/Zusage nicht bedingungslos erreichbar ist, kommt das ja quasi einer Absage gleich.
14:26:11 Schrompf: ne, auch das ist absurd. es gibt email
14:30:29 joeydee: Ja, diese Formulierungen sind so absurd wie die Floskeln in Beurteilungen, oder dass eine Unmutsäußerung "Ich hab kein Bock mehr hier!" vom AG als Kündigung gedeutet werden darf.
14:30:54 joeydee: Mitspielen oder nicht. Wenn das Gegenüber auch nicht mitspielt, ist ja ok.
15:02:30 Schrompf: ich bin da halt in der luxuriösen position, nicht mitspielen zu müssen
15:03:55 joeydee: Klar, gehört auch zum Spiel. War ja nur ein Gedanke dazu, warum das oft so formuliert wird.
15:06:43 Schrompf: das könnte wirklich sein. die haben sich nie was dabei gedacht, und ich bin der erste, der pissig reagiert
15:07:10 Schrompf: "professionell pissig", wohlgemerkt. stets höflich und nie vorwurfsvoll
15:11:01 Schrompf: verpackt man seine Geometrie zum schnellen cullen eigentlich AABBs oder Spheres
15:24:28 joeydee: Ich weiß nicht mehr wie der Vergleich bei Strahlen ist, aber bei "Abstand" sind Spheretests zwar einfacher, aber umschließen die Geo i.d.R. nicht so gut. Ist also immer ein Abwägen, es gibt kein Rezept.
15:25:32 joeydee: Es gibt auch Frustum Culling mit Frustum-Sphere z.B., aber je nach Frustum kann der tote Bereich doch ziemlich groß werden. Aber immerhin kleiner als "alles".
15:27:24 Schrompf: Hm
15:27:42 Schrompf: stimmt schon. wenn ich mir die standard-egoperspektive-szene vorstelle
15:27:51 Schrompf: dann ist die hälfte des bildschirms erstmal der boden
15:28:34 Schrompf: und da größere und kleinere teile mit kugeln zu umfassen sorgt dafür, dass du quasi in jeden subtree ein paar stufen absteigst, bevor du rauskriegst, dass du in dem subtree gar nix zu suchen hast
15:31:09 joeydee: Wenn du andererseits bei sowas wie Cone-Tracing z.B. viel gewinnst, dass du Cone vs. Sphere auf ein 2D-Problem Kreis vs. Kreis reduzieren kannst, wogegen Cone vs. Box komplex werden würde, dann ...
15:31:28 joeydee: Also kommt auch immer darauf an, wogegen du die Struktur testen möchtest
15:31:43 Schrompf: ja, ich will cones trazieren
15:32:13 Schrompf: und da loveeyte ich eher mit spheres
15:33:40 joeydee: Ich würde sowas wohl auch mit Spheres ausprobieren. Einfach damit ich überhaupt mal was optimieren und testen kann. Und erst wenn die Tests sowieso beliebig komplex werden und der Totbereich entsprechend bremst, andere Varianten überlegen.
15:33:45 IceMichael: Schrompf: ja, ich find das auch immer frech von den Recruitern. Vll erstmal fragen, ob ich Interesse habe, bevor direkt der Call kommt
15:33:58 IceMichael: manchmal gibt's auch welche, die gar nicht erst sagen, was sie wollen, bis sich später rausstellt, dass die recruiter sind
15:35:15 xq: Schrompf: ganz klassischer BSP kommt nicht in frage?
15:36:11 joeydee: So, bald Feierabend, Hunger, Couch-Schwere.
15:36:17 IceMichael: hm, trink ich den 2 tage alten Kaffee noch, der neben mir steht, oder nicht
15:38:21 joeydee: Wenn du ein paar freie Tage mit Magen-Darm willst, trink ihn
15:42:19 Schrompf: xq: BSP? hab ich noch nie gemacht, aber hab mir zusammen gereimt, dass du einfach wahllos ebenen in den raum einziehst und damit jeden raum halbierst
15:43:59 IceMichael: joeydee: hmmm, meinst nach zwei Tagen passiert das schon?
15:44:07 IceMichael: weil ist halt Kaffee, kostet nix, steht da, kein Aufwand etc.
15:44:54 Schrompf: kaffee ist sauer und durchgekocht, da passiert erstmal nix. außer du hast schon dran genippt, und selbst dann wird deine mundflora erstmal nen schweren stand in schwarzem kaffee haben
15:45:08 Schrompf: aber sobald milch und/oder zucker dran ist, würde ich mich schon an nächsten tag nicht mehr trauen
15:45:57 Schrompf: ich mach erstmal bounding spheres, weil ich da alle mathematik fertig dahabe
15:47:00 Schrompf: AABBs oder BSP oder Uno-Grenzfeststellungskommission ist ja dann nur ne potentielle Optimierung
15:52:44 joeydee: Ja, ja, und ja.
15:57:38 xq: Schrompf: jo, BSPs sind quasi einfach arbiträre raumteilungen, aber wenn man das smart macht, ist halt die prüfung "in halfspace" nur dot product < radius für spheres
15:57:59 IceMichael: Schrompf: danke, trink ich dann
15:58:11 IceMichael: schmeckt auch noch gut. Bisschen pappiger als frisch, aber ok
15:58:59 IceMichael: wieso nutzt man eigentlich ueberhaupt so AABB oder die andren Boxen? Ist doch mit Kollisions schwieriger und man kann ja eh die Bounding Spheres kaskadieren bis zum polygon-level, wenn man will
16:00:07 Schrompf: das ist ein Binary Volume Hierarchy Tree, soweit ich das verstanden habe
16:00:43 Schrompf: du hast ein gesamt-bounding-irgendwas und dann 1 bis x subtrees mit ihrem jeweiligen etwas kleineren bounding volume
16:01:15 Schrompf: und ob AABB oder Sphere oder (gott bewahre) oriented bounding boxes (OBB) ist dann ne abwägungssache
16:01:49 Schrompf: AABBs sind einfacher zu konstruieren und upzudaten - einfach min und max per element, und manche architekturen haben ne kombinierte min-max-operation
16:03:11 Schrompf: spheres sind minimal langsamer in der konstruktion und bounden halt potentiell ne menge luft in üblichen echt-welt-szenarien, wo man halt gerne mal große flache flächen mit nur leichtem senkrechten gewackel obendrauf hat
16:03:30 Schrompf: aber dafür ist (nach meinem verständnis) der ray-test absurd sinnlos hackeschnell
16:03:47 Schrompf: eigentlich nur ein glorified dot
16:04:39 Schrompf: test gegen ne bounding box geht nach meinem wissen nicht ohne division, und die kriegste selbst heute noch nicht vektorisiert, das ist auch heute noch ne skalare operation mit x takten latenz
16:05:25 xq: exakt dies
16:14:35 joeydee: OOBs sind doch auch nur AABBs mit Matrix, wo du jede Abfrage durch die Inverse schiebst.
16:15:11 Schrompf: also extra anstrengend für ein paar exotische corner cases
16:17:28 joeydee: "man kann ja eh die Bounding Spheres kaskadieren bis zum polygon-level," - wenn man kleine Polygone hat, nützt es was. Wenn man große hat, bleibt die letzte Sphere quasi fast so groß wie das Objekt selbst. Und 2 Bounding-Spheres zusammenfassen zu einer für dynamische Hierarchie kann den Totraum nochmal unnötig vergrößern.
16:25:03 xq: joeydee: hast du den hier schon gesehen? https://tinyvg.tech/img/tiger.png
16:25:51 joeydee: Sauber in TVG konvertiert, möchtest du damit sagen, nehme ich an?
16:26:38 xq: yep *grinst stolz*
16:34:59 Schrompf: das ist ne leistung, soweit ich das verstanden habe
16:35:53 xq: der Tiger ist nutzt quasi alle path features
17:43:59 Magister joined the channel
18:33:48 IceMichael: puh, wieder mal den ganzen Leads lang und breit erklært, wieso wir unsere Teams jetzt so haben, welche Vorteile das hat und noch mehr Kram... wsl setz ich mich damit wieder nur selbst in die Nesseln :/
18:34:32 IceMichael: mal sehen, ich koennte zwar irgendwann auch abhauen, aber gefuehlt trage ich gerade mit dazu bei die Firma zu zerstoeren oder zu Ruhm und Ehre zu fuehren
18:34:42 IceMichael: d.h. wenn ich gehe, dann als Zerstoerer, nicht so geil...
18:56:18 Schrompf: wenn du zerstörer wärst und dann gehst, dann leistest du einen beitrag
18:56:28 Schrompf: ich komm später zum stammtisch, hab noch flockendienst
18:56:29 Schrompf: bis denne
19:02:22 xq: ich bin schon mal online
19:26:50 Schrompf joined the channel
19:43:56 IceMichael: Schrompf: aber keinen konstruktiven beitrag
19:44:24 Schrompf: jo
19:57:35 IceMichael: wo wind in UNIX Makefiles eigentlich include directories definiert?\
19:57:41 IceMichael: also search dirs
19:57:47 xq: gar nicht
19:58:08 xq: makefiles sind sprachagnostisch und kennen sowas wie "include dirs" nicht
19:58:41 xq: da musst du das konkrete makefile lesen
19:59:14 IceMichael: ahso
20:02:35 IceMichael: hm, und wenn ich dann make eingebe, frag ich mich aber dennoch, was macht er dann hm
20:02:41 xq: die erste rule
20:02:53 xq: diese ist die erste in der datei definierte regel
20:04:12 IceMichael: ah mal schauen
20:04:27 IceMichael: weil das doofe script installiert qt6.2 und das nutzt er beim builden statt 5.12.2 :/
20:04:33 IceMichael: aber automoc nutzt 5.12.2, geht also nich
20:37:03 IceMichael: qt6 wird automatisch durch ne dep installiert, aber ich hab qt jetzt deinstalliert, auch wenn die dep dadurch evtl nicht geht
20:37:07 IceMichael: aber die scheiss dep will eh keiner
20:37:12 IceMichael: und jetzt gehts, die schweine
20:37:37 Schrompf: es gibt qt6?
20:45:49 xq: schon lange
20:50:58 IceMichael: wird aber eh nicht besser damit
20:51:04 IceMichael: glaub, licensing wurd noch erschwert?
20:52:38 IceMichael: hm, ne, oder auch nich
20:53:20 Schrompf: nachtus nachtus
20:55:27 IceMichael: ok nutz jet zmcake, sgut eiglich
20:55:29 IceMichael: gn8