ゲーム関連
インスタント 2D: ゲームとプレイアブル広告

Unity の高度にモジュール化された最新のランタイムと Editor モードが小さくて軽く、しかも高速の 2D インスタントゲームとプレイアブル広告の制作を可能にします。

プロジェクトをスタートする方法

Project Tiny は「Tiny Mode」と呼ばれるパッケージで提供されます。

インストールの方法:
2018.3 Package Manager を開き、

Preview Packages を有効にし、

Tiny Mode をインストールします。

Unity Personal、Plus、Pro のすべてのバージョンで利用できます。プレビューパッケージのダウンロードには Tiny Mode ユーザーマニュアル、API ドキュメント、サンプルのプロジェクトが含まれています。 フォーラム  ではさらに詳しい情報を手に入れることができます。次のトレーニング動画もご利用ください。 こちら

Tiny Arms のデモ

こちらは Project Tiny を利用して作った 2D インスタントゲームのサンプルです。Project Tiny の初期の圧縮されたサイズは 969 KB (エンジン 162 KB、ゲームコード 199 KB、アート 597 KB)。ゲームプレイ中にさらに 861 KB がオーディオファイルとしてロードされ、プロジェクト全体で 1.8 MB になります。

特徴と機能

Tiny Mode エディターの特徴

ECS エディター
Tiny Mode には、ECS による開発の簡略化に重点を置いたエディターの作り直しが含まれています。Unity を使用する開発者は、ワークフローがなじみ深く使いやすいことや、データ指向のアプローチのおかげでさまざまなデバイスでのスピードを最大化するためのサイズと能力の微妙な調整が可能であることに気づくはずです。  

Live Link
Live Link は、モバイル端末でのテストに際して、新しい作業の仕方を提供してくれます。開発者はエディターに接続されたデバイスがどれだけ多くても、プレイボタンが押されるたびに自動更新を行うことができます。さらに、プライマリデバイスの現在の状況のスナップショットを撮り、その状況をエディターに反映することができます。

ビルドサイズのレポート
ビルドサイズのレポートのツールは肥大化している部分を特定し、サイズの最適化をすべき場所を知るために欠かすことができません。

プレハブ
Tiny Mode は ECS にプレハブを持ちこみ、コンポーネントやプロパティを備えたエンティティをディスクに保存することを可能にします。それらはテンプレートとして機能し、それを使ってプロジェクトで新しいエンティティインスタンスを作成することができます。プレハブアセットに対して行われた変更は、それをもとに作られたすべてのインスタンスにただちに反映されますが、各インスタンスのコンポーネントや設定を個別にオーバーライドすることも可能です。

コアエンジン

Core
このモジュールは、スリムなランタイムにおいて最も重要な部分です。高度にモジュール化されたデータ中心のアーキテクチャがファイルサイズの微妙な調整を可能にし、その結果、軽量デバイスでの高速パフォーマンスと超高速の配信および起動時間が実現します。

Core2D
Core2D モジュールは、トランスフォーム階層、2D カメラ、指やマウスによる入力をサポートします。

Math
Math モジュールは、標準数学の機能の効率的な実行を可能にし、他の依存モジュールをサポートするために必須のツールです。

EntityGroup
EntityGroup モジュールは、ランタイムにおけるシーンやプレハブフラグメントのインスタンス化と破壊を可能にし、レベルの切り替えはもちろん、ゲーム世界の大胆な構築を実現します。

Watcher
Watcher モジュールは、コンポーネントを監視し、変化が起こったときに反応できるようにします。Watcher が一定の方法で値が調整されたことを検知すると、コールバックが誘発されます。これは UI を作成するときに特に便利な機能です。

インターフェース

UILayout
UILayout モジュールは、軽量の UI システムで、UI のレイアウトと UI の構築要素をサポートします。アンカーベースのシステムは、オートスケールをサポートし、モバイル端末の方向の変化に対応します。また uGUI と類似のワークフローを持っています。

Text
Text モジュールを使うと、UI 用に定型化された、テクスチャベースのフォントを用いることができます。テクスチャベースのフォントはサイズを大きくすることができ、ダウンロードしなければならない文字の数を制限できるときに最適です。

TextHTML
このモジュールは、広くサポートされているデバイス搭載のシステムフォントへのアクセスを可能にします。すでに用意されているフォントを使うことによって、サイズを縮小することができます。入力欄など、そこで使われる文字の範囲を開発者が制御しにくい場合などに最適です。

UIControls
UIControls モジュールは、ユーザーを魅了できるインターフェースをより短時間で作成できるようにします。現在サポートされているのはボタンと切り替えスイッチのみですが、今後、増やす予定です。

アセット

Audio
Audio のモジュールは BGM やサウンドエフェクトで製品に命を吹き込みます。再生、一時停止、ループの機能を持ち、.mp3、.wav、.ogg などを始め、ウェブでサポートされているすべてのオーディオファイルのフォーマットに対応しています。

Image2D と Sprite2D
Image2D と Sprite2D モジュールは、2D 体験の制作に欠かせない画像とスプライトのレンダリング機能を提供します。フリップブックのようなスタイルのスプライトのアニメーションも可能です。

Particles
Particles のモジュールは、体験に花火や雨や爆発などの要素を追加してプロジェクトに磨きをかけます。パーティクルシステムを使えば、この種のタイプのエフェクトを実現するための小さな 2D 画像を大量かつ効率的に作りだしたり動かしたりすることができます。

Tilemap
Tilemap は、複雑な 2D のレベルを作成するときに、豊かな風景を迅速かつ簡単に作りだすのに役立ちます。 このモジュールを追加することによって、タイルマップのサポートやツーリングにアクセスできるようになります。

Video
Video のモジュールは、体験に動画を組み込みたい場合に、HTML5 の全画面表示の動画再生のランタイムを拡張します。

物理と衝突

HitBox2D
このモジュールがあれば、画面上の 2 つの要素の衝突を重い物理なしに正確かつ迅速に検出することができます。HitBox2D はエンティティの間のヒットや衝突を検出することによってこの機能をサポートします。

Physics2D
Box2D をベースとするこのモジュールは、2D プロジェクトでの物理の使用、さらには衝突検出や 2D 物理シミュレーションのような種々の物理要素を実装するためのツールの使用を可能にします。

アニメーション

Tween
このモジュールは、2つの値の間のスムーズな推移を迅速かつ簡単に実行するためのものです。色、位置、スケールなど、どのようなコンポーネントの値にも適用できます。

Animation
このモジュールは、エディター内で 2D アニメーションを作成、修正するのに使われます。スプライトや UI 要素の移動、サイズ変更、回転を簡単にします。Unity 2019.1 ではこのモジュールの全機能が利用可能になります。

プラットフォームの統合

HTML
このモジュールは、あなたが作った軽量で高品質なすばらしいゲームを受け取り、ウェブで配信できるようにビルドするためのものです。 このモジュールがあれば、HTML5 配信用のゲームをビルドすることも可能です。

PlayableAd
PlayableAd モジュールがあれば、簡単にプレイアブル広告を制作することができます。MRAID ライフタイムイベントを統合し、標準規格(MRAID 2.0)をサポートするネットワークに広告ユニットとしてプロジェクトを供給することができます。Unity’s Ad のネットワークならワンクリックで出荷できます。さらにテスト用アプリケーションのおかげで UnityAds の環境を使ってデバイスでのテストも行えます。

開発者ツールとサービス

プロファイラー
このモジュールは、開発者にプロジェクトのパフォーマンスとリソースの使用状況に関する情報を提供することによって、プロジェクトがパフォーマンスの目標を達成するのを手助けします。 CPU のタイミングデータのフィードバックを利用して、ゲームを実行しているデバイスから直接届くデータをエディターで確認、分析することができ、それによってゲームを最適化できます。

Project Tiny のチュートリアル

このチュートリアルのプレイリストは、コアの ECS アーキテクチャのコンセプトとそれと Project Tiny との関係、そしてこの新しいアーキテクチャを使ってプロジェクトを構築する方法の基本について解説します。               

質問がある場合やフィードバックを提供したい場合は、フォーラムに移動してください。

よくある質問

When will Project Tiny be released?

You can download the Preview version now! See the question below for how to get started. The public release of Project Tiny will be in 2019.

How do I get started with Project Tiny?

Project Tiny is delivered as a package called "Tiny Mode". To install it, open the 2018.3 Package Manager, enable Preview Packages, and install Tiny Mode. It will be available to all versions of Unity -  Personal, Plus, Pro.

Will Project Tiny support 3D or AR?

The initial release is focused on 2D games. Unity is a 3D engine and Project Tiny will support 3D and AR in future versions.

What documentation and/or training material is available?

Tiny Mode User Manual, API documentation and sample projects will be provided in the preview package download. Training videos are available on this page below. You can also visit the forums for more information.

What kinds of projects is Project Tiny best suited for?

Right now, 2D messaging or social app games and playable ads. The initial features are focused on these first two main use cases.

