概要
汎用的に使われやすいシーン管理に関してスクリプトをまとめました。
主な機能としては「シーン切替」「切替中のコールバック」「切り替え演出」が実装されています。
続きを読む汎用的に使われやすいシーン管理に関してスクリプトをまとめました。
主な機能としては「シーン切替」「切替中のコールバック」「切り替え演出」が実装されています。
続きを読むScrollViewの要素をオブジェクトプールにして使いまわすスクリプトを作成しました。
実行中にScrollViewのサイズが変わった場合は再構築されます。
続きを読むhttps://okamochi-storage.com/wp-admin/post.php?post=195&action=edit
以前の記事で作成したセーフエリアの調整を改良して、横持ち対応にしました。
使用方法はGitHubのReadmeをご覧ください。
続きを読むUnityでフリーのWebViewを探すと対応プラットフォームにWindowsがないことが多いです。
例えば、greeのunity-webviewではios,Android,macのみがサポートされています。
リダイレクトの取得が必要なWebViewをWindowsのEditor上で実行したいときにおすすめなのが、「WebViewHook」です。
例えばAuth0認証でトークンがリダイレクトされるようなときは、WebViewHookのLoadErrorにコールバックを設定してURLを受け取るという動作が出来ます。
Androidに搭載されているセンサー情報を取得するプラグインを作成しました。
続きを読むテキストサイズに合わせて自動でサイズ調整をする吹き出しUIです。
LayoutGroupの設定で一時期ハマっていたのでまとめました。
続きを読むUnityにはオクルージョンカリングの機能があり、カメラに映らないオブジェクトのレンダリングを省いてパフォーマンスを向上させています。
今回はUnityの標準機能でできることを調べました。使い方については省略しています。
続きを読むEditor拡張した際、IntField等で値を更新するだけでは値は保存されていません。
別途シーンの更新があって保存した場合は一緒に更新されますが、それ以外の場合はUnityを閉じたときやアプリを再生したときに値が戻ります。
そのためシーン内にいるとき、プレハブを編集するときに更新があれば保存する処理を入れる必要があります。
using UnityEditor;
using UnityEditor.SceneManagement;
public override void OnInspectorGUI()
{
EditorGUI.BeginChangeCheck();
// 省略
// Instance = (クラス名)target
if (EditorGUI.EndChangeCheck())
{
string path = Instance.gameObject.scene.path;
if (path == null || !path.Contains(".unity")) { EditorUtility.SetDirty(Instance); }
else { EditorSceneManager.MarkSceneDirty(EditorSceneManager.GetActiveScene()); }
}
}
SerializeObjectを使う場合は下記になります。
using UnityEditor;
public override void OnInspectorGUI()
{
serializedObject.Update();
// 省略
serializedObject.ApplyModifiedProperties();
}
様々なモバイル端末の画面シミュレートがEditor上でできる「Device Simulator」の導入方法になります。
Unityのバージョンによって導入方法が異なります。
続きを読むUnityの標準機能で取得できる端末情報を表示するスクリプトを作成しました。
続きを読む