m Add to Renderer Category |
fix table for auto process |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 12: | Line 12: | ||
== Usage == <!--T:2--> | == Usage == <!--T:2--> | ||
{{Table ComponentFields | {{Table ComponentFields | ||
|Mesh|Mesh| The mesh to be rendered. Can be a [[StaticMesh (Component)|StaticMesh]] or a [[:Category:Components:Assets:Procedural Meshes|Procedural Mesh]] | |Mesh|{{RootFieldType|AssetRef`1|[[Type:Mesh|Mesh]]}}|TypeAdv0=true| The mesh to be rendered. Can be a [[StaticMesh (Component)|StaticMesh]] or a [[:Category:Components:Assets:Procedural Meshes|Procedural Mesh]] | ||
|Materials|Material| A list of materials to be applied to the mesh | |Materials|{{RootFieldType|SyncAssetList`1|[[Type:Material|Material]]}}|TypeAdv1=true| A list of materials to be applied to the mesh | ||
|MaterialPropertyBlocks|MaterialPropertyBlock| | |MaterialPropertyBlocks|{{RootFieldType|SyncAssetList`1|[[Type:MaterialPropertyBlock|MaterialPropertyBlock]]}}|TypeAdv2=true| | ||
|ShadowCastMode|ShadowCastMode| How this object will cast shadows onto the world, or if it <i>only</i> draws a shadow. | |ShadowCastMode|ShadowCastMode| How this object will cast shadows onto the world, or if it <i>only</i> draws a shadow. | ||
|SortingOrder|Int| | |MotionVectorMode|MotionVectorMode| | ||
|SortingOrder|Int| | |||
|BoundsComputeMethod|SkinnedBounds| How the bounds of this mesh will be calculated. Should be left as ''Static'' if possible, for performance reasons. | |BoundsComputeMethod|SkinnedBounds| How the bounds of this mesh will be calculated. Should be left as ''Static'' if possible, for performance reasons. | ||
|ProxyBoundsSource|SkinnedMeshRenderer| | |ProxyBoundsSource|'''[[Component:SkinnedMeshRenderer|SkinnedMeshRenderer]]'''|TypeAdv7=true| | ||
|Bones|Slot| ''Automatically Assigned'' — List of bones present in this mesh | |ExplicitLocalBounds|BoundingBox| | ||
|BlendShapeWeights|Float| ''Automatically Assigned'' — List of blendshapes present in this mesh, and their respective weights. | |Bones|{{RootFieldType|SyncRefList`1|[[Type:Slot|Slot]]}}|TypeAdv9=true| ''Automatically Assigned'' — List of bones present in this mesh | ||
|BlendShapeWeights|{{RootFieldType|SyncFieldList`1|[[Type:Float|Float]]}}|TypeAdv10=true| ''Automatically Assigned'' — List of blendshapes present in this mesh, and their respective weights. | |||
}} | }} | ||
== Behavior == | == Behavior == | ||
Line 31: | Line 33: | ||
<!--T:5--> | <!--T:5--> | ||
{ | {{Table ComponentTriggers | ||
|SplitSubmeshes()|null|Will split this mesh into additional submeshes, each having only one material | |||
| | |MergeByMaterial()|null|Will merge all submeshes that use the same material | ||
| | |SeparateOutBlendshapes()|null|Any part of the mesh that isn't animated by a [[Blendshape]] will be separated into a submesh | ||
|StripEmptyBlendshapes()|null|Blendshapes that don't animate any vertices will be removed from the mesh | |||
|StripEmptyBones()|null|Bones that aren't weighted to any vertices will be removed from the mesh | |||
|VisualizeBoneBounds()|null|Shows the bounding boxes for all of the bones in this mesh | |||
| Will split this mesh into additional submeshes, each having only one material | |VisualizeApproximateBoneBounds()|null| | ||
| | |ClearBoundsVisuals()|null|Hides the bounding boxes for the bones in this mesh. | ||
| | }} | ||
| Will merge all submeshes that use the same material | |||
| | |||
| | |||
| Any part of the mesh that isn't animated by a [[Blendshape]] will be separated into a submesh | |||
| | |||
| | |||
| Blendshapes that don't animate any vertices will be removed from the mesh | |||
| | |||
| | |||
| Bones that aren't weighted to any vertices will be removed from the mesh | |||
| | |||
| | |||
| Shows the bounding boxes for all of the bones in this mesh | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| Hides the bounding boxes for the bones in this mesh. | |||
== Examples == <!--T:6--> | == Examples == <!--T:6--> | ||
Line 67: | Line 48: | ||
== Related Components == <!--T:7--> | == Related Components == <!--T:7--> | ||
</translate> | </translate> | ||
[[Category:Components{{#translation:}}| | [[Category:Components{{#translation:}}|Skinned Mesh Renderer]] | ||
[[Category:Components:Rendering{{#translation:}}| | [[Category:Components:Rendering{{#translation:}}|Skinned Mesh Renderer]] | ||
[[Category:Renderer]] | [[Category:Renderer]] |
Latest revision as of 20:25, 5 November 2024
This article or section is a Stub. You can help the Resonite Wiki by expanding it.
Component image
Intoduction
The SkinnedMeshRenderer component is used for rendering animated/dynamic 3D meshes in the world, and applying materials to that mesh.
Usage
Name | Type | Description |
---|---|---|
persistent
|
Bool | Determines whether or not this item will be saved to the server. |
UpdateOrder
|
Int | Controls the order in which this component is updated. |
Enabled
|
Bool | Controls whether or not this component is enabled. |
Mesh
|
Mesh | The mesh to be rendered. Can be a StaticMesh or a Procedural Mesh |
Materials
|
list of Material | A list of materials to be applied to the mesh |
MaterialPropertyBlocks
|
list of MaterialPropertyBlock | |
ShadowCastMode
|
ShadowCastMode | How this object will cast shadows onto the world, or if it only draws a shadow. |
MotionVectorMode
|
MotionVectorMode | |
SortingOrder
|
Int | |
BoundsComputeMethod
|
SkinnedBounds | How the bounds of this mesh will be calculated. Should be left as Static if possible, for performance reasons. |
ProxyBoundsSource
|
SkinnedMeshRenderer | |
ExplicitLocalBounds
|
BoundingBox | |
Bones
|
list of Slot | Automatically Assigned — List of bones present in this mesh |
BlendShapeWeights
|
direct SyncFieldList`1<Float> | Automatically Assigned — List of blendshapes present in this mesh, and their respective weights. |
Behavior
While it can be used for rendering static meshes, it is not recommended as there is a slight performance penalty for using SkinnedMeshRenderer, even if the animation features aren't used — Please try to use MeshRenderer where possible.
Special Functions
Method Name | Method type and Arguments. | Description |
---|---|---|
SplitSubmeshes()
|
null | Will split this mesh into additional submeshes, each having only one material |
MergeByMaterial()
|
null | Will merge all submeshes that use the same material |
SeparateOutBlendshapes()
|
null | Any part of the mesh that isn't animated by a Blendshape will be separated into a submesh |
StripEmptyBlendshapes()
|
null | Blendshapes that don't animate any vertices will be removed from the mesh |
StripEmptyBones()
|
null | Bones that aren't weighted to any vertices will be removed from the mesh |
VisualizeBoneBounds()
|
null | Shows the bounding boxes for all of the bones in this mesh |
VisualizeApproximateBoneBounds()
|
null | |
ClearBoundsVisuals()
|
null | Hides the bounding boxes for the bones in this mesh. |