Scratch-render: Helligkeit + Farbeffekt funktioniert nicht wie Scratch 2

Erstellt am 1. Juni 2017  ·  8Kommentare  ·  Quelle: LLK/scratch-render

Erwartetes Verhalten

_Bitte beschreiben Sie, was passieren soll_
Scratch 2, wenn Sie den Helligkeitseffekt auf 100 und den Farbeffekt auf 50 einstellen, erhalten Sie dies
image

Tatsächliches Verhalten

_Beschreiben Sie, was tatsächlich passiert_

In Scratch 3 bekommst du ganz weiß (ich habe einen Hintergrund hinzugefügt, damit du ihn sehen kannst).
image


Dieser Fehler ist eine Vereinfachung eines Problems, das ich beim Öffnen dieses Projekts in Scratch 3 hatte https://scratch.mit.edu/projects/1270935/
Es sollte so aussehen
image

Und sah stattdessen so aus
image


cc @cwillisf

bug compatibility needs-triage

Hilfreichster Kommentar

Projekte verwenden meistens den Helligkeitseffekt für den Übergang zu und von Weiß und Schwarz, daher wäre es meiner Meinung nach am sinnvollsten, den 2D-Renderer von Scratch 2 anzupassen. und der Fehler LLK/scratch-flash#570 wurde erstellt, weil der 3D-Renderer "falsch" war: https://scratch.mit.edu/discuss/topic/73118/

Alle 8 Kommentare

Ich sehe immer noch etwas Seltsames bei Helligkeit, aber es unterscheidet sich ein wenig von dem, was oben aufgeführt ist. Es sieht so aus, als ob das Projekt 1270935 ordnungsgemäß funktioniert. Auch Helligkeiten zwischen -100 und 0 verhalten sich erwartungsgemäß.

Bei Helligkeiten zwischen 0 und 100 sieht es so aus, als ob es heller wird, aber nicht ganz weiß wie in 2.0.

Hier ist es in 2.0:
brightnesstest2 0

Und hier ist es in 3.0:
brightnesstest3 0

Ich habe dieses Projekt verwendet: https://scratch.mit.edu/projects/276912470/ , um dies zu testen.

/cc @kchadha @ktbee @cwillisf

Ich habe etwas Seltsames gefunden. Wenn Sie in Scratch 2 nur den Helligkeitseffekt für ein Sprite verwenden, sieht es so aus (0 bis 100)
Kratzer 2:
screen shot 2019-01-09 at 22 32 37

Wenn Sie jedoch den Farbeffekt auch auf ein Sprite anwenden, ändern sich alle Sprites wie folgt:
Auch Kratzer 2:
screen shot 2019-01-09 at 22 32 14

Und so sieht der Helligkeitseffekt aktuell in Scratch 3.0 aus
Kratzer 3:
screen shot 2019-01-09 at 22 29 56

@cwillisf als der Farbeffekt das letzte Mal kaputt ging, als Sie sagten, es habe etwas mit der Rendering-Engine zu tun?

Habe einen relevanten Thread mit nützlichen Codelinks gefunden: https://github.com/LLK/scratch-flash/issues/570

Beachten Sie jedoch, dass HSV vs. HSL hier nicht das Problem ist. Hier ist 1) der aktuelle Helligkeitseffekt, 2) der Helligkeitseffekt mit HSL, 3) der Helligkeitseffekt in Scratch 2. Weder 1 noch 2 passen zu 3.
screen shot 2019-01-09 at 22 30 45

Vielleicht relevant: https://scratch.mit.edu/projects/269088736/#comments -105915881

TL;DR ein positiver Helligkeitseffekt scheint keinen Einfluss auf ein Kostüm zu haben, dessen Füllfarben bereits 100% Helligkeit aufweisen (dh die Schieberegler zeigen Helligkeit = 100). Ich denke, der Helligkeitseffekt in 2.0 ist eher "mit Weiß (oder Schwarz) mischen" als "Helligkeitskomponente anpassen"? Tests habe ich aber nicht gemacht.

Ich habe etwas seltsames gefunden

Guter Fund, @fsih! Wenn Sie dem Projekt einen Farbeffekt hinzufügen, wechselt Scratch 2.0 in den 3D-Rendering-Modus. Dies erklärt, warum der Unterschied angezeigt wird, wenn dies der Fall ist. Es sieht so aus, als ob die 2D- und 3D-Renderer in Scratch 2.0 für den Helligkeitseffekt sehr unterschiedlich funktionieren. Dies gilt für einige der grafischen Effekte: Der Wirbeleffekt kehrt beispielsweise die Richtung um.

Leider habe ich kein genaues Gespür dafür, welche Version des Helligkeitseffekts die meisten Projekte wünschen; Ich vermute, dass die meisten Projekte am Ende den 2D-Renderer verwenden, aber ich bin mir nicht sicher.

Der Helligkeitseffekt in Scratch 3.0 scheint dem 3D-Renderer in Scratch 2.0 zu entsprechen, aber nicht dem 2D-Renderer in Scratch 2.0. Wenn wir uns entscheiden, den 3D-Renderer anzupassen, sind wir meiner Meinung nach schon fertig; Wenn wir uns entscheiden, den 2D-Renderer anzupassen, gibt es zumindest einige Shader-Arbeiten.

Projekte verwenden meistens den Helligkeitseffekt für den Übergang zu und von Weiß und Schwarz, daher wäre es meiner Meinung nach am sinnvollsten, den 2D-Renderer von Scratch 2 anzupassen. und der Fehler LLK/scratch-flash#570 wurde erstellt, weil der 3D-Renderer "falsch" war: https://scratch.mit.edu/discuss/topic/73118/

@cwillisf @fsih Das Verhalten des 2D-Renderers

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen