neuray API Programmer's Manual

mi::neuraylib::ITexture Class Reference

[Miscellaneous]

Description

Textures add image processing options to images. A texture appears in the scene as an argument of an MDL function call (see mi::neuraylib::IMdl_function_call) or default argument of an MDL function definition (see mi::neuraylib::IMdl_function_definition). The type of such an argument is "Attachable<Ref<Texture>>" (see mi::IRef and mi::IAttachable).

See also:

mi::neuraylib::IImage

Methods related to the referenced image

virtual const char* get_image() const =0
Returns the referenced image. More...
virtual Sint32 set_image( const char* name) =0
Sets the referenced image. More...

Methods related to the gamma value

virtual Float32 get_effective_gamma() const =0
Returns the effective gamma value. More...
virtual Float32 get_gamma() const =0
Returns the gamma value of this texture. More...
virtual void set_gamma( Float32 gamma) =0
Sets the gamma value of this texture. More...

Methods related to remapping options

virtual Float32 get_blur() const =0
Returns blur. Extra blurriness if greater than 1.0; sharper if less than 1.0.
virtual const Float32_3_structget_crop_max() const =0
Returns whether the high edges of the image are cropped.
virtual const Float32_3_structget_crop_min() const =0
Returns whether the low edges of the image are cropped.
virtual Uint32 get_filter() const =0
Returns lookup filter to use. More...
virtual Uint32 get_flags() const =0
Returns a bitmask containing the sum of the texture flags. More...
virtual const Float32_3_structget_repeat() const =0
Returns the repetition of the image.
virtual const Float32_4_4_structget_transform() const =0
Returns the coordinate transformation.
virtual void set_blur( Float32 blur) =0
Sets blur. Extra blurriness if greater than 1.0; sharper if less than 1.0.
virtual void set_crop_max( const Float32_3_struct& crop_max) =0
Sets whether the high edges of the image are cropped.
virtual void set_crop_min( const Float32_3_struct& crop_min) =0
Sets whether the low edges of the image are cropped.
virtual void set_filter( Uint32 type) =0
Sets the lookup filter to use. More...
virtual void set_flags( Uint32 value) =0
Sets a bitmask containing the sum of the texture flags. More...
virtual void set_repeat( const Float32_3_struct& repeat) =0
Sets the repetition of the image.
virtual void set_transform( const Float32_4_4_struct& transform) =0
Sets the coordinate transformation.

Miscellaneous methods

virtual Texture_compression get_compression() const =0
Returns the texture compression method. More...
virtual void set_compression( Texture_compression compression) =0
Sets the texture compression method. More...

Member Functions

virtual Float32 mi::​neuraylib::​ITexture::get_blur() const [pure virtual]

Returns blur. Extra blurriness if greater than 1.0; sharper if less than 1.0.

virtual Texture_compression mi::​neuraylib::​ITexture::get_compression() const [pure virtual]

Returns the texture compression method.

Note:

This setting does not affect the referenced image itself, it only affects image data that has been processed by the render modes. For example, in order to save GPU memory processed image data can be compressed before being uploaded to the GPU.

See also:

mi::neuraylib::Texture_compression

virtual const Float32_3_struct& mi::​neuraylib::​ITexture::get_crop_max() const [pure virtual]

Returns whether the high edges of the image are cropped.

virtual const Float32_3_struct& mi::​neuraylib::​ITexture::get_crop_min() const [pure virtual]

Returns whether the low edges of the image are cropped.

virtual Float32 mi::​neuraylib::​ITexture::get_effective_gamma() const [pure virtual]

Returns the effective gamma value. Returns the gamma value of this texture, unless no override is set. In this case the gamma value of the underlying image is returned (or 0.0 if no image is set).

virtual Uint32 mi::​neuraylib::​ITexture::get_filter() const [pure virtual]

Returns lookup filter to use.

Note:

Prefiltered textures are currently not supported, i.e., this value is meaningless.

See also:

mi::neuraylib::Filter_type

virtual Uint32 mi::​neuraylib::​ITexture::get_flags() const [pure virtual]

Returns a bitmask containing the sum of the texture flags.

See also:

mi::neuraylib::Texture_flag.

virtual Float32 mi::​neuraylib::​ITexture::get_gamma() const [pure virtual]

Returns the gamma value of this texture. The gamma value of the texture is an override for the gamma value of the underlying image. The special value 0.0 means that the override is not set.

See also:

get_effective_gamma()

virtual const char* mi::​neuraylib::​ITexture::get_image() const [pure virtual]

Returns the referenced image.

Returns

The referenced image, or NULL if no image is referenced.

virtual const Float32_3_struct& mi::​neuraylib::​ITexture::get_repeat() const [pure virtual]

Returns the repetition of the image.

virtual const Float32_4_4_struct& mi::​neuraylib::​ITexture::get_transform() const [pure virtual]

Returns the coordinate transformation.

virtual void mi::​neuraylib::​ITexture::set_blur( Float32 blur) [pure virtual]

Sets blur. Extra blurriness if greater than 1.0; sharper if less than 1.0.

virtual void mi::​neuraylib::​ITexture::set_compression( Texture_compression compression) [pure virtual]

Sets the texture compression method.

Note:

This setting does not affect the referenced image itself, it only affects image data that has been processed by the render modes. For example, in order to save GPU memory processed image data can be compressed before being uploaded to the GPU.

See also:

mi::neuraylib::Texture_compression

virtual void mi::​neuraylib::​ITexture::set_crop_max( const Float32_3_struct& crop_max) [pure virtual]

Sets whether the high edges of the image are cropped.

virtual void mi::​neuraylib::​ITexture::set_crop_min( const Float32_3_struct& crop_min) [pure virtual]

Sets whether the low edges of the image are cropped.

virtual void mi::​neuraylib::​ITexture::set_filter( Uint32 type) [pure virtual]

Sets the lookup filter to use.

Note:

Prefiltered textures are currently not supported, i.e., this value is ignored.

See also:

mi::neuraylib::Filter_type

virtual void mi::​neuraylib::​ITexture::set_flags( Uint32 value) [pure virtual]

Sets a bitmask containing the sum of the texture flags.

See also:

mi::neuraylib::Texture_flag.

virtual void mi::​neuraylib::​ITexture::set_gamma( Float32 gamma) [pure virtual]

Sets the gamma value of this texture. The gamma value of the texture is an override for the gamma value of the underlying image. The special value 0.0 means that the override is not set.

virtual Sint32 mi::​neuraylib::​ITexture::set_image( const char* name) [pure virtual]

Sets the referenced image.

Returns

  • 0: Success.
  • -1: Invalid parameters (NULL pointer).
  • -2: There is no element with that name.
  • -3: The element can not be referenced because it is in a more private scope than the texture.
  • -4: The element is not an image.
virtual void mi::​neuraylib::​ITexture::set_repeat( const Float32_3_struct& repeat) [pure virtual]

Sets the repetition of the image.

virtual void mi::​neuraylib::​ITexture::set_transform( const Float32_4_4_struct& transform) [pure virtual]

Sets the coordinate transformation.