Class Texture

java.lang.Object
com.jme3.texture.Texture
All Implemented Interfaces:
CloneableSmartAsset, Savable, Cloneable
Direct Known Subclasses:
Texture2D, Texture3D, TextureArray, TextureCubeMap

public abstract class Texture extends Object implements CloneableSmartAsset, Savable, Cloneable
Texture defines a texture object to be used to display an image on a piece of geometry. The image to be displayed is defined by the Image class. All attributes required for texture mapping are contained within this class. This includes mipmapping if desired, magnificationFilter options, apply options and correction options. Default values are as follows: minificationFilter - NearestNeighborNoMipMaps, magnificationFilter - NearestNeighbor, wrap - EdgeClamp on S,T and R, apply - Modulate, environment - None.
See Also:
  • Constructor Details

    • Texture

      public Texture()
      Constructor instantiates a new Texture object with default attributes.
  • Method Details

    • clone

      public Texture clone()
      Description copied from interface: CloneableSmartAsset
      Creates a clone of the asset. Please see Object.clone() for more info on how this method should be implemented.
      Specified by:
      clone in interface CloneableSmartAsset
      Overrides:
      clone in class Object
      Returns:
      A cloned Texture object.
    • getMinFilter

      public Texture.MinFilter getMinFilter()
      Returns:
      the MinificationFilterMode of this texture.
    • setMinFilter

      public void setMinFilter(Texture.MinFilter minificationFilter)
      Parameters:
      minificationFilter - the new MinificationFilterMode for this texture.
      Throws:
      IllegalArgumentException - if minificationFilter is null
    • getMagFilter

      public Texture.MagFilter getMagFilter()
      Returns:
      the MagnificationFilterMode of this texture.
    • setMagFilter

      public void setMagFilter(Texture.MagFilter magnificationFilter)
      Parameters:
      magnificationFilter - the new MagnificationFilter for this texture.
      Throws:
      IllegalArgumentException - if magnificationFilter is null
    • getShadowCompareMode

      public Texture.ShadowCompareMode getShadowCompareMode()
      Returns:
      The ShadowCompareMode of this texture.
      See Also:
    • setShadowCompareMode

      public void setShadowCompareMode(Texture.ShadowCompareMode compareMode)
      Parameters:
      compareMode - the new ShadowCompareMode for this texture.
      Throws:
      IllegalArgumentException - if compareMode is null
      See Also:
    • setImage

      public void setImage(Image image)
      setImage sets the image object that defines the texture.
      Parameters:
      image - the image that defines the texture.
    • setKey

      public void setKey(AssetKey key)
      Description copied from interface: CloneableSmartAsset
      Set by the AssetManager to track this asset. Only clones of the asset has this set, the original copy that was loaded has this key set to null so that only the clones are tracked for garbage collection.
      Specified by:
      setKey in interface CloneableSmartAsset
      Parameters:
      key - The texture key that was used to load this texture
    • getKey

      public AssetKey getKey()
      Description copied from interface: CloneableSmartAsset
      Returns the asset key that is used to track this asset for garbage collection.
      Specified by:
      getKey in interface CloneableSmartAsset
      Returns:
      the asset key that is used to track this asset for garbage collection.
    • getImage

      public Image getImage()
      getImage returns the image data that makes up this texture. If no image data has been set, this will return null.
      Returns:
      the image data that makes up the texture.
    • setWrap

      public abstract void setWrap(Texture.WrapAxis axis, Texture.WrapMode mode)
      setWrap sets the wrap mode of this texture for a particular axis.
      Parameters:
      axis - the texture axis to apply the wrap mode to.
      mode - the wrap mode for the given axis of the texture.
      Throws:
      IllegalArgumentException - if axis or mode are null or invalid for this type of texture
    • setWrap

      public abstract void setWrap(Texture.WrapMode mode)
      setWrap sets the wrap mode of this texture for all axis.
      Parameters:
      mode - the wrap mode for the given axis of the texture.
      Throws:
      IllegalArgumentException - if mode is null or invalid for this type of texture
    • getWrap

      public abstract Texture.WrapMode getWrap(Texture.WrapAxis axis)
      getWrap returns the wrap mode for a given coordinate axis on this texture.
      Parameters:
      axis - the axis to return for
      Returns:
      the wrap mode of the texture.
      Throws:
      IllegalArgumentException - if axis is null or invalid for this type of texture
    • getType

      public abstract Texture.Type getType()
    • getName

      public String getName()
    • setName

      public void setName(String name)
    • getAnisotropicFilter

      public int getAnisotropicFilter()
      Returns:
      the anisotropic filtering level for this texture. Default value is 0 (use value from config), 1 means 1x (no anisotropy), 2 means x2, 4 is x4, etc.
    • setAnisotropicFilter

      public void setAnisotropicFilter(int level)
      Parameters:
      level - the anisotropic filtering level for this texture.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • createSimpleClone

      @Deprecated public Texture createSimpleClone(Texture rVal)
      Deprecated.
      Use clone() instead.
      Retrieve a basic clone of this Texture (ie, clone everything but the image data, which is shared)
      Parameters:
      rVal - storage for the clone (not null, modified)
      Returns:
      Texture
    • createSimpleClone

      @Deprecated public abstract Texture createSimpleClone()
      Deprecated.
      Use clone() instead.
      Returns:
      a new Texture
    • write

      public void write(JmeExporter e) throws IOException
      Specified by:
      write in interface Savable
      Throws:
      IOException
    • read

      public void read(JmeImporter importer) throws IOException
      Specified by:
      read in interface Savable
      Throws:
      IOException