青空の月

Unity, C#, アプリ開発関連について。

unity

AssetStoreで販売するために必要な画像

アセットストアで顔となる画像について。 ガイドラインにあるようにAssetStoreでアセットを紹介するために必須な画像は3種類ある。 big - 860 x 389 small - 200 x 258 icon - 128 x 128 この画像を作成するためのテンプレートがすでに用意されているのでそ…

Asset登録画面 入力項目について

前回のPublisher Accountを設定すると左上のPackageボタンが押せるようになるので[Create new]を選択する ここに登録するアセットの情報を入力する。

販売者アカウント(Publisher Account)の設定

前回はAssetStoreのアカウントを作成した。 次は、販売するためのアカウント設定を行う。ちょっと紛らわしいけど、各Assetの説明ページの販売者名をクリックしたページに表示される情報になる。 この販売者アカウントの設定を行わないとアセットの登録ができ…

Asset Storeアカウント作成

AssetStoreで販売する為にやること。 まず、Unityが公開している「Asset Store Tools」をImportする。 https://www.assetstore.unity3d.com/#/content/115 アセットを申請したり 、必要な機能は「Asset Store Tools」に詰まっている。 インポートすると、メ…

Asset Storeで販売する前に知っておくこと

UniteJapanで聞いた話だと日本人でアセットストアで販売している日本人はまだ10人くらいらしい。販売する方法とかググってもまだ出てこないのが原因の気もするのでとりあえず試しにAssetを登録してみたので、備忘録的に申請方法を載せてみる。 個人的には…

EzSMTPMailer 販売開始しました

アセットストアで販売開始しました。 Yahoo!メールとかGmailのSMTPを使ってUnityからメールする機能を簡単に実装できるよってモノです。 エンジニアなら自作できるような機能だけど、時短できればいいのかな。 コレを登録した一番の目的はアセットストアに登…

Build Report Tool

役に立ちそうなアセットを見つけたので備忘録的に紹介 Build Report Tool おそらく、Buildした時にログに出るビルド情報を解析してレポート形式にしてくれるAssetだと思う。 50MBに抑えたい、何のリソースが容量を喰っているか気になる時にグラフィカルに…

enumの値をランダムで取得する

enumの値をランダムで取得する方法。 C#のLinqを使ってランダム取得する。結構、汎用的に使えそうなのでUtilityクラスにでも入れとくといいかも。 using UnityEngine; using System.Collections; using System.Collections.Generic; using System; using Sys…

UnityEditor再生時にエディターの色を変える

自分も以前、Unity勉強会で教えてもらった、エディターの色を変える方法。 変えるとこんな感じに全体の色が変わる。 設定は簡単で、Preferences>ColorsのGeneral「Playmode tint」で変更できる。 やり過ぎると文字まで潰されるので、ちょうどいい感じの色を…

端末情報を取得する

Unityで端末の情報を取得するために「SystemInfo」クラスが用意されている。実行するとどんな値が返ってくるのか試してみた。 MBPとWindowsはUnityEditorで実行した結果。 iOS端末でiPhone5やiPod Touch、iPhoneの世代は「iPhone.generation」で取得できる。…

端末固有の値を取得する

iOSは前々からUDIDは使わないようにとアナウンスしてきて、使用しているアプリはリジェクトするって発表されています。(AppBankさん) Unityではどうかというと、Unityで端末固有の値を取得するのに 「SystemInfo.deviceUniqueIdentifier」が用意されている…

Playボタン押した後のInitializeOnLoadは無視したい

Playボタンを押すと再ビルド・コンパイルされInitializeOnLoadが実行される。スクリプト更新時にInitializeOnLoadが実行されるのは良いがPlayボタン押した後は実行させない方法を考えてみた。 EditorApplication.playmodeStateChangedでイケるかと思いきやう…

来週のUnite JapanはUst放送もするらしい

昨日放送されたニコ生のUnityパラダイスでの情報。 来週4/15, 4/16のUniteは無料でUst放送されるらしい。 Ustで流してくれるのは、グリーンとオレンジの一部でブラックは流さないとのこと。買えなかった人、行けない人はこれをチェック! Ust放送については…

Unityプロジェクトのロードが終わった後にスクリプトを実行したい。

前回はUnity起動時、スクリプト更新時直後に実行する場合。 今回は、起動直後ではなく、少し遅らせてプロジェクトが読み込み終わった後に実行させたい場合の方法。 using UnityEngine; using UnityEditor; [InitializeOnLoad] public class InitOnLoad { sta…

Unity起動時のみにスクリプトを実行させる

EditorApplication.timeSinceStartupを使用して、Unity起動時のみスクリプトを実行する方法。Editor拡張機能を実装する時に役に立つ。 using UnityEngine; using UnityEditor; [InitializeOnLoad] public class InitOnLoad { static InitOnLoad() { if (Edit…

UnityEditorの起動時間を取得する(EditorApplication.timeSinceStartup)

UnityEditorの起動時間を取得する変数。「EditorApplication.timeSinceStartup」 プレイ中、ゲーム内で使える「Time.realtimeSinceStartup」と似たような機能。 どんな時に使えるかというと、InitializeOnLoadなどを使って自動で何かしらの処理をさせたい時…

スクリプトの実行順を制御する

前回、イベント関数の実行順を紹介したけど、スクリプト毎の「Awake()」を制御したい、決まったスクリプトの順でAwakeを呼んで欲しい時がある。 そんな時はUnityEditorに標準機能の「Script Execution Order」を使って設定できる。右下の「+」ボタンからス…

イベント関数の実行順

Unityでスクリプトを書いていて、MonoBehaviourがもっているイベント関数の実行順を意識することがあると思う。 「Awake()」「Start()」「Update()」はよく使うし、意識してる人も多いと思う。 公式サイトにそれ以外の関数が実行順に整理されているのでコレ…

EditorApplication.NewSceneを使ったらエラーが出た。

EditorWindowのボタンから新しいシーンを下の様に「EditorApplication.NewScene」を使って作成しようとしたらエラーが出た。 void OnGUI() { if (GUILayout.Button("NewScene", GUI.skin.button)) { EditorApplication.NewScene(); } } 思い当たるトコが無か…

AssetServerを使わずにSVNやGitを使う時の管理対象ファイル。

AssetServerを使わずにSubversionやGitを使って、バージョン管理する必要があるファイルとフォルダ。 metaファイル AssetsフォルダとProjectSettingsフォルダ これらを管理しておけば、とりあえずOK。 デフォルトだとmetaファイルは作成されないので「Edit->…

Unity 4マスターブック

「Unity マスターブック」のUnity4対応版が出てた。初心者後半から中級者向けの内容。 収録されてるサンプルゲームは中級者向けだけど、Unityのスクリプトの説明とか基礎的な事も載っているので最初から持っていても役に立ちそう。 言語はC#。フルカラーなの…

アセットバンドルのプラットフォーム間の互換性について

アセットバンドル FAQ http://docs-jp.unity3d.com/Documentation/Manual/abfaq.html#crossplatform このページにアセットバンドルのクロスプラットフォームについて載っていた。 ビルドターゲット→読み込む環境↓ スタンドアローン Webplayer iOS Android エ…

Unity3.5から4へのアップグレード時 変更&注意点 その2

前にUnity3.5から4へのアップグレード時 変更&注意点を書いたけど、ミートアップや勉強会で話されていた方がいたのを思い出したので、そちらも目を通しておくと参考になるかも。 メガ Unity ユーザーミートアップ 2012。ミートアップの内容をSlideshowでま…

Editorログについて

Debug.Logやコンソールに吐かれるUnity Editorのログを出力する場所。Unity自体が何かの影響で起動できない時は直接ログを見る必要があるのでよく使う。 コンソール上に表示されないモノにはBuildした時のアプリの内訳、テクスチャに容量何%使って何MBとか…

エディター情報の解析「Editor Analytics」

公式サイトのマニュアル見ていて気になるタイトルがあって開いてみたら期待していたものとは違っていた。Unityが情報を収集して送信しますよって機能。 開発者のための情報かとおもいきや、Unity社の為の機能か。 巡り巡って開発者の為に役立てられるんだろ…

GameObjectにコメントを残す拡張

GameObjectにコメントを残すサンプル。みんな何かしらコメント残せるようにしてるとは思うけど。 ObjectComment.cs using UnityEngine; public class ObjectComment : MonoBehaviour { #if UNITY_EDITOR public string comment = ""; #else #endif } ObjectC…

ファイル文字コードによる日本語問題の解決方法

Unityで日本語使って文字化けした経験がある人におすすめのアセット。 こちらの方が公開している「AssetPostprocessUTF8Encode」 http://debuglog.tumblr.com/post/26550984743/utf-8 UTF8(BOM付)かチェックして自動的に変換してくれる。 今までは動かして文…

Unity3.5から4へのアップグレード時 変更&注意点

公式サイトに日本語訳で3.5→4アップグレードする際の注意点がまとまっていた。 今更感はあるけど、最近のアセットストアのアセットも4.0以降必須が増えてきたし、アップグレードする人も増えてくるのかな。 と言ってもアップグレードする時の一番問題になり…

Unityでの海賊版チェック

パズドラの中国版海賊アプリというか模倣アプリとか見てると意味なんかあるのかと疑問符がつくけど簡単にチェックできるのでとりあえず入れておいて良いのではないか。 この2つでチェックが出来るようだ。 Application.genuine Application.genuineCheckAva…

ダイアログを表示する

単純なOK・キャンセルボタンが付いているダイアログを表示する。 if (GUILayout.Button("dialogを表示", GUI.skin.button)) { bool result = EditorUtility.DisplayDialog( "たいとる", "本文", "OK", "キャンセル" ); if(result) Debug.Log("OKが押されまし…