Character Controller Pro (1.4.x)
  • Introduction
  • The package
    • Content
    • Versioning scheme
    • Importing the package
    • Using the package
    • Known issues
  • Fundamentals
    • Core
      • Character
      • Character body
      • Character actor
        • States
        • Stable movement features
        • Velocity
    • Implementation
      • Character state controller
      • Character state
      • Character brain
  • How to...
    • Core
      • Create a basic character
      • Add behavior logic to your character
      • Move the character
      • Rotate the character
      • Leave grounded state (e.g. jump)
      • Change the size of the character
      • Disable collisions (ghost)
      • Use the character information (with examples)
      • Use root motion
      • Detect a character using a "detector"
      • Add a static one way platform
      • Add a dynamic one way platform
    • Implementation
      • Organize the character hierarchy
      • States
        • Add and configure the state machine
        • Create a state
        • Transition from one state to another
        • Handle animation
        • Modify an IK (inverse kinematics) element
      • Actions
        • Define your own actions
        • Use the character actions
        • Use a custom Input Handler
        • Use the new input system
        • Create your own AI movement logic
Powered by GitBook
On this page
  • SetSize
  • CheckSize
  • CheckAndSetSize
  • CheckAndInterpolate
  1. How to...
  2. Core

Change the size of the character

PreviousLeave grounded state (e.g. jump)NextDisable collisions (ghost)

Last updated 6 months ago

As mentioned in the section, the local scale of the character should be <1,1,1> always. In order to modify the size of the character, you can use the following CharacterActor methods:

SetSize

Changes the size of the actor without checking for obstacles.

CharacterActor.SetSize(size, sizeReferenceType);

CheckSize

It performs an overlap test using the target size.

CharacterActor.CheckSize(position, size, in filter);

CheckAndSetSize

It performs an overlap test using the target size. If the test is valid (a.k.a no obstacles detected), it changes the size.

CharacterActor.CheckAndSetSize(position, size, in filter, sizeReferenceType);

CheckAndInterpolate

It performs an overlap test using the target size. If the test is valid (a.k.a no obstacles detected), it begins to lerp the size from current to target size.

CharacterActor.CheckAndInterpolateSize(size, lerpFactor, in filter, sizeReferenceType);
Character body