[][src]Struct gdnative::api::Sprite3D

pub struct Sprite3D { /* fields omitted */ }

core class Sprite3D inherits SpriteBase3D (unsafe).

Official documentation

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

Memory management

Non reference counted objects such as the ones of this type are usually owned by the engine.

Sprite3D is a reference-only type. Persistent references can only exist in the unsafe Ref<Sprite3D> form.

In the cases where Rust code owns an object of this type, for example if the object was just created on the Rust side and not passed to the engine yet, ownership should be either given to the engine or the object must be manually destroyed using Ref::free, or Ref::queue_free if it is a Node.

Class hierarchy

Sprite3D 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 Sprite3D[src]

pub fn new() -> Ref<Sprite3D, Unique>[src]

Creates a new instance of this object.

Because this type is not reference counted, the lifetime of the returned object is not automatically managed.

Immediately after creation, the object is owned by the caller, and can be passed to the engine (in which case the engine will be responsible for destroying the object) or destroyed manually using Ref::free, or preferably Ref::queue_free if it is a Node.

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

Current frame to display from sprite sheet. [member vframes] or [member hframes] must be greater than 1.

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

Coordinates of the frame to display from sprite sheet. This is as an alias for the [member frame] property. [member vframes] or [member hframes] must be greater than 1.

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

The number of columns in the sprite sheet.

pub fn region_rect(&self) -> Rect<f32, UnknownUnit>[src]

The region of the atlas texture to display. [member region_enabled] must be [code]true[/code].

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

[Texture] object to draw. If [member GeometryInstance.material_override] is used, this will be overridden.

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

The number of rows in the sprite sheet.

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

If [code]true[/code], texture will be cut from a larger atlas texture. See [member region_rect].

pub fn set_frame(&self, frame: i64)[src]

Current frame to display from sprite sheet. [member vframes] or [member hframes] must be greater than 1.

pub fn set_frame_coords(&self, coords: Vector2D<f32, UnknownUnit>)[src]

Coordinates of the frame to display from sprite sheet. This is as an alias for the [member frame] property. [member vframes] or [member hframes] must be greater than 1.

pub fn set_hframes(&self, hframes: i64)[src]

The number of columns in the sprite sheet.

pub fn set_region(&self, enabled: bool)[src]

If [code]true[/code], texture will be cut from a larger atlas texture. See [member region_rect].

pub fn set_region_rect(&self, rect: Rect<f32, UnknownUnit>)[src]

The region of the atlas texture to display. [member region_enabled] must be [code]true[/code].

pub fn set_texture(&self, texture: impl AsArg<Texture>)[src]

[Texture] object to draw. If [member GeometryInstance.material_override] is used, this will be overridden.

pub fn set_vframes(&self, vframes: i64)[src]

The number of rows in the sprite sheet.

Methods from Deref<Target = SpriteBase3D>

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

pub fn alpha_cut_mode(&self) -> AlphaCutMode[src]

pub fn axis(&self) -> Axis[src]

The direction in which the front of the texture faces.

pub fn billboard_mode(&self) -> BillboardMode[src]

pub fn draw_flag(&self, flag: i64) -> bool[src]

If [code]true[/code], the texture's transparency and the opacity are used to make those parts of the sprite invisible.

pub fn get_item_rect(&self) -> Rect<f32, UnknownUnit>[src]

Returns the rectangle representing this sprite.

pub fn modulate(&self) -> Color[src]

A color value that gets multiplied on, could be used for mood-coloring or to simulate the color of light.

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

The texture's drawing offset.

pub fn opacity(&self) -> f64[src]

The objects visibility on a scale from [code]0[/code] fully invisible to [code]1[/code] fully visible.

pub fn pixel_size(&self) -> f64[src]

The size of one pixel's width on the sprite to scale it in 3D.

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

If [code]true[/code], texture will be centered.

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

If [code]true[/code], texture is flipped horizontally.

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

If [code]true[/code], texture is flipped vertically.

pub fn set_alpha_cut_mode(&self, mode: i64)[src]

pub fn set_axis(&self, axis: i64)[src]

The direction in which the front of the texture faces.

pub fn set_billboard_mode(&self, mode: i64)[src]

pub fn set_centered(&self, centered: bool)[src]

If [code]true[/code], texture will be centered.

pub fn set_draw_flag(&self, flag: i64, enabled: bool)[src]

If [code]true[/code], the texture's transparency and the opacity are used to make those parts of the sprite invisible.

pub fn set_flip_h(&self, flip_h: bool)[src]

If [code]true[/code], texture is flipped horizontally.

pub fn set_flip_v(&self, flip_v: bool)[src]

If [code]true[/code], texture is flipped vertically.

pub fn set_modulate(&self, modulate: Color)[src]

A color value that gets multiplied on, could be used for mood-coloring or to simulate the color of light.

pub fn set_offset(&self, offset: Vector2D<f32, UnknownUnit>)[src]

The texture's drawing offset.

pub fn set_opacity(&self, opacity: f64)[src]

The objects visibility on a scale from [code]0[/code] fully invisible to [code]1[/code] fully visible.

pub fn set_pixel_size(&self, pixel_size: f64)[src]

The size of one pixel's width on the sprite to scale it in 3D.

Trait Implementations

impl Debug for Sprite3D[src]

impl Deref for Sprite3D[src]

type Target = SpriteBase3D

The resulting type after dereferencing.

impl DerefMut for Sprite3D[src]

impl GodotObject for Sprite3D[src]

type RefKind = ManuallyManaged

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 Instanciable for Sprite3D[src]

impl QueueFree for Sprite3D[src]

impl SubClass<GeometryInstance> for Sprite3D[src]

impl SubClass<Node> for Sprite3D[src]

impl SubClass<Object> for Sprite3D[src]

impl SubClass<Spatial> for Sprite3D[src]

impl SubClass<SpriteBase3D> for Sprite3D[src]

impl SubClass<VisualInstance> for Sprite3D[src]

Auto Trait Implementations

impl RefUnwindSafe for Sprite3D

impl !Send for Sprite3D

impl !Sync for Sprite3D

impl Unpin for Sprite3D

impl UnwindSafe for Sprite3D

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.