TriLib 2.2.8
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
TriLibCore.AssetLoaderOptions Class Reference

Represents a series of Model loading settings, like Unity Model Importer settings. More...

Inheritance diagram for TriLibCore.AssetLoaderOptions:

Public Member Functions

void Deserialize (string json)
 Deserialize the specified JSON representation into this class.
 
string Serialize ()
 Serializes this instance to a JSON representation.
 

Public Attributes

bool UseFileScale = true
 Turn on this flag to use the file original scale.
 
float ScaleFactor = 1f
 Model scale multiplier.
 
bool SortHierarchyByName = true
 Turn on this field to sort the Model hierarchy by name.
 
bool ImportVisibility = true
 Turn on this field to apply the visibility property to Mesh Renderers/Skinned Mesh Renderers.
 
bool Static
 Turn on this field to import the Model as a static Game Object.
 
bool AddAssetUnloader = true
 Turn on this field to add the Asset Unloader Component to the loaded Game Object, which deallocates resources automatically.
 
bool ImportMeshes = true
 Turn on this field to import Model Meshes.
 
bool LimitBoneWeights = true
 Turn on this field to limit bones weight to 4 weights per bone.
 
bool ReadEnabled = false
 Turn on this field to leave imported Meshes readable.
 
bool MarkMeshesAsDynamic
 Turn on this field to mark created meshes as dynamic.
 
bool OptimizeMeshes = true
 Turn on this field to optimize imported Meshes for GPU access.
 
bool GenerateColliders
 Turn on this field to generate Colliders for imported Meshes.
 
bool ConvexColliders
 Turn on this field to generate convex Colliders when the GenerateColliders field is enabled.
 
bool ImportBlendShapes = true
 Turn on this field to import Mesh Blend Shapes.
 
bool ImportColors = true
 Turn on this field to import Mesh colors.
 
IndexFormat IndexFormat = IndexFormat.UInt32
 Mesh index format (16 or 32 bits).
 
float LODScreenRelativeTransitionHeightBase = 0.75f
 Defines the initial screen relative transition height when creating LOD Groups.
 
bool KeepQuads
 Turn on this field to mantain Mesh quads. (Useful for DX11 tesselation)
 
bool ImportNormals = true
 Turn on this field to import Mesh normals. If disabled, normals will be calculated instead.
 
bool GenerateNormals = true
 Turn off this field to disable Mesh normals generation.
 
bool GenerateTangents = true
 Turn off this field to disable Mesh tangents generation.
 
float SmoothingAngle = 60f
 Normals calculation smoothing angle.
 
bool ImportBlendShapeNormals
 Turn on this field to import Mesh Blend Shape normals.
 
bool CalculateBlendShapeNormals
 Turn on this field to calculate Mesh Blend Shape normals when none can be imported.
 
bool ImportTangents
 Turn on this field to import Mesh tangents. If disabled, tangents will be calculated instead.
 
bool SwapUVs
 Turn on this field to swap Mesh UVs. (uv1 into uv2)
 
bool ImportMaterials = true
 Turn on this field to import Materials.
 
MaterialMapper[] MaterialMappers
 Mappers used to create suitable Unity Materials from original Materials.
 
bool ImportTextures = true
 Turn on this field to import Textures.
 
bool ScanForAlphaPixels = true
 Turn on this field to scan Textures for alpha-blended pixels in order to generate transparent Materials.
 
AlphaMaterialMode AlphaMaterialMode = AlphaMaterialMode.CutoutAndTransparent
 Chooses the way TriLib creates alpha materials. The options are: None: Does not create any alpha material and uses opaque materials instead. Cutout: Creates cutout alpha materials where applicable. Transparent: Creates transparent (alpha) materials where applicable. Cutout + Transparent: Creates both materials and uses the second one at a copy from the semi-transparent mesh.
 
bool DoubleSidedMaterials
 Turn on this field to create double-sided Materials (TriLib does that by duplicating the original Meshes).
 
TextureMapper[] TextureMappers
 Mappers used to find native Texture Streams from custom sources.
 
TextureCompressionQuality TextureCompressionQuality = TextureCompressionQuality.Normal
 Texture compression to apply on loaded Textures.
 
