_Por favor, describa lo que debería suceder_
Scratch 2, si establece el efecto de brillo en 100 y el efecto de color en 50, esto es lo que obtiene
_Describe lo que realmente sucede_
En Scratch 3, obtienes todo blanco (agregué un fondo para que puedas verlo).
Este error es una simplificación de un problema que tuve al abrir este proyecto en cero 3 https://scratch.mit.edu/projects/1270935/
Debe tener un aspecto como este
Y en cambio se veía así
cc @cwillisf
Todavía veo algo de extrañeza con Brightness, pero es un poco diferente de lo que se menciona arriba. Parece que el proyecto 1270935 funciona correctamente. Además, los brillos entre -100 y 0 se comportan como se esperaba.
Para brillos entre 0 y 100, parece que se está volviendo más brillante, pero no tan blanco como en 2.0.
Aquí está en 2.0:
Y aquí está en 3.0:
Usé este proyecto: https://scratch.mit.edu/projects/276912470/ para probar esto.
/ cc @kchadha @ktbee @cwillisf
Encontré algo raro. Si usa solo el efecto de brillo en un objeto en scratch 2, se ve así (0 a 100)
Rasguño 2:
Sin embargo, si también usa el efecto de color en cualquier sprite, todos los sprites cambian para verse así:
También Scratch 2:
Y así es como se ve el efecto de brillo en Scratch 3.0 en este momento.
Rasguño 3:
@cwillisf cuando el efecto de color rompió las cosas la última vez que dijiste que tenía algo que ver con el motor de renderizado?
Encontré un hilo relevante con enlaces de código útiles: https://github.com/LLK/scratch-flash/issues/570
Sin embargo, tenga en cuenta que HSV vs HSL no es el problema aquí. Aquí está 1) el efecto de brillo actual, 2) el efecto de brillo usando HSL, 3) el efecto de brillo en Scratch 2. Ni 1 ni 2 coinciden con 3.
Quizás relevante: https://scratch.mit.edu/projects/269088736/#comments -105915881
TL; DR un efecto de brillo positivo no parece tener un impacto en un traje cuyos colores de relleno ya son 100% de brillo (es decir, los controles deslizantes muestran brillo = 100). Creo que el efecto de brillo en 2.0 es más como "mezclar con blanco (o negro)" en lugar de "ajustar el componente de brillo". Aunque no he hecho pruebas.
Encontré algo raro
¡Buen descubrimiento, @fsih! Agregar un efecto de color al proyecto hace que Scratch 2.0 cambie a su modo de renderizado 3D, lo que explica por qué la diferencia aparece cuando lo hace. Parece que los renderizadores 2D y 3D de Scratch 2.0 funcionan de manera muy diferente para el efecto de brillo. Esto es cierto para varios de los efectos gráficos: por ejemplo, el efecto de remolino invierte la dirección.
Desafortunadamente, no tengo una idea clara de qué versión del efecto de brillo quieren la mayoría de los proyectos; Supongo que la mayoría de los proyectos terminan usando el renderizador 2D, pero no estoy seguro.
El efecto de brillo en Scratch 3.0 parece coincidir con el renderizador 3D en Scratch 2.0 pero no coincide con el renderizador 2D en Scratch 2.0. Si decidimos hacer coincidir el renderizador 3D, creo que ya hemos terminado; si decidimos hacer coincidir el renderizador 2D, al menos hay algo de trabajo de sombreado.
Los proyectos utilizan principalmente el efecto de brillo para hacer la transición hacia y desde el blanco y el negro, por lo que creo que tendría más sentido combinar el renderizador 2D de Scratch 2. Los sprites que se volvían blancos también era el comportamiento original antes de que tuviéramos que añadir el renderizador 3D. y el error LLK / scratch-flash # 570 se creó porque el renderizador 3D era "incorrecto": https://scratch.mit.edu/discuss/topic/73118/
@cwillisf @fsih Hacer coincidir el comportamiento del renderizador 2D tiene sentido para mí. ¡Gracias por la investigación!
Comentario más útil
Los proyectos utilizan principalmente el efecto de brillo para hacer la transición hacia y desde el blanco y el negro, por lo que creo que tendría más sentido combinar el renderizador 2D de Scratch 2. Los sprites que se volvían blancos también era el comportamiento original antes de que tuviéramos que añadir el renderizador 3D. y el error LLK / scratch-flash # 570 se creó porque el renderizador 3D era "incorrecto": https://scratch.mit.edu/discuss/topic/73118/