How to use mipmap option of ImageGraphics

In ImageGraphics class, there is a paintedMipMapCount.

But it is not used at all (even no examples) and when I use it, it shows weird texture.

How can I use it correctly?



/**
     * @param width of the image
     * @param height of the image
     * @param paintedMipMapCount number of mipmaps that are painted, rest is drawn by image copying, 0 for no mipmaps,
     *                           1 for a single image painted and mipmaps copied, higher values respective
     * @return a new instance of ImageGraphics matching the display system.
     */
    public static ImageGraphics createInstance( int width, int height, int paintedMipMapCount ) {
        //this is a workaround for a proper factory method in DisplaySystem to avoid an awt dependency
        //todo: maybe this can be done more cleanly
        if ( DisplaySystem.getDisplaySystem() instanceof LWJGLDisplaySystem ) {
            return new LWJGLImageGraphics( width, height, paintedMipMapCount );
        } else if ( DisplaySystem.getDisplaySystem() instanceof JOGLDisplaySystem ) {
            return new JOGLImageGraphics( width, height, paintedMipMapCount );
        }

        throw new UnsupportedOperationException( "No ImageGraphics implementation " +
                "for display system '" + DisplaySystem.getDisplaySystem() + "' found!" );       
    }



I guess the reason why its not used is because it shows the weird texture. I don't think there's a way of supporting painted mip maps like this since you would notice artifacts/singularities at lower levels unless you use proper box filter scaling. The best way is to generate the mip-maps in hardware using the default jME trilinear filtering.

Momoko_Fan said:

I guess the reason why its not used is because it shows the weird texture. I don't think there's a way of supporting painted mip maps like this since you would notice artifacts/singularities at lower levels unless you use proper box filter scaling. The best way is to generate the mip-maps in hardware using the default jME trilinear filtering.

If it is true, How about removing the parameter in order not to be accessed from user code?