Enum RenderState.BlendMode

java.lang.Object
java.lang.Enum<RenderState.BlendMode>
com.codename1.gpu.RenderState.BlendMode
All Implemented Interfaces:
Comparable<RenderState.BlendMode>
Enclosing class:
RenderState

public static enum RenderState.BlendMode extends Enum<RenderState.BlendMode>

The alpha blending mode applied when a fragment is written.

A fragment's color is a material's color multiplied by its texture, in straight (not premultiplied) alpha: a material colored 0x66000000 over a white texture is black at 40%, and drawn with ALPHA over an opaque destination d it leaves 0.6 * d.

The framebuffer's own alpha channel is not blended the way its color is. In both blending modes it accumulates coverage, alpha = source + destination * (1 - source), so a frame cleared to an opaque color stays opaque whatever is blended onto it. A backend that weights the alpha by the same factor as the color leaves 0.76 under a fragment at 40%, and where the frame is composited or read back with its alpha, what is behind the view shows through the fragment.

  • Enum Constant Details

    • NONE

      public static final RenderState.BlendMode NONE
      No blending; the fragment overwrites the destination.
    • ALPHA

      public static final RenderState.BlendMode ALPHA
      Standard source-over alpha blending: color = source * sourceAlpha + destination * (1 - sourceAlpha).
    • ADDITIVE

      public static final RenderState.BlendMode ADDITIVE
      Additive blending, useful for particles and glows: color = source * sourceAlpha + destination.
  • Method Details

    • values

      public static RenderState.BlendMode[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static RenderState.BlendMode valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null