Class Texture

java.lang.Object
processing.opengl.Texture
All Implemented Interfaces:
PConstants

public class Texture extends Object implements PConstants
This class wraps an OpenGL texture. By Andres Colubri
  • Field Details

    • width

      public int width
    • height

      public int height
    • glName

      public int glName
    • glTarget

      public int glTarget
    • glFormat

      public int glFormat
    • glMinFilter

      public int glMinFilter
    • glMagFilter

      public int glMagFilter
    • glWrapS

      public int glWrapS
    • glWrapT

      public int glWrapT
    • glWidth

      public int glWidth
    • glHeight

      public int glHeight
    • MAX_BUFFER_CACHE_SIZE

      public static final int MAX_BUFFER_CACHE_SIZE
      See Also:
  • Constructor Details

    • Texture

      public Texture(PGraphicsOpenGL pg)
    • Texture

      public Texture(PGraphicsOpenGL pg, int width, int height)
      Creates an instance of PTexture with size width x height. The texture is initialized (empty) to that size.
      Parameters:
      width - int
      height - int
    • Texture

      public Texture(PGraphicsOpenGL pg, int width, int height, Object params)
      Creates an instance of PTexture with size width x height and with the specified parameters. The texture is initialized (empty) to that size.
      Parameters:
      width - int
      height - int
      params - Parameters
  • Method Details

    • init

      public void init(int width, int height)
      Sets the size of the image and texture to width x height. If the texture is already initialized, it first destroys the current OpenGL texture object and then creates a new one with the specified size.
      Parameters:
      width - int
      height - int
    • init

      public void init(int width, int height, Texture.Parameters params)
      Sets the size of the image and texture to width x height, and the parameters of the texture to params. If the texture is already initialized, it first destroys the current OpenGL texture object and then creates a new one with the specified size.
      Parameters:
      width - int
      height - int
      params - GLTextureParameters
    • init

      public void init(int width, int height, int glName, int glTarget, int glFormat, int glWidth, int glHeight, int glMinFilter, int glMagFilter, int glWrapS, int glWrapT)
      Initializes the texture using GL parameters
    • resize

      public void resize(int wide, int high)
    • available

      public boolean available()
      Returns true if the texture has been initialized.
      Returns:
      boolean
    • set

      public void set(Texture tex)
    • set

      public void set(Texture tex, int x, int y, int w, int h)
    • set

      public void set(int texTarget, int texName, int texWidth, int texHeight, int w, int h)
    • set

      public void set(int texTarget, int texName, int texWidth, int texHeight, int target, int tex, int x, int y, int w, int h)
    • set

      public void set(int[] pixels)
    • set

      public void set(int[] pixels, int format)
    • set

      public void set(int[] pixels, int x, int y, int w, int h)
    • set

      public void set(int[] pixels, int x, int y, int w, int h, int format)
    • setNative

      public void setNative(int[] pixels)
    • setNative

      public void setNative(int[] pixels, int x, int y, int w, int h)
    • setNative

      public void setNative(IntBuffer pixBuf, int x, int y, int w, int h)
    • get

      public void get(int[] pixels)
      Copy texture to pixels. Involves video memory to main memory transfer (slow).
    • put

      public void put(Texture tex)
    • put

      public void put(Texture tex, int x, int y, int w, int h)
    • put

      public void put(int texTarget, int texName, int texWidth, int texHeight, int w, int h)
    • put

      public void put(int texTarget, int texName, int texWidth, int texHeight, int target, int tex, int x, int y, int w, int h)
    • usingMipmaps

      public boolean usingMipmaps()
      Returns true or false whether or not the texture is using mipmaps.
      Returns:
      boolean
    • usingMipmaps

      public void usingMipmaps(boolean mipmaps, int sampling)
    • usingRepeat

      public boolean usingRepeat()
      Returns true or false whether or not the texture is using repeat wrap mode along either U or V directions.
      Returns:
      boolean
    • usingRepeat

      public void usingRepeat(boolean repeat)
    • maxTexcoordU

      public float maxTexcoordU()
      Returns the maximum possible value for the texture coordinate U (horizontal).
      Returns:
      float
    • maxTexcoordV

      public float maxTexcoordV()
      Returns the maximum possible value for the texture coordinate V (vertical).
      Returns:
      float
    • invertedX

      public boolean invertedX()
      Returns true if the texture is inverted along the horizontal direction.
      Returns:
      boolean;
    • invertedX

      public void invertedX(boolean v)
      Sets the texture as inverted or not along the horizontal direction.
      Parameters:
      v - boolean;
    • invertedY

      public boolean invertedY()
      Returns true if the texture is inverted along the vertical direction.
      Returns:
      boolean;
    • invertedY

      public void invertedY(boolean v)
      Sets the texture as inverted or not along the vertical direction.
      Parameters:
      v - boolean;
    • currentSampling

      public int currentSampling()
    • bind

      public void bind()
    • unbind

      public void unbind()
    • bound

      public boolean bound()
    • isModified

      public boolean isModified()
    • setModified

      public void setModified()
    • setModified

      public void setModified(boolean m)
    • getModifiedX1

      public int getModifiedX1()
    • getModifiedX2

      public int getModifiedX2()
    • getModifiedY1

      public int getModifiedY1()
    • getModifiedY2

      public int getModifiedY2()
    • updateTexels

      public void updateTexels()
    • updateTexels

      public void updateTexels(int x, int y, int w, int h)
    • setBufferSource

      public void setBufferSource(Object source)
    • copyBufferFromSource

      public void copyBufferFromSource(Object natRef, ByteBuffer byteBuf, int w, int h)
    • disposeSourceBuffer

      public void disposeSourceBuffer()
    • getBufferPixels

      public void getBufferPixels(int[] pixels)
    • hasBufferSource

      public boolean hasBufferSource()
    • hasBuffers

      public boolean hasBuffers()
    • colorBuffer

      public void colorBuffer(boolean value)
    • colorBuffer

      public boolean colorBuffer()
    • getParameters

      public Texture.Parameters getParameters()