[][src]Struct gdnative::prelude::Texture

pub struct Texture { /* fields omitted */ }

core class Texture inherits Resource (reference counted).

Official documentation

See the documentation of this class in the Godot engine's official documentation.

Memory management

The lifetime of this object is automatically managed through reference counting.

Class hierarchy

Texture inherits methods from:

Safety

All types in the Godot API have "interior mutability" in Rust parlance. To enforce that the official thread-safety guidelines are followed, the typestate pattern is used in the Ref and TRef smart pointers, and the Instance API. The typestate Access in these types tracks whether the access is unique, shared, or exclusive to the current thread. For more information, see the type-level documentation on Ref.

Implementations

impl Texture[src]

Constants

impl Texture[src]

pub fn draw(
    &self,
    canvas_item: Rid,
    position: Vector2D<f32, UnknownUnit>,
    modulate: Color,
    transpose: bool,
    normal_map: impl AsArg<Texture>
)
[src]

Draws the texture using a [CanvasItem] with the [VisualServer] API at the specified [code]position[/code]. Equivalent to [method VisualServer.canvas_item_add_texture_rect] with a rect at [code]position[/code] and the size of this [Texture].

Default Arguments

  • modulate - Color( 1, 1, 1, 1 )
  • transpose - false
  • normal_map - null

pub fn draw_rect(
    &self,
    canvas_item: Rid,
    rect: Rect<f32, UnknownUnit>,
    tile: bool,
    modulate: Color,
    transpose: bool,
    normal_map: impl AsArg<Texture>
)
[src]

Draws the texture using a [CanvasItem] with the [VisualServer] API. Equivalent to [method VisualServer.canvas_item_add_texture_rect].

Default Arguments

  • modulate - Color( 1, 1, 1, 1 )
  • transpose - false
  • normal_map - null

pub fn draw_rect_region(
    &self,
    canvas_item: Rid,
    rect: Rect<f32, UnknownUnit>,
    src_rect: Rect<f32, UnknownUnit>,
    modulate: Color,
    transpose: bool,
    normal_map: impl AsArg<Texture>,
    clip_uv: bool
)
[src]

Draws a part of the texture using a [CanvasItem] with the [VisualServer] API. Equivalent to [method VisualServer.canvas_item_add_texture_rect_region].

Default Arguments

  • modulate - Color( 1, 1, 1, 1 )
  • transpose - false
  • normal_map - null
  • clip_uv - true

pub fn get_data(&self) -> Option<Ref<Image, Shared>>[src]

Returns an [Image] that is a copy of data from this [Texture]. [Image]s can be accessed and manipulated directly.

pub fn flags(&self) -> i64[src]

The texture's [enum Flags]. [enum Flags] are used to set various properties of the [Texture].

pub fn get_height(&self) -> i64[src]

Returns the texture height.

pub fn get_size(&self) -> Vector2D<f32, UnknownUnit>[src]

Returns the texture size.

pub fn get_width(&self) -> i64[src]

Returns the texture width.

pub fn has_alpha(&self) -> bool[src]

Returns [code]true[/code] if this [Texture] has an alpha channel.

pub fn set_flags(&self, flags: i64)[src]

The texture's [enum Flags]. [enum Flags] are used to set various properties of the [Texture].

Methods from Deref<Target = Resource>

pub fn duplicate(&self, subresources: bool) -> Option<Ref<Resource, Shared>>[src]

Duplicates the resource, returning a new resource. By default, sub-resources are shared between resource copies for efficiency. This can be changed by passing [code]true[/code] to the [code]subresources[/code] argument which will copy the subresources.
				[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method will only perform a shallow copy. Nested resources within subresources will not be duplicated and will still be shared.

Default Arguments

  • subresources - false

pub fn get_local_scene(&self) -> Option<Ref<Node, Shared>>[src]

If [member resource_local_to_scene] is enabled and the resource was loaded from a [PackedScene] instantiation, returns the local scene where this resource's unique copy is in use. Otherwise, returns [code]null[/code].

pub fn name(&self) -> GodotString[src]

The name of the resource. This is an optional identifier.

pub fn path(&self) -> GodotString[src]

The path to the resource. In case it has its own file, it will return its filepath. If it's tied to the scene, it will return the scene's path, followed by the resource's index.

pub fn get_rid(&self) -> Rid[src]

Returns the RID of the resource (or an empty RID). Many resources (such as [Texture], [Mesh], etc) are high-level abstractions of resources stored in a server, so this function will return the original RID.

pub fn is_local_to_scene(&self) -> bool[src]

If [code]true[/code], the resource will be made unique in each instance of its local scene. It can thus be modified in a scene instance without impacting other instances of that same scene.

pub fn set_local_to_scene(&self, enable: bool)[src]

If [code]true[/code], the resource will be made unique in each instance of its local scene. It can thus be modified in a scene instance without impacting other instances of that same scene.

pub fn set_name(&self, name: impl Into<GodotString>)[src]

The name of the resource. This is an optional identifier.

pub fn set_path(&self, path: impl Into<GodotString>)[src]

The path to the resource. In case it has its own file, it will return its filepath. If it's tied to the scene, it will return the scene's path, followed by the resource's index.

pub fn setup_local_to_scene(&self)[src]

This method is called when a resource with [member resource_local_to_scene] enabled is loaded from a [PackedScene] instantiation. Its behavior can be customized by overriding [method _setup_local_to_scene] from script.
				For most resources, this method performs no base logic. [ViewportTexture] performs custom logic to properly set the proxy texture and flags in the local viewport.

pub fn take_over_path(&self, path: impl Into<GodotString>)[src]

Sets the path of the resource, potentially overriding an existing cache entry for this path. This differs from setting [member resource_path], as the latter would error out if another resource was already cached for the given path.

Trait Implementations

impl Debug for Texture[src]

impl Deref for Texture[src]

type Target = Resource

The resulting type after dereferencing.

impl DerefMut for Texture[src]

impl GodotObject for Texture[src]

type RefKind = RefCounted

The memory management kind of this type. This modifies the behavior of the Ref smart pointer. See its type-level documentation for more information. Read more

impl SubClass<Object> for Texture[src]

impl SubClass<Reference> for Texture[src]

impl SubClass<Resource> for Texture[src]

impl SubClass<Texture> for MeshTexture[src]

impl SubClass<Texture> for CurveTexture[src]

impl SubClass<Texture> for NoiseTexture[src]

impl SubClass<Texture> for GradientTexture[src]

impl SubClass<Texture> for LargeTexture[src]

impl SubClass<Texture> for AnimatedTexture[src]

impl SubClass<Texture> for ExternalTexture[src]

impl SubClass<Texture> for ProxyTexture[src]

impl SubClass<Texture> for ViewportTexture[src]

impl SubClass<Texture> for ImageTexture[src]

impl SubClass<Texture> for AtlasTexture[src]

impl SubClass<Texture> for StreamTexture[src]

impl SubClass<Texture> for CameraTexture[src]

Auto Trait Implementations

impl RefUnwindSafe for Texture

impl !Send for Texture

impl !Sync for Texture

impl Unpin for Texture

impl UnwindSafe for Texture

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> SubClass<T> for T where
    T: GodotObject
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.