万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

Unity

UnityのNo Drag&Drop has been setup.

ゲーム開発の民主化のゲームエンジンUnityにて No Drag&Drop has been setup. Please UnityEditor.DockArea:OnGUI() のエラー。 これが出るとInspectorでドラッグ・アンド・ドロップできない。 Unity再起動しても駄目。Macの再起動で直るかもしれないけどめ…

Unity uGUIのRectTransformのpivot

http://answers.unity3d.com/questions/1007886/how-to-set-the-new-unity-ui-rect-transform-anchor.html なので左上にするなら public static void SetPivotLeftUp(this RectTransform aRectTransform) { Vector2 vec2 = Vector2.one; vec2.Set(0.0f, 1.0f…

UnityでinterfaceのList

ReorderableListを使いたいが interfaceはシリアライズにできないので http://answers.unity3d.com/questions/783456/solution-how-to-serialize-interfaces-generics-auto.html https://msdn.microsoft.com/en-us/library/system.runtime.serialization.ise…

UnityのAnimatorのControllerを拡張

普段無いが、 using UnityEditor; using UnityEditor.Animations; using UnityEngine; [CustomEditor(typeof(AnimatorController))] public class AnimatorControllerInspector : Editor { public override void OnInspectorGUI() { } } これでいける。

カバーフロー

GitHub - rakkarage/Flop: Unity 4.6 uGUI 'Cover Flow' Test

The device cannot run executables for arm64.の対処 Xcode Unity

http://howtocodethings.tumblr.com/post/146094967283/the-device-cannot-run-executables-for-arm64howtocodethings.tumblr.com を見た。

Asset Store

Google Analyticsの設定 https://docs.unity3d.com/Manual/AssetStoreAnalytics.html

EntryPointNotFoundException

UnityでDLLを使う UnityでDLLを使う | TVML

Unity3d: No Drag&Drop has been setup

stackoverflow.com ドラッグできない。

Unite動画

2013 https://vimeopro.com/unity3djp/unite-japan-2013-for-the-public 2014 japan.unity3d.com

C# Unity Spineの注意

UnityでSpineを扱う際に覚えておきたいTIPS - Qiita ここは記事が古い コールバックこのように設定する。 // コールバックの設定. private void SetCallback(SkeletonGraphic skeletonGraphic) { skeletonGraphic.AnimationState.Complete += OnCompleteSpin…

Unity パーティクルの色設定メモ C#

private void SetParticle(Color color) { ParticleSystem.MainModule main = this.m_particle.main; main.startColor = new ParticleSystem.MinMaxGradient(color); }

シェルで.metaのある空フォルダ消す Unity

git ls-files --others --exclude-standard | grep '.meta' | sed 's/\.[^\.]*$//' | xargs rm -rf

Inspector拡張でEditorのScript表示

[CustomEditor(typeof(Hoge))] public class HogeEditor : Editor { public override void OnInspectorGUI() { MonoScript script = MonoScript.FromScriptableObject(this); script = EditorGUILayout.ObjectField(script, typeof(MonoScript), false) as M…

C# Unity FindObjectOfType

コンストラクタで呼べない、 FindObjectsOfType is not allowed to be called from a MonoBehaviour constructor (or instance field initializer), call it in Awake or Start instead. デストラクでやると? FindObjectsOfType can only be called from th…

アニメーションの最後にスキップ Unity Animator

https://forum.unity3d.com/threads/set-state-to-last-frame-of-animation-save-position-of-animation.276437/ animatorならいくらでも情報があるが、Animatorにはあまりない。 animatorがインスタンス変数 int hash = Animator.StringToHash("ステートマ…

C# Unity 「Save Project」のショートカット

AssetDatabase.SaveAssets ();の動作は「Save Project」と同じ。 なのでショートカット作成しよう。 using UnityEditor; using UnityEngine; public class MyEditorWindow : EditorWindow { [MenuItem("File/Save Project %&s")] static void SaveProject() …

UnityのuGUIでRectTransformが小数点が出た時のチェック

よく、シーンがm_LocalScale: {x: 1.0000376, y: 1.0000376, z: 1.0000376}みたいになってるかと using UnityEditor; using UnityEngine; if (GUILayout.Button ("チェック")) { List<string> nameList = new List<string> (); RectTransform[] rectTransforms = GameObject.</string></string>…

Unity C# ノードエディタ

PlayMaker的なStateMachineの図みたいなのをEditorで作りたい BahaviorMachineという無料アセット有るけどdllだった・・・ https://www.assetstore.unity3d.com/en/#!/content/20280 https://forum.unity3d.com/threads/drawing-lines-in-the-editor.71979/ …

1日でクラウドサービスをマスター! 全部できるまで帰しま10!

コレに参加 http://japan.unity3d.com/blog/press/20161121 プロジェクト入れると変なワーニング・・・ A default asset was created for 'Assets/Etc/playGROWnd/playground/Audio/Musics/NewAudioMixer 1.mixer' because the asset importer crashed on it…

自動で配置する機能を使った場合にRectTransformのHeightの取得 C# Unity

自動で配置する機能を使った場合にRectTransformのHeightは "Some values driven by ContentSizeFitter"とかメッセージが出てそれで計算されているっぽい。 しかし、試しにRectTransformの rect.y とか rect.size.y とか sizeDelta.yでは0が返却される。 グ…

SceneNameAttribute Unity C#

2Dユニティちゃんのデモゲームが参考になった https://github.com/anchan828/property-drawer-collection/blob/master/SceneName/SceneNameAttribute.cs これ使えば [SceneName] [SerializeField] private string nextLevel; とか使える。

Unity C# JsonUtility

Unity - マニュアル: JSON 形式にシリアライズ 今更ながらJsonUtility using UnityEngine; using System.Collections; public class JsonTest : MonoBehaviour { // Use this for initialization void Start () { MyClass myObject = new MyClass (); myObje…

選択オブジェクト数を表示 Unity

[MenuItem("GameObject/選択GameObject数表示", false, 1)] static void CountSelectObjects(MenuCommand menuCommand) { int count = Selection.gameObjects.Length; // これがないと二度以上実行される. if (count > 1) { if(menuCommand.context != Selec…

TimeScaleに影響されないレガシーアニメーション Unity C#

GitHub - onevcat/UnpauseMe: Script for Unity3D, unpause Unity3D animations or particles when set Time.timeScale = 0. これ。 Animatorのならプルダウンでできるが、レガシーアニメーションはできない。 UnpauseMe/AnimationPlayIgnoreTimeScale.cs at…

Unity EditorでArrayのbool, string

面倒なので拡張 public static class Extends { /// <summary> /// Gets the bool array value. /// boolの配列を取得する. /// </summary> /// <returns>The bool array value.</returns> /// <param name="myProp">My property.</param> /// <param name="key">Key.</param> public static bool[] GetBoolArrayValue(this SerializedProp…

Unityで古いXamarin Studioを使う

Xamarin Studio がアップデートを促したので、 6にアップデートされてしまい、Unityのプロジェクトが上手く開かなくなった。 Outdated cask: xamarin-studio · Issue #17941 · caskroom/homebrew-cask · GitHub xamarin.ios - From where can I download xam…

VS CodeのUnityのVSCode.cs

https://msdn.microsoft.com/ja-jp/library/hh264221.aspx #if !UNITY_EDITOR_WIN // Make sure our reference framework is 4.0, still the base for Unity if (content.IndexOf("<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>") != -1) { content = Regex.Replace(content, "<TargetFrameworkVersion>v3.5</targetframeworkversion>

NGUIのローカライズ(UILocalize.cs)でリフレッシュ

www.tcmobile.jp NGUIのローカライズ機能のUILocalizeは便利だが・・。 csv(拡張子は.txt)をいじるたびに再起動? そんな面倒なことしてられっか! UILocalizeEditor.csのOnInspectorGUIメソッドの中にこれを追加して if(GUILayout.Button(new GUIContent(…

VisualStudio CodeをUnityで

https://code.visualstudio.com/Docs/runtimes/unity

Unityでもうtrackしてないのに.metaが出来てしまい、いらないフォルダや.metaを消すコマンド

git ls-files --others --exclude-standard | grep .meta | sed -e 's/.meta//g' | xargs rmdir;git clean -f のコマンド。 解説 git ls-files --others --exclude-standard が、untrackの一覧が出る。 そして↓コマンドでその中から.metaのを抽出 grep .meta…

uFrameやってみる(Unity 5.3.1f1)

Unityは5.3.1f1を使っている。 uFrameやってみる。 Asset Storeの1.6.3.r1のバージョンを使うことにした。 uFrame-1.5.1r2とuFrame-1.6.3r1のUnityパッケージが存在する。 このバージョンがあたらしいuFrame-1.6.3r1を展開してみる。 すると早速大量のエラー…

Unityエキスパート養成読本

Unityエキスパート養成読本 Unityエキスパート養成読本[ゲーム開発の現場で役立つノウハウ満載! ] (Software Design plus)作者: 佐藤圭明,村上哲太郎,大塚壮太郎,渡部聡,渡邉俊光,新井隆祥,相良康介,吉田奉正,石黒祐輔,大庭俊介出版社/メーカー: 技術評論社…

UnityEditorでのNullReferenceExceptionのハマり

string hoge; で宣言して、 this.hoge = GUILayout.TextField(this.hoge, 200); とすると、 NullReferenceException: Object reference not set to an instance of an object UnityEngine.GUI.DoTextField (Rect position, Int32 id, UnityEngine.GUIContent…

カスタムコルーチンの日本語公式記事を万年素人が理解するメモ

http://blogs.unity3d.com/jp/2015/12/01/custom-coroutines/ 1. 疑問 もしWaitForSecondsをtimescaleを0に指定しながら使用したら、(timescaleが0以外に再び戻るまで) 永遠に待ち続けることになるのです。 理由 これはつまりWaitForSeconds に1秒待つよう…

Unify Community WikiでのScriptの貢献

http://wiki.unity3d.com/index.php/Scripts/General から、editとかで編集して新しいページを作る。

C#Unity IEnumerator

Currentとは Unity のコルーチンで結果を受け取る - Qiita StartCoroutineで呼ばれているIEnumeratorメソッド内ではCurrentを返さないとダメらしい。 こちらも参考 Unity入門/コルーチンの待機 - WisdomSoft あとは、関係ないがvoidを返す普通のメソッドでの…

Unity 5.3 & Web GL/HTML5 セミナー by Unity & Mozilla

https://kenjin.unity3d.jp/events/show/307 開演、Unity Technologies Japan 大前広樹登壇 サバイバルシューター https://unity3d.com/jp/learn/tutorials/projects/survival-shooter-project ライトとかも入っている。 ・ビルド(Development Build) アセ…

C# Unity EditorのInspector拡張で自前のクラスの変換

Hogeクラスは何の変哲もないMonoBehaviorの継承でもないふつーのクラス。 シリアライズのため[System.Serializable] [System.Serializable] class Hoge { string bar; } そしてInsppectorを表示していたクラス public class MyMono : MonoBehaviour { [Seria…

InitializeOnLoadとかInitializeOnLoadMethodとかRuntimeInitializeOnLoadMethod Unity

どうしてもEditorのOnEnabledが遅くて、普通のMonoBahaviorのAwake()より遅くて困った。 [InitializeOnLoad] //これをつけるとstaticなコストラクタを定義すると呼ばれる. public class Test : Editor // 別にEditorの小クラスでなくても`InitializeOnLoad`…

yield return n C# Unity

yield キーワード yield return n; とした。 foreach(object n in GetIterator()) { Debug.Log(n); } ちゃんと数字返るっぽい

IL2CPPの略 Unity

IL2CPPに関する軽い話 from Wooram Yang www.slideshare.net 中間言語(Intermediate Language)をC++(CPP)に変換

カスタムインスペクタでプライベートメソッドにアクセス

invoke a method from a Unity Inspector カスタムアトリビュートを作る? using System; // Place this file in any folder that is or is a descendant of a folder named "Scripts" namespace CatchCo { // Restrict to methods only [AttributeUsage(Att…

TransformのCustomEditor C# Unity

https://unity3d.com/learn/tutorials/modules/intermediate/live-training-archive/property-drawers-custom-inspectors UnityScriptもなんかある http://answers.unity3d.com/questions/39360/how-to-get-to-the-editor-to-display-a-childs-world.html

NGUIとかで使うカラーコード C# Unity

RGBの(255, 255, 255)みたいなのを6桁の16進数数字のカラーコードFFFFFFにしたい。 ※'#‘はいらない。 RGB値からHTMLカラーコードに変換する:humming bird を参考。 拡張メソッド // Slice. public static string Slice(this string aString, int num) { retu…