SideXP - Core (Unity)¶
Core SideXP library for Unity, used as a dependency by most of our other packages.
As a general rule, this package is meant to be used as a foundation for our other packages, and can be imported safely in any project. It follows the following recommendations:
- not tied to a specific Render Pipeline
- not alter the way Unity works or its expected usage by default
- not have dependencies to our other packages
- not have dependencies to specific Unity packages or third-party libraries
Feature Highlights¶
- Inspector attributes: decorate fields to change how they draw or behave, without a custom editor (
[Readonly],[EnableIf],[ProgressBar],[Remap], ...). - Type extensions: fluent one-liners for Unity and C# types (
TransformExtensions,IEnumerableExtensions, and (in the editor)SerializedPropertyExtensions, ...). - Utility classes: focused static helpers such as
MathUtility,ColorUtility,TransformUtility(pooling & hierarchy), and (in the editor)ObjectUtility, ... - Weighted random:
ProbabilityList<T>, an inspector-editable weighted collection for loot tables, spawn tables, or random events. - Inline sub-assets:
SubassetsList<T>lets you author nestedScriptableObjects straight from the parent asset's inspector. - Editor-friendly serializable types:
OptionalValue<T>,Range/RangeInt,Pagination, ...
... and many more things!
Installation¶
Option 1: Using the Package Manager¶
- In your Unity project, go to
Window > Package Management > Package Manager(orWindow > Package Managerfor Unity 6.0-) - Click on the + icon in the top-left corner, and select Install package from Git URL...
- In the text field, enter the URL to this package's repository (including the
*.gitextension), and click Install - Wait for Unity to get the files, and you're ready to go!
Tip: if you need to use a specific version of this package for your project, add
#<tag-name>to the URL before clicking on the Install button.
Option 2: Extracting archive manually¶
- Go to this project's
/releaseslist - Download the ZIP file archive of your desired version
- Extract the content of that archive into the
Packages/folder of your Unity project - Wait for Unity to reload the solution, and you're ready to go!
Tip: to avoid any path issue, make sure the folder that contains the package content has the same name as the
nameproperty defined in itspackage.jsonfile.
Documentation & Help¶
If you need help or just want to chat with the community and the Sideways Experiments core team, you're welcome to join our Discord server!
Contributing¶
Do you want to get involved in our projects? Check our contributing guidelines to learn more!
License¶
This project is licensed under the MIT License.
Crafted and maintained with love by Sideways Experiments
© 2022-2026 Sideways Experiments