Interface TextureProvider

  • All Known Implementing Classes:
    IIOTextureProvider

    public interface TextureProvider
    Plug-in interface to TextureIO to support reading OpenGL textures from new file formats. For all methods, either internalFormat or pixelFormat may be 0 in which case they must be inferred as e.g. RGB or RGBA depending on the file contents.
    • Method Detail

      • newTextureData

        TextureData newTextureData​(GLProfile glp,
                                   InputStream stream,
                                   int internalFormat,
                                   int pixelFormat,
                                   boolean mipmap,
                                   String fileSuffix)
                            throws IOException
        Produces a TextureData object from a stream, or returns null if the file format was not supported by this TextureProvider. Does not do any OpenGL-related work. The resulting TextureData can be converted into an OpenGL texture in a later step.
        Parameters:
        glp - the OpenGL Profile this texture data should be created for.
        stream - the stream from which to read the texture data
        internalFormat - the OpenGL internal format to be used for the texture, or 0 if it should be inferred from the file's contents
        pixelFormat - the OpenGL pixel format to be used for the texture, or 0 if it should be inferred from the file's contents
        mipmap - whether mipmaps should be produced for this texture either by autogenerating them or reading them from the file. Some file formats support multiple mipmaps in a single file in which case those mipmaps will be used rather than generating them.
        fileSuffix - the file suffix to be used as a hint to the provider to more quickly decide whether it can handle the file, or null if the provider should infer the type from the file's contents
        Throws:
        IOException - if an error occurred while reading the stream