LoginSignup
19
19

More than 5 years have passed since last update.

『Unity』を使って『LiveWallPaper』を作ってみる

Last updated at Posted at 2014-12-08

◆LiveWallPaperとは

スマートフォンで使えるアニメーションしてる壁紙のことです

ネイティブで作ることが多いようですが、今回はUnityで簡単に作ることができたので共有します

こんなものができます → 【 http://www.nicovideo.jp/watch/sm25055652

ちなみに、↑ の動画はノーコーディングです。 プログラム1行も書いてません

◆注意事項

※UnityのAssetを使用するため、Androidのみの作り方しか紹介できません(もしIOSも見つけたら紹介します

※UnityFree版だとできません、UnityPro版が必要となります

◆環境構築

UnityでLiveWallPaperを作るにあたって、まず環境を整えないといけません

準備するもの

・Unity (3.5.x / 4.0.x)

   - 使用するAssetが上記のバージョンしか対応していないため、これ以上のバージョンを使用している方はダウングレードしてください
   - Unityを複数のバージョンをインストールする方法でも構いません( http://docs-jp.unity3d.com/Documentation/Manual/InstallingMultipleVersionsofUnity.html

・AndroidSDK

   - バージョンは最新で大丈夫です( https://developer.android.com/sdk/index.html )
   - 今回はadt-bundle-windows-x86_64-20140702を使用して説明します

・eclipse

   - AndroidSDKの中に入ってるeclipseを使用します(ので特にインストールは不要です

・JavaDevelopmentKit ( JDK )

   - eclipseを使用する際にJDKが必要になります ( http://www.oracle.com/technetwork/systems/index-jsp-138363.html )

・LWP4Unity

   - 今回の主役です ( https://www.assetstore.unity3d.com/jp/#!/content/8483 )
   - 有料アセットなので注意!

◆制作前準備

※上記の「準備するもの」すべてがインストールを前提に話します

AndroidSDKは、Unity4.0との相性が悪くちょっとフォルダ構成を変えないとうまくビルド出来ないので変更します

adt-bundle-windows-x86_64-20140702\sdk\build-tools\17.0.0 の中にあるファイルをすべて
adt-bundle-windows-x86_64-20140702\sdk\platform-tools にコピペします(上書きとか聞かれますが上書きしなくて別に保存してください

そしてもう一つ

adt-bundle-windows-x86_64-20140702\sdk\build-tools\19.1.0 の中にある zipalign.exe ファイルを
adt-bundle-windows-x86_64-20140702\sdk\tools の中にコピペします

これでUnity4.0.x(3.5.x)でAndroidビルドができるようになりました

◆制作

--- Unity側 ---

① Unityを起動してLWP4Unityをインポートします

② 動いている事がわかるような適当なシーンを作成し保存後BuildSettingのシーンに追加します

③ PlayerSettingのOtherSetting内にある
   - MinimumAPILevel を Android2.2 'Froyo' ( API Level 8 ) に、StrippingLevel を Use micro mscorlib に変更します

03.png

043.png

   - この時 PlayerSetting の上にある ProductName を覚えておいてください、わかりやすい名前にしておくと確実です

01.png

④ PlayerSettingの設定が終わったら、AndroidでAPKファイルをビルドをします
   - Build&RunではなくBuildにしてください
   - ビルド先はどこでも構いません、わかりやすい所がいいと思います

⑤ APKファイルを出力後、eclipseで読み込むためのフォルダを出力します

⑥ Unityの上部のWindowタブから、LWP4Unityという項目が追加されています
   - LWP4Unity → CreateAndroid3DLWP を押して LWP4Unityのウィンドウを出します

05.png

06.png

   - そのウィンドウの ProductName 欄に覚えていた ProductName を入れます(必ず同じ名前にすること

07.png

⑦ その後 CreateAndroid3DLWP ボタンをクリックします
   - そうすると LWP4UnityMessege と書いてあるダイアログが出るので OK を押します

08.png

⑧ビルドに成功した場合、緑色の文字がLWP4Unityのウィンドウに表示されます(出なかった場合失敗なので、③からやり直してみてください

09.png

  - ビルド成功後、Unityのプロジェクトフォルダ内に LWP4Eclipse が生成されます(これが eclipse で開くためのフォルダです

11.png

以上にてUnityでの作業は終わりです。eclipseでの作業に移ります

--- eclipse側 ---

① adt-bundle-windows-x86_64-20140702\eclipse 内にある eclipse のアプリケーションを起動します
   - アプリケーションがいくつかありますが、アイコンが表示されている方です
   - この時エラーで eclipse 起動しない場合 JDK がインストールされていない可能性があるので確認してください

16.png

② eclipse を起動するとプロジェクトの保存場所を聞かれるので任意の場所を指定してください

10.png

③ 起動後、eclipse の File → New → Project をクリック

14.png

   - Wizards という欄の名前は無視で下の Android → AndroidProjectformExstingCode というものを選び Next を押します

15.png

   - そうすると、eclipse のフォルダを選択できるウィンドウが出て来るので 先ほどUnityでビルドした LWP4Eclipse フォルダを選択します(フォルダが間違っていなければ Finish ボタンがアクティブになるので押します。もしならない場合もう一度、Unity側のビルドを試してみてください

12.png

④ Finish ボタン押した後少し時間がかかって LiveWallPaperDemo ( Unity側のProductName )Project が開きます
   - 赤いビックリマークやエラーログは少し時間が経つと消えます
   - 消えない場合は Unity 側でもう一度ビルドか eclipse に再インポートしてください

13.png

⑤ ここまできたら PC と Android を USB で繋ぎ、Project の最上層で右クリック → RunAs → AndroidApplication をクリックすると自動でビルドされ、Androidの中にインストールされます
   - PC と Android を繋ぐ場合は Android を デベロッパーモードにして繋いでください ( http://juggly.cn/archives/75086.html )
   - Android の画面ロックを解除しないとインストールされないことがあるので画面ロックを解除しておくと確実です

17.png

   
以上、eclipse での作業は終了です

◆実際に実機の Android で見てみる

・ Android の設定画面から、壁紙 → ホーム画面を選び その中にある LiveWallPaperDemo ( Unity 側の ProductName )の壁紙を設定します( GALAXYS5 ではこれでいけました)

・その後ホームへ戻ると作成した、アプリが LiveWallPaper として表示されていると思います

◆最後に

おつかれさまでした

ここまでひと通りできた方は MMD4M など使って自分の好きなキャラなどをスマートフォンに住まわせるのも楽しいかもしれません

慣れてきた方は、いろいろ試して見てもらえるとこれをまとめた自分としても嬉しいです

なお、コメント欄でわからないところなど言っていただければ出来る限り対応しますのでお気軽にどうぞ

19
19
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
19