Approach and Solution
Program-Ace Ace Foundation for Unity3D is a Unity3D framework for application development that we developed for internal use. It includes many features that help to reuse frequently used code fragments, to optimize and speed up the development process.
The features include:
- The framework provides a generic state machine that allows splitting application codebase into standalone modules (states) that can be developed independently. Thus, the speed of the development process can be boosted significantly by assigning these modules to different engineers.
- The framework manages switch-over animations between states and renders the order of states content. This allows us to build window systems of almost any complexity.
- Asset/scene management system, that integrates with the app state machine and makes sure all assets needed by a state are loaded when it is displayed.
- The framework includes Unity3d engine extensions and tools that are often used by our development team.
- The framework provides the realization of MVC design template within the application.
- Provides the maximum isolation of the states from each other.
This particular platform has been developed solely for game development market players; however, the platform architecture can be used to develop almost any affiliate advertising system.
- The average time needed to develop an application has been reduced by 30%
- The framework allows several developers work on the projects simultaneously
- Due to using the framework, the stability of the apps got higher, because the code of the framework is used on many projects and is well-tested
- With this solution, our Unity projects need less QA coverage
- The solution stimulates applying of best practices in application design and architecture