Perspective Removal Guide¶
This section covers potential issues when using NiloToon's Perspective Removal feature and how to resolve them.
Incorrect Culling at Screen Edges¶
If a character's renderer disappears when close to the edge of the screen, Perspective Removal may be the cause.
Solution 1: Update When Offscreen¶
First, enable Update When Offscreen on all character Skinned Mesh Renderers.

Solution 2: Enlarge Bounds¶
If the above method does not solve the issue, make the Skinned Mesh Renderer's Bounds larger. Enlarging the bounds can prevent Unity's culling system from incorrectly culling the renderer.

Cause
Unity's culling system always uses geometry without Perspective Removal applied for culling. There is no way to modify Unity's culling system without access to Unity's source code.
Attached Objects Not Matching Perfectly in 3D¶
Only the NiloToon_Character shader can receive Perspective Removal. Other shaders that do not support this feature will not be affected by Perspective Removal (e.g., hands may not perfectly grab a weapon/microphone).
Simple Method¶
Drag the target object's renderer into the NiloToonPerCharacterRenderController script's attachmentRendererList. The target object must use NiloToon's Character Shader, and its own NiloToonPerCharacterRenderController must be disabled.

Complex Method¶
- Add the NiloToonCharacterRenderOverrider script to any GameObject
- Drag the character's root script to the TargetCharacterRenderController slot
- Drag all attached objects (e.g., weapons) to Targets

Result
If all renderers inside Targets are using the NiloToon_Character shader, all targets' Perspective Removal results will be synchronized with the character (the Perspective Removal result will be applied identically).