Asset

Struct Asset 

Source
pub struct Asset {
    pub path: String,
    pub guid: UnityGuid,
    pub content: AssetType,
    pub importer_type: ImporterType,
}
Expand description

An asset to be included in a Unity package

Fields§

§path: String

Path where the asset will be placed in Unity (e.g., “Assets/Terrain/heightmap.raw”)

§guid: UnityGuid

The asset’s GUID

§content: AssetType

The asset content

§importer_type: ImporterType

Import settings

Implementations§

Source§

impl Asset

Source

pub fn binary(path: impl Into<String>, data: Vec<u8>) -> Self

Create a new binary asset (raw files, images, etc.)

Source

pub fn text(path: impl Into<String>, content: impl Into<String>) -> Self

Create a new text asset (JSON, scripts, etc.)

Source

pub fn folder(path: impl Into<String>) -> Self

Create a folder asset

Source

pub fn with_guid(self, guid: UnityGuid) -> Self

Set a custom GUID (for reproducible builds or specific requirements)

Source

pub fn with_random_guid(self) -> Self

Set a random GUID instead of path-derived one

Source

pub fn with_importer(self, importer: ImporterType) -> Self

Override the importer type

Source

pub fn meta_file(&self) -> MetaFile

Generate the .meta file for this asset

Source

pub fn content_bytes(&self) -> Option<Vec<u8>>

Get the asset content as bytes

Source

pub fn is_folder(&self) -> bool

Check if this is a folder

Source

pub fn binary_from_slice(path: impl Into<String>, data: &[u8]) -> Self

Create a binary asset from a byte slice (convenience for &u8)

Source

pub fn from_file( unity_path: impl Into<String>, file_path: impl AsRef<Path>, ) -> Result<Self>

Create an asset by reading a file from disk

The Unity path is the destination path in the Unity project. The file path is the source file on disk to read.

Automatically detects whether content is text or binary based on extension.

Trait Implementations§

Source§

impl Clone for Asset

Source§

fn clone(&self) -> Asset

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Asset

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Asset

§

impl RefUnwindSafe for Asset

§

impl Send for Asset

§

impl Sync for Asset

§

impl Unpin for Asset

§

impl UnwindSafe for Asset

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.