BlendAlphaMode
Доступно начиная с LÖVE 0.10.0
Этот перечисление не поддерживается в более ранних версиях.
Разные способы, как альфа влияет на смешивание цвета. См. BlendMode и Формулы BlendMode для дополнительных сведений.
Константы
- alphamultiply
- Значения RGB того, что рисуется, умножаются на значения альфы этих цветов во время смешивания. Это режим альфы по умолчанию.
- premultiplied
- Значения RGB того, что рисуется, не умножаются на значения альфы этих цветов во время смешивания. Для корректной работы большинства режимов смешивания с этим режимом альфы, значения RGB рисуемого объекта должны были быть умножены на их значения альфы в какой-то момент ранее («преумноженная альфа»).
Примечания
Константа «premultiplied» обычно используется при рисовании Canvas на экран, так как значения RGB текстуры Canvas ранее умножались на их значения альфы при рисовании содержимого в сам Canvas.
Константа «alphamultiply» не влияет на режим смешивания «multiply» BlendMode. Аналогично, математика режима смешивания «screen» BlendMode верна только в том случае, если используется режим альфы «premultiplied» и альфа рисуемых объектов уже была умножена на их значения RGB ранее (возможно, внутри шейдера).
Несколько статей были написаны о преумноженной альфе и о том, когда её использовать:
- http://www.realtimerendering.com/blog/gpus-prefer-premultiplication/
- https://developer.nvidia.com/content/alpha-blending-pre-or-not-pre
- http://blogs.msdn.com/b/shawnhar/archive/2009/11/06/premultiplied-alpha.aspx
- http://blogs.msdn.com/b/shawnhar/archive/2009/11/07/premultiplied-alpha-and-image-composition.aspx
См. также
© 2006–2020 LÖVE Development Team
Licensed under the GNU Free Documentation License, Version 1.3.
https://love2d.org/wiki/BlendAlphaMode