Dedicated Editor Window
The Asset Validator comes with its own dedicated Editor Window that offers an efficient, straightforward way to configure, run, and see the results of validation. Validation results can be grouped by the type of validator or area of validation (scene, project, or misc).
Ping Validation Targets in the Project or Scene
When objects have been identified with validation issues either in a scene or project, it is easy to identify them! By using the Asset Validator editor window, you can easily navigate to where these objects reside and ping them, making them pop out in the Unity Editor. This way when there are validation issues, it is easy to identify, find, and fix them.
Different Types of Validators
There are different types of validators to help cover every use-case and included with the Asset Validator are several examples of each.
- ObjectValidators target either a derived class of MonoBehaviour or ScriptableObject decorated with a target Attribute and validates that type.
- FieldValidators validate specific fields decorated with a target Attribute on derived classes of MonoBehaviour and/or ScriptableObject.
- CrossSceneValidators aggregate information across a set of scenes and validate based on the results.
- ProjectValidators are run once per validation run when targeting project assets; an example of this includes the ResourcePathProjectValidator which attempts to make sure files exist at all resource paths returned by all ResourcePathContracts found in the project.
Unit and Battle Tested
This is a hardened tool that I use in both my client's and my own projects. To ensure its stability and reliability I built the majority of it using TDD or Test Driven Development. I've added unit tests for a great deal of the base functionality and for most of the validators.
The full source code for the Asset Validator is available on GitHub underneath the MIT license, allowing for non-commercial and commercial project usage. If you develop and ship a game using the Asset Validator, please let me know and I'll feature your game!
The Asset Validator has out of the box support for running in a Continuous Integration scenario as a Unit Test and can be configured to fail the test or not and/or write a plaintext, CSV, or HTML log of the results. This means you can be validating your project in an automated fashion that fits your needs.
There is a public roadmap for the Asset Validator on Trello found here; I try to take as much feedback on this tool via Twitter, GitHub, etc... and turn it into actionable backlog items. View the board and vote on features to influence development; likely the most voted on features will get priority over others.