POC LED Chaser Engine (Smaltalk Niveau)

OP #7667206
Lesenswert?

Thread-Intention

Dieser Thread soll erstmal eher Smalltalk-Niveau sein, ohne Code. Eher eine Konzept-Betrachtung und ein Try-Of-Concept.

Zu einem guten Teil auch für mich als Gehirnjogging gedacht, habe ich nicht nach existierendem gesucht. Bin jetzt aber interessiert, wenn jemand eine Bibliothek in der Richtung kennt.

Motivation Aus der Verbindung von meinem sekundär RC-Hobby und Faible für Licht, habe ich während Corona eine dieser Karren mit jeder Menge WS2812 ausgestattet. https://www.youtube.com/watch?v=0LKW1T64hFE

Grobe Konzept-Skizze Weil ich auch Lauflichteffekt wie den Night-Rider oder ähnliche haben wollte (Betonung liegt auf "ähnliche"), wollte ich nicht einfach ein rotes Pendel-Licht hard coden, sondern ein Konzept, welches den Effekt abstrahiert und auch andere Erscheinungsformen zulässt. Z.B. sind ja diese Teardrops sehr ähnlich zum Night-Rider Effekt.

Grundsätzlich wollte ich mir eine "Chaser-Effekt-Engine" ausdenken, wo a) Die Effektform (also z.B. Night-Rider oder Teardrop) von außen vorgebbar ist b) es sollen mehrere Effekte-Instanzen auf einem LED-Segment gleichzeitig laufen können c) ein Effekt soll auf LED-Segmenten mit unterschiedlich vielen LEDs gleich schnell laufen können

Meine Lösung ist, einen Kernel zu definieren - die Namensgebung ist in Anlehnung an Filter-Kernel, als eine Abfolge von Werten. Die Denkweise ist "den Kernel über das Segment zu schieben". Die Position des Kernels ist eine relative in 0 bis 1000. In einem "Kernel-Mover", welcher eine Referenz auf den Kernel und das Zielsegment bekommt, wird mit der Position die Zielpixel auf dem Segment berechnet.

Dazu kommen Überlegungen, ob z.B. das LED-Segment ein Kreis ist und immer alle Kernel-Pixel sichtbar sein sollen, also ein implementierter Wrap-Around, oder ob Kernel-Pixel deren Position außerhalb des Segmentes liegen, unsichtbar sein sollen.

Das ist ein erstes Try-Of-Concept mit Wrap-Around und ohne unsichtbare Pixel. https://www.youtube.com/shorts/zyarw-Vtvl4

#7667243
Lesenswert?

Jasson J. schrieb:

Dieser Thread soll erstmal eher Smalltalk-Niveau sein, ohne Code.

Und gepostet hast du in:

Forum: Projekte & Code

Da steht fett oben drüber:

Hier könnt ihr Projekte, Schaltungen oder Codeschnipsel vorstellen. Projekte bitte nur mit Code oder Schaltplan posten (falls ihr nur Fotos vorstellen möchtet, bitte in "Zeigt her eure Kunstwerke"). Bitte hier keine Fragen posten.

Mit Leuten die sich nichtmal an die allereinfachsten Spielregeln halten möchte ich nicht spielen. Geh raus aus meinem Sandkasten, du benutzt ihn falsch.

OP #7667289
Lesenswert?

Mir ist nicht klar, was das dauernde Genöle soll.

Es gibt halt kein Unterforum für Konzepte oder teilfertige Projekte. Es zwingt einen Niemand, hier rein zu schauen - ich habe in der Überschrift beschrieben, dass es wohl nicht all zu tief gehen wird. Außer kleinkarierten Hobby-Anzeigenmeistern tue ich niemandem weh.

Was zugegeben quasi immer gut funktioniert - zumindest in PC-Programmierung - eine konkrete Frage stellen, dann gibt es auch ernsthaft Leute, die konstruktiv mitreden.

Ich würde mir wirklich wünschen, man könnte die Sache mit weniger Engstirnigkeit und dafür mehr Freude / Spaß sehen.

#7667294
Lesenswert?

Jasson J. schrieb:

Mir ist nicht klar, was das dauernde Genöle soll.

Und mir ist nicht klar was dein erster Post da oben soll. Da ist keine einzige Frage drinnen.

Du beschreibst Dinge aber was erwartest du von den Lesern? Mach doch dein Projekt so wie du es möchtest oder stell Fragen (im entsprechenden Unterforum).

Wenn das dann fertig ist, dann kannst du es hier samt Code vorstellen.

So, zu deinem Thema: Ja, das mit den Kerneln kann man so machen. Kann man aber auch anders machen, z. B. mit einer winkelabhängigen Funktion direkt berechnen. Man kann auch einen Wraparound machen oder eben nicht. Das sind Designentscheidungen die du als "Entwickler" treffen musst.

#7667708
Lesenswert?

Jasson J. schrieb:

wird mit der Position die Zielpixel auf dem Segment berechnet.

Eine zu beantwortende Frage wäre, was genau passieren soll, wenn sich zwei Effekte auf einem Pixel überlagern. Hat einer Vorrang? Mischen sich die Farben? Und wenn sie sich mischen, wie genau? Porter-Duff?

Eine zweite Frage wäre, ob du Subpixelrendering mit anschließender Zusammenfassung machen möchtest.

LG, Sebastian

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren