Karasu tengu (talk | contribs) removed warning |
Karasu tengu (talk | contribs) Updated page |
||
Line 1: | Line 1: | ||
The RenderTransformOverride component is used to scale, transform or rotate a [[Slot]] following a specific rendering context. | {{Infobox Component | ||
|Image=RenderTransformOverrideComponent.png | |||
|Name=Render Material Override | |||
}} | |||
The RenderTransformOverride component is used to scale, transform or rotate a [[Slot]] following a specific rendering context. This component is automatically used on all Resonite avatars and is required for Screen mode to work properly. | |||
It can be used, for instance, to scale a player's head to zero locally to effectively hide it from the user's view while it still being visible in mirrors, cameras and by other players. | It can be used, for instance, to scale a player's head to zero locally to effectively hide it from the user's view while it still being visible in mirrors, cameras and by other players. | ||
Line 6: | Line 10: | ||
{{Table ComponentFields | {{Table ComponentFields | ||
|Context|RenderingContext|The Context when rendering from to apply this override.|PositionOverride|'''[[Type:Nullable`1|Nullable`1]]<[[Type:Float3|Float3]]>'''|TypeAdv1=true|If not null, will override the position of the slot this component is on.|RotationOverride|'''[[Type:Nullable`1|Nullable`1]]<[[Type:FloatQ|FloatQ]]>'''|TypeAdv2=true|If not null, will override the rotation of the slot this component is on.|ScaleOverride|'''[[Type:Nullable`1|Nullable`1]]<[[Type:Float3|Float3]]>'''|TypeAdv3=true|If not null, will override the scale of the slot this component is on.|SkinnedMeshRenderers|{{RootFieldType|SyncRefList`1|[[Component:SkinnedMeshRenderer|SkinnedMeshRenderer]]}}|TypeAdv4=true|List of SkinnedMeshRenderers that need to be recalculated and overridden.}} | |Context|RenderingContext|The Context when rendering from to apply this override.|PositionOverride|'''[[Type:Nullable`1|Nullable`1]]<[[Type:Float3|Float3]]>'''|TypeAdv1=true|If not null, will override the position of the slot this component is on.|RotationOverride|'''[[Type:Nullable`1|Nullable`1]]<[[Type:FloatQ|FloatQ]]>'''|TypeAdv2=true|If not null, will override the rotation of the slot this component is on.|ScaleOverride|'''[[Type:Nullable`1|Nullable`1]]<[[Type:Float3|Float3]]>'''|TypeAdv3=true|If not null, will override the scale of the slot this component is on.|SkinnedMeshRenderers|{{RootFieldType|SyncRefList`1|[[Component:SkinnedMeshRenderer|SkinnedMeshRenderer]]}}|TypeAdv4=true|List of SkinnedMeshRenderers that need to be recalculated and overridden.}} | ||
== Examples == | |||
[[File:ModifiedRTO.png|400px|thumb|left|A modified default]] | |||
Resonite places a RenderTransformOverride on every avatar's head position and drives the active state, rotation and position with a [[Component:AvatarUserViewHeadOverride]]. You can expand this to also hide the head from your viewpoint by breaking the drive from the active state, and enabling the Scale option. | |||
== Bugs == | |||
This component has a very small chance to increase the frequency of crashes.<ref>https://github.com/Yellow-Dog-Man/Resonite-Issues/issues/269</ref> This component will not function correctly if there are any Null fields in the SkinnedMeshRenderers list.<ref>https://github.com/Yellow-Dog-Man/Resonite-Issues/issues/2474</ref> This component currently has an imprecise understanding of the UserView context and will active while an item is grabbed or when saving a thumbnail to the inventory.<ref>https://github.com/Yellow-Dog-Man/Resonite-Issues/issues/3732</ref> This component will cause a blurring issue in cameras and mirrors that use motion blur.<ref>https://github.com/Yellow-Dog-Man/Resonite-Issues/issues/1654</ref> | |||
== Notes == | |||
<references /> | |||
[[Category:Components:Rendering{{#translation:}}|Render Transform Override]] | [[Category:Components:Rendering{{#translation:}}|Render Transform Override]] | ||
[[Category:Components{{#translation:}}|Render Transform Override]] | [[Category:Components{{#translation:}}|Render Transform Override]] |
Revision as of 15:35, 10 March 2025

The RenderTransformOverride component is used to scale, transform or rotate a Slot following a specific rendering context. This component is automatically used on all Resonite avatars and is required for Screen mode to work properly.
It can be used, for instance, to scale a player's head to zero locally to effectively hide it from the user's view while it still being visible in mirrors, cameras and by other players.
Fields
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. Some components stop their functionality when this field is disabled, but some don't. |
Context
|
RenderingContext | The Context when rendering from to apply this override. |
PositionOverride
|
Nullable`1<Float3> | If not null, will override the position of the slot this component is on. |
RotationOverride
|
Nullable`1<FloatQ> | If not null, will override the rotation of the slot this component is on. |
ScaleOverride
|
Nullable`1<Float3> | If not null, will override the scale of the slot this component is on. |
SkinnedMeshRenderers
|
list of SkinnedMeshRenderer | List of SkinnedMeshRenderers that need to be recalculated and overridden. |
Examples

Resonite places a RenderTransformOverride on every avatar's head position and drives the active state, rotation and position with a Component:AvatarUserViewHeadOverride. You can expand this to also hide the head from your viewpoint by breaking the drive from the active state, and enabling the Scale option.
Bugs
This component has a very small chance to increase the frequency of crashes.[1] This component will not function correctly if there are any Null fields in the SkinnedMeshRenderers list.[2] This component currently has an imprecise understanding of the UserView context and will active while an item is grabbed or when saving a thumbnail to the inventory.[3] This component will cause a blurring issue in cameras and mirrors that use motion blur.[4]