Project Tiny is a new modular Unity runtime and Editor mode designed to build games and experiences that can load instantly and without install. As of today, it’s available as a preview package for Unity 2018.3, called Tiny Mode, via the Package Manager.
Project Tiny gives developers the tools they need to quickly create quality 2D instant games and playable ads that are small in size and have a blazing fast startup on a wide range of mobile devices. Check out Tiny Arms Revenge, an instant game created with Project Tiny. The initial transfer gets the game started in only 969 KB compressed data (162 KB engine, 199 KB game code, 597 KB of art). An additional 861 KB in audio files loads in as the game plays totaling 1.8 MB for the full project.
Please note that project Tiny is currently in Preview and is considered an unfinished product until its public release next year. During the Preview period, we are looking for feedback from a broader range of customers to ensure that the feature set, workflows, performance, and stability meet your needs. We plan on a number of iterations between now and the public release and look forward to hearing your feedback to help us improve the product. While you are welcome to use the product in production, please note that Project Tiny is still in Preview and ongoing development can introduce changes and bugs.
Features and functionality
Project Tiny is built using a modular architecture, letting you pick and choose what functionality to include. It uses a pure data-oriented ECS approach which results in high performance with a small code size. The current feature set is focused on building instant 2D games and playable ads. In future releases, additional features will be added to build instant 3D and AR games and experiences. You can find more detailed feature and functionality information on our Solutions page.
Our data-oriented ECS architecture lets us achieve exceptional performance. For example, on an iPhone 6S the Tiny runtime can display 3-4 times as many moving, animated sprites while maintaining 60fps compared to other leading 2D engines that target the web. We also see around 350-600 millisecond engine load times on similar hardware. We achieve this performance by reducing, and in some cases entirely eliminating, engine overhead which leaves more time every frame for your own gameplay logic. Leveraging this properly can allow you to produce richer content, or reach a broader set of devices.
Unity is working on bringing extremely high performance to C#, such as with our Burst compiler work. We are also working on allowing developers to write C# code while still resulting in small code size. While Project Tiny currently uses Typescript for writing game logic, it will be replaced with C# during the Preview period. With C#, we will be able to produce even smaller codes size and better performance, as well as provide an improved debugging experience. We’ll also be able to take advantage of technologies such as Burst, even when targeting the web. It is important to note that we will be removing Typescript once support for C# is ready.
Ready to get started?
Project Tiny is delivered as a package called “Tiny Mode”. To install it, open the 2018.3 beta Package Manager, enable Preview Packages, and install Tiny Mode. It can be used with all Unity licenses – Personal, Plus, Pro. You can find the Tiny User Manual, API documentation and sample projects in the preview package download. There is also a playlist of training videos below that will help you get up to speed with Tiny. Visit the forums for more information or to provide feedback. We look forward to hearing what you think!