bool GenerateMipmaps = true
 Turn on this field to enable Textures mip-map generation.
 
bool FixNormalMaps
 Turn on this field to change normal map channels order to ABBR instead of RGBA.
 
AnimationType AnimationType = AnimationType.Legacy
 Model rigging type.
 
bool SimplifyAnimations
 
float PositionThreshold = 0.01f
 
float RotationThreshold = 0.01f
 
float ScaleThreshold = 0.01f
 
AvatarDefinitionType AvatarDefinition
 Type of Avatar creation for the Model.
 
Avatar Avatar
 Source Avatar to use when copying from other Avatar.
 
General.HumanDescription HumanDescription
 Human Description used to create the humanoid Avatar, when the humanoid rigging type is selected.
 
RootBoneMapper RootBoneMapper
 Mapper used to find the Model root bone.
 
HumanoidAvatarMapper HumanoidAvatarMapper
 Mapper used to map the humanoid Avatar bones when the humanoid rigging type is selected.
 
LipSyncMapper[] LipSyncMappers
 Mappers used to configure Lip-Sync Blend Shapes.
 
bool SampleBindPose
 Turn on this field to sample the loaded Model to the bind-pose when rigging.
 
bool EnforceTPose = true
 Turn on this field to enforce the loaded Model to the T-pose when rigging.
 
bool EnforceAnimatorWithLegacyAnimations
 Turn on this field to add an Animator when the AnimationType is set to Legacy.
 
bool AutomaticallyPlayLegacyAnimations
 Turn on this field to play Legacy Animation Clips automatically (The first available Clip will be played).
 
float ResampleFrequency = 4f
 Defines the FBX Rotation Animation Curve resampling frequency. (1 = every frame, 2 = every 2 frames, 3 = every 3 frames and so on)
 
WrapMode AnimationWrapMode = WrapMode.Loop
 Default wrap-mode to apply to Animations.
 
AnimationClipMapper[] AnimationClipMappers
 Mappers used to process Animation Clips.
 
ExternalDataMapper ExternalDataMapper
 Mapper used to find data Streams on external sources.
 
bool ShowLoadingWarnings
 Turn on this field to display Model loading warnings on the Console.
 
bool CloseStreamAutomatically = true
 Turn on this field to close the Model loading Stream automatically.
 
int Timeout = 180
 Model loading timeout in seconds (0=disabled).
 
bool DestroyOnError = true
 Turn on this field to destroy the loaded Game Object automatically when there is any loading error.
 
bool EnsureQuaternionContinuity = true
 Turn on this field to realign quaternion keys to ensure shortest interpolation paths.
 
bool UseMaterialKeywords
 Turn on this field to use shader keywords on generated Materials. This field is useful when using Shader Variants to get more control over generated Materials.
 
bool ForceGCCollectionWhileLoading = true
 
bool MergeVertices = true
 Turn on this field to merge model duplicated vertices where possible.
 
bool MarkTexturesNoLongerReadable = true
 Turn on this field to set textures as no longer readable and release memory resources.
 
bool UseUnityNativeNormalCalculator
 Turn on this field to use the builtin Unity normal calculator. Disabling this field makes TriLib accept more texture file formats, but it uses more memory to load textures.
 
bool ApplyGammaCurveToMaterialColors = false
 When this field is on, TriLib will also apply the gamma curve to the material colors.
 
bool LoadTexturesAsSRGB = true
 Turn off this field to load textures as linear, instead of sRGB.
 
UserPropertiesMapper UserPropertiesMapper
 Mapper used to process User Properties from Models.
 
bool ApplyTexturesOffsetAndScaling = true
 Turn on this field to apply Textures offset and scaling.
 
bool DiscardUnusedTextures = true
 Turn off this field to keep unused Textures.
 
PivotPosition PivotPosition
 Use this field to realign the Model pivot based on the given value.
 
bool ForcePowerOfTwoTextures = false
 Turn on this field to enforce power of two resolution when loading textures (needed for texture compression and in some platforms).
 
int MaxTexturesResolution
 Use this field to limit textures resolution. Textures with resolutions higher than this value (when the value is not zero) will not be loaded.
 
bool EnableProfiler
 Turn on this field to display profiler messages while loading your model.
 
bool UseUnityNativeTextureLoader
 Turn on this field to use Unity builtin Texture loader instead of stb_image.
 
bool ImportCameras
 Turn on this field to enable Cameras importing.
 
bool ImportLights
 Turn on this field to enable Lights importing.
 
bool DisableObjectsRenaming
 Turn on this field to disable objects renaming. Remarks: this feature may break animations' compatibility as they won't work with duplicate object names.
 
bool MergeSingleChild
 Turn on this field to merge single child models into a single GameObject.
 
bool SetUnusedTexturePropertiesToNull
 Turn on this field to set the unused Material Texture Properties to null.
 
bool LoadPointClouds
 Turn on this field to keep isolated vertices when loading the model (PLY and OBJ only).
 
bool CreateVerticesAsNativeLists
 
bool CompressMeshes
 
bool ExtractEmbeddedData = true
 Turn off this field to disable embedded resources extraction. When this field is on, embedded textures and resources are extracted to disk and can work as a cache system.
 
string EmbeddedDataExtractionPath
 Path to extract embedded resources. Keep in mind this is an absolute path. If this value is "null", Unity will use the "Persistent Data Path" to store the embedded data.
 
FileBufferingMode BufferizeFiles = FileBufferingMode.Always
 Change this field to define how TriLib will load files into memory before processing the file (When enabled, decreases loading times, but increases memory usage).
 
bool ConvertMaterialTextures = true
 Turn off this field to disable "Metallic/Smoothness/Specular/Roughness" automatic textures creation.
 
bool ConvertMaterialTexturesUsingHalfRes = true
 Turn off this field to set the "Metallic/Smoothness/Specular/Roughness" texture sizes to the full original resolution.
 
bool DisableTesselation
 Turn on this field to disable polygon tesselation.
 
bool SearchTexturesRecursively = true
 Turn off this field if you don't want TriLib to search textures inside all folders where the model is located.
 
bool AddAllBonesToSkinnedMeshRenderers
 Turn on this field to add all available bones to every created SkinnedMeshRenderer.
 
bool EnforceAlphaChannelTextures = true
 Turn on this field to enforce alpha channel on textures creation.
 
NameMapper NameMapper
 Use a custom NameMapper to define how the final GameObjects will be named based on the input model data.
 

Detailed Description

Represents a series of Model loading settings, like Unity Model Importer settings.

Member Function Documentation

◆ Deserialize()

void TriLibCore.AssetLoaderOptions.Deserialize ( string  json)

Deserialize the specified JSON representation into this class.

Parameters
jsonJson.

Member Data Documentation

◆ CompressMeshes

bool TriLibCore.AssetLoaderOptions.CompressMeshes
Deprecated:
Turn on this field to compress meshes "normal", "tangent", "uv0", "uv1", "uv2", "uv4" and "color" values to 16 bits(Experimental).

◆ CreateVerticesAsNativeLists

bool TriLibCore.AssetLoaderOptions.CreateVerticesAsNativeLists
Deprecated:
Turn on this field to load Mesh vertices using Native Lists (Experimental).

◆ ForceGCCollectionWhileLoading

bool TriLibCore.AssetLoaderOptions.ForceGCCollectionWhileLoading = true
Deprecated:
Turn on this field to force the GC collection while loading the model and release memory promptly.

◆ PositionThreshold

float TriLibCore.AssetLoaderOptions.PositionThreshold = 0.01f
Deprecated:
Position simplification threshold. The smaller values, more precision.

◆ RotationThreshold

float TriLibCore.AssetLoaderOptions.RotationThreshold = 0.01f
Deprecated:
Rotation simplification threshold (in degrees). The smaller values, more precision.

◆ ScaleThreshold

float TriLibCore.AssetLoaderOptions.ScaleThreshold = 0.01f
Deprecated:
Scale simplification threshold. The smaller values, more precision.

◆ SimplifyAnimations

bool TriLibCore.AssetLoaderOptions.SimplifyAnimations
Deprecated:
Turn on this field to simplify animation curves.