Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4841762

OGL: enable bilinear sw->surface transforms

    Details

    • Type: Enhancement
    • Status: Open
    • Priority: P3
    • Resolution: Unresolved
    • Affects Version/s: 5.0
    • Fix Version/s: tbd
    • Component/s: client-libs
    • Subcomponent:
      2d
    • Understanding:
      Fix Understood
    • CPU:
      generic
    • OS:
      generic

      Description

      When using the OpenGL-based Java 2D pipeline, transformed image copies (from
      system memory surfaces to OpenGL surfaces) are currently performed using the
      software medialib routines if the BILINEAR hint is specified. There are two
      approaches for sw->surface transforms:
        - if the GL_EXT_pixel_transform extension is present, we simply specify the
          GL_LINEAR flag and set up the appropriate GL_PIXEL_TRANSFORM_2D matrix
        - if that extension is not present, we perform the transform by copying the
          source image one tile at a time into an intermediate texture, and then
          map that texture onto a transformed quad, using the GL_LINEAR interpolation
          flag

      Most of this code is already present in the source tree. The only thing lacking
      is the ability to handle tiled bilinear texture transforms in the
      OGLBlitToSurfaceViaTexture() method in OGLBlitLoops.c. Once this is enabled,
      we can remove the NEAREST_NEIGHBOR-only restriction from
      OGLDrawImage.transformImage().

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                serb Sergey Bylokhov
                Reporter:
                campbell Christopher Campbell (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Imported:
                  Indexed: