Troubleshooting Guide
Rapid Diagnostics & Solutions for Common Integration Issues
If you encounter unexpected behavior during setup, consult this diagnostic runbook.
1. Demo Materials Appear Pink / Magenta
- Root Cause: The sample scenes in
Assets/Decnet/Perch/Examplesuse shaders built for the Universal Render Pipeline (URP). If your project is using the Built-in Pipeline or lacks an active URP Asset, materials fail to compile. - Solution:
- Open
Edit > Project Settings > Graphics. - Ensure a valid Universal Render Pipeline Asset is assigned.
- Repeat in
Edit > Project Settings > Quality. (Note: The core C# runtime code is pipeline-independent and works with custom shaders in any pipeline).
- Open
2. Creature Wanders but Never Lands
- Root Cause: Policy filtering, mismatched references, or unassigned colliders.
- Diagnostic Steps:
- Open
Window > Perch > Landing Debuggerand select the creature. - Check Decision Status: If it says
CooldownActiveorMinimumFlightActive, the creature is simply waiting for its policy timer to expire. - Check Last Failure Reason:
- If
InvalidSetup: EnsureWorld,Profile,Motor, and slotSupport Colliderfields are not null. - If
TagMismatch: Ensure creature profile tags match slot tags. - If
NoCandidates: Ensure the creature is within 50 meters of the perch.
- If
- Open
3. Immediate StartOverlapped Error
- Root Cause: At the moment the creature initiates trajectory planning, its physical body sphere collides with external scene geometry (such as an overhanging tree branch, cave roof, or terrain collider).
- Solution:
- Expand creature roaming waypoints away from tight corners.
- Adjust
BodyRadiusinPerchCreatureProfileif the collision sphere is larger than the actual creature mesh.
4. Feet Hover in Mid-Air or Clip Through Branches
- Root Cause: Uncalibrated contact anchor or bone origin offset.
- Solution:
- Select the creature’s
PerchRigBindingcomponent. - Align the
ContactAnchorTransform precisely with the lowest vertices of the feet mesh (not the hip bone origin). - Click Calculate Offset from Anchor to refresh root offsets.
- Select the creature’s
5. Wings Snap or Skeletons Jitter Violently
- Root Cause: Two competing systems attempting to write to the same skeleton.
- Solution:
- Single Writer Rule: Never attach both
PerchProceduralAnimationDriverandPerchClipAnimationDriverto the same character. - Disable Root Motion: In your Mecanim Animator component, ensure Apply Root Motion is unchecked. PERCH’s motor owns root displacement.
- Single Writer Rule: Never attach both
6. Bird Circles Endlessly Around a Waypoint
- Root Cause: Waypoint arrival radius is smaller than the creature’s minimum turning circle.
- Solution:
- Increase
ArrivalRadiusonPerchWaypointFlightProviderto be $\ge 1.5\text{ m}$. - Increase
MaxTurnRateinPerchCreatureProfile.
- Increase
7. Package Manager Path Error on Windows
- Root Cause: Automated command-line Unity invocations missing environment variables.
- Solution: Ensure child processes inherit the
ALLUSERSPROFILEenvironment variable (typicallyC:/ProgramData), which Unity Package Manager requires to resolve local global registries.