Can I use Project Tiny for other use cases outside of those two use cases?

Yes, right now Project Tiny only has the ability to export to a generic web target. While we focus our efforts on our initial two use cases, the result is that the majority of the features we create will benefit a much wider audiences.

Will it include full Unity capabilities?

No, to get the size down, many of the systems in Unity have been rewritten to remove large code size dependencies. This initial release prioritizes a stable and performant core, and has a feature set that supports the two initial use cases - 2D Games and Playable Ads. More capabilities will be delivered in future releases.

How small is the core runtime?

The core runtime is under 100KB (compressed javascript). Each module you add comes with additional functionality and size costs.

What is the raw size of the runtime?

To get a basic 2D game that is built for HTML5 delivery, the minimum collection of modules add up to 142 KB when compressed for transfer, and 730 KB uncompressed. Generally the uncompressed engine is around 4 to 5 times bigger. The compressed engine is optimized for size, and when uncompressed, it is optimized for startup time and performance.

How fast does a playable ad or game load?

For simple playable ads, depending on the complexity and size of the assets, under one second. This is highly dependant on the hardware you are shipping on and how you build your ad.

Can I use existing art assets?

Yes, as long as they are supported by the runtime. Project Tiny uses the Unity asset pipeline to maximize compatibility with existing content and workflows. The range of supported asset types and tools will grow with time.

What programming languages will be supported for developing game logic?

TypeScript is supported right now, with C# in the works. C# is the primary language of the Unity ecosystem and provides smaller and faster code. As a result, we will only be support C# once it’s ready.

Will I be able to use code from existing projects with Project Tiny?

Project Tiny will not support code from existing Unity projects without modification. The runtime is ECS-based and requires a different coding approach. We will be releasing tutorials that will help you convert your projects closer to the public release in 2019.

Will I be able to use my Asset Store purchased tools?

Not right now. The Runtime and Editor APIs are fundamentally different. In the future, asset store publishers will be able to extend Tiny by adding Tiny Modules in their packages.

What platforms are supported?

Project Tiny supports HTML5 targets. It support 2D WebGL and 2D Canvas rendering targets with the option to default to WebGL and fall back to 2D Canvas. The engine has been designed to be multiplatform. Native runtime support is planned for 2019.

What is the future of the existing WebGL Build Target?

The WebGL export target supports the majority of Unity features and enables many use cases that need desktop web deployment. The current plans are to continue support as long as demand continues.

What is the difference between WebGL Build Target and Project Tiny?

There is certainly some overlap between the two projects. The WebGL Build Target supports most of the features Unity ships with.The trade off is that the resulting projects are large which result in longer transport and startup times. If your goal is to publish more complex web-based simulations that run on desktop browsers, this is a strong option.

Project Tiny is a much lighter approach that provides very fast load times and small delivery size. This is achieved by providing fine grain control over what code modules are included. Project Tiny is designed for mobile viability which is why the initial release is recommended for Playable Ads and Games that run in messaging apps or social media platforms.

Can Project Tiny be used for other use cases?

Yes. However, we want to make sure developers have the right expectations. The initial release will be a limited feature set that has what you need for the two use cases mentioned above. More features will be added that enable a broader set of use cases in future releases.  

Will Project Tiny HTML5 output work in a desktop browser?

Yes, we test both Mobile and Desktop. Getting things to work well on mobile is the primary focus and features sets are largely tailored to fit within the practical limits of existing devices.

If I need support what is available?

During the Preview (public beta), developers will be able to get support via the forums on a limited basis.

Playable Ads
Can I take my existing Unity game and export as a playable ad?

No, you can use your existing 2D assets, but game logic and scenes are not directly transferable at this time.

Can I publish the ad to (insert ad network here)?

Yes, output is an HTML5 ad that will be able to be used pretty much anywhere. We will have streamlined interfaces that make it easy to ship inside Unity. Currently, we only support HTML5 output.

Are the resulting ads MRAID-compliant?

Yes, to a limited set of MRAID standards that are required by the Unity Ads network

Do I need to write code to create a playable ad?

Yes.

Can I create a Playable Ad with Project Tiny from a game I created in Unity?

You can create a playable ad inside the same project as a Unity game, however you will need to recreate the ad game logic. Most 2D assets are reusable.

What platforms does it support?

The resulting ads run in any standard HTML/Web-based ad container.

Can I use it to ship my ad on any platform?

No, it is intended for shipping HTML playable ads. With time, we will provide a broader set of options but the the initial release will be focused on HTML5 only.

We use cookies to ensure that we give you the best experience on our website. Click here for more information.