pub struct MeshProcessor { /* private fields */ }Expand description
Mesh processor
This struct provides high-level methods for processing Unity Mesh objects, including parsing, validation, and export functionality.
Implementations§
Source§impl MeshProcessor
impl MeshProcessor
Sourcepub fn new(version: UnityVersion) -> Self
pub fn new(version: UnityVersion) -> Self
Create a new Mesh processor
Sourcepub fn with_config(version: UnityVersion, config: MeshConfig) -> Self
pub fn with_config(version: UnityVersion, config: MeshConfig) -> Self
Create a Mesh processor with custom configuration
Sourcepub fn parse_mesh(&self, object: &UnityObject) -> Result<MeshResult>
pub fn parse_mesh(&self, object: &UnityObject) -> Result<MeshResult>
Parse Mesh from Unity object
Sourcepub fn validate_mesh(&self, mesh: &Mesh) -> Result<()>
pub fn validate_mesh(&self, mesh: &Mesh) -> Result<()>
Validate mesh data
Sourcepub fn export_to_obj(&self, mesh: &Mesh) -> Result<String>
pub fn export_to_obj(&self, mesh: &Mesh) -> Result<String>
Export mesh to OBJ format
Sourcepub fn get_mesh_stats(&self, meshes: &[&Mesh]) -> MeshStats
pub fn get_mesh_stats(&self, meshes: &[&Mesh]) -> MeshStats
Get mesh statistics
Sourcepub fn get_supported_features(&self) -> Vec<&'static str>
pub fn get_supported_features(&self) -> Vec<&'static str>
Get supported mesh features for this Unity version
Sourcepub fn is_feature_supported(&self, feature: &str) -> bool
pub fn is_feature_supported(&self, feature: &str) -> bool
Check if a feature is supported
Sourcepub fn config(&self) -> &MeshConfig
pub fn config(&self) -> &MeshConfig
Get the current configuration
Sourcepub fn set_config(&mut self, config: MeshConfig)
pub fn set_config(&mut self, config: MeshConfig)
Set the configuration
Sourcepub fn version(&self) -> &UnityVersion
pub fn version(&self) -> &UnityVersion
Get the Unity version
Sourcepub fn set_version(&mut self, version: UnityVersion)
pub fn set_version(&mut self, version: UnityVersion)
Set the Unity version
Sourcepub fn extract_vertex_positions(&self, _mesh: &Mesh) -> Result<Vec<[f32; 3]>>
pub fn extract_vertex_positions(&self, _mesh: &Mesh) -> Result<Vec<[f32; 3]>>
Extract vertex positions (if available)
Sourcepub fn extract_vertex_normals(&self, _mesh: &Mesh) -> Result<Vec<[f32; 3]>>
pub fn extract_vertex_normals(&self, _mesh: &Mesh) -> Result<Vec<[f32; 3]>>
Extract vertex normals (if available)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for MeshProcessor
impl RefUnwindSafe for MeshProcessor
impl Send for MeshProcessor
impl Sync for MeshProcessor
impl Unpin for MeshProcessor
impl UnwindSafe for MeshProcessor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().