A Unity 2D character controller component that mimics the behavior and API of Unity's built-in CharacterController.
CharacterController2D is a Unity component for 2D games that replicates the functionality of Unity's built-in CharacterController in a 2D environment. It provides a move-based API for handling character movement, collision detection, and platform interactions, solving the problem of building reliable and precise 2D character controllers without reinventing physics logic.
Unity developers creating 2D games, particularly those building platformers or action games requiring precise character movement and collision handling.
Developers choose CharacterController2D because it offers a familiar, easy-to-use API similar to Unity's standard tools, reduces the complexity of implementing 2D physics from scratch, and includes features like one-way platform support and debug visualization for faster iteration.
CharacterController2D is a Unity component designed for 2D games, providing a robust and familiar API similar to Unity's built-in CharacterController. It handles complex collision detection, platform interactions, and movement physics, offering a solid foundation for building precise and responsive 2D character controllers.
CharacterController2D prioritizes simplicity and familiarity, offering a straightforward setup and API that Unity developers already understand, while ensuring reliable 2D physics interactions.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses a move method similar to Unity's built-in CharacterController, making it intuitive for developers already comfortable with Unity's ecosystem.
Employs configurable raycasting for precise 2D collisions, essential for platformers where reliable hit detection is critical.
Specifically handles one-way platforms with EdgeCollider2Ds and dedicated layer masking, addressing a common need in 2D games.
Draws debug rays in the editor via Debug.DrawRay, allowing easy tuning of ray resolution for different platform sizes during development.
The Attribution-NonCommercial-ShareAlike license prohibits use in commercial games, severely limiting its practicality for many developers.
Demands careful layer masking and collider centering; missteps like non-zero horizontal offsets can cause bugs such as collider jumping when flipping.
Only supports EdgeCollider2Ds for one-way platforms, which may not fit game designs using other collider types like BoxCollider2D.