Struct DefaultVariantSystemBase.Rule
When defining default variants for a type, you must denote whether or not this variant will be applied to both parents and children.
Assembly: Unity.NetCode.dll
Syntax
public readonly struct DefaultVariantSystemBase.Rule
Fields
VariantForChildren
The variant to use for all child entities.
Declaration
public readonly Type VariantForChildren
Field Value
VariantForParents
The variant to use for all top-level (i.e. root/parent level) entities.
Declaration
public readonly Type VariantForParents
Field Value
Methods
Equals(Rule)
Compare two rules ana check if their parent and child types are identical.
Declaration
public bool Equals(DefaultVariantSystemBase.Rule other)
Parameters
Returns
ForAll(Type)
This rule will add the same variant to all entities with this component type (i.e. both parent and children a.k.a. regardless of hierarchy).
Note: It is not recommended to serialize child entities as it is relatively slow to serialize them!
Declaration
public static DefaultVariantSystemBase.Rule ForAll(Type variantForBoth)
Parameters
Type |
Name |
Description |
Type |
variantForBoth |
|
Returns
GetHashCode()
Unique HashCode if Variant fields are set.
Declaration
public override int GetHashCode()
Returns
Overrides
OnlyChildren(Type)
This rule will only add this variant to child entities with this component.
The parent entities with this component will use the default serializer.
Note: It is not recommended to serialize child entities as it is relatively slow to serialize them!
Declaration
public static DefaultVariantSystemBase.Rule OnlyChildren(Type variantForChildrenOnly)
Parameters
Type |
Name |
Description |
Type |
variantForChildrenOnly |
|
Returns
OnlyParents(Type)
This rule will only add the variant to parent entities with this component type.
Children with this component will remain DontSerializeVariant (which is the default for children).
This is the recommended approach.
Declaration
public static DefaultVariantSystemBase.Rule OnlyParents(Type variantForParentOnly)
Parameters
Type |
Name |
Description |
Type |
variantForParentOnly |
|
Returns
Unique(Type, Type)
This rule will add one variant for parents, and another variant for children, by default.
Note: It is not recommended to serialize child entities as it is relatively slow to serialize them!
Declaration
public static DefaultVariantSystemBase.Rule Unique(Type variantForParents, Type variantForChildren)
Parameters
Type |
Name |
Description |
Type |
variantForParents |
|
Type |
variantForChildren |
|
Returns