TAKOYAKING’s blog 一覧

TAKOYAKING’s blog

たこ焼き系

Unity

Unity: 落下の自前計算 (簡易版)

Cheap gravity script - Unity Answers厳密には違いますが、簡易版で同じような動きになります。そこまで正確に動きを計算する必要がないのでこれでいいならこれを使いたいです。簡易重力を自前で計算した時の鉄球の動き↓ float velocity = 0; void FixedUpd…

Unity: UniRxのUpdateAsObservable

UpdateAsObservable Updateを実行することができる 使い方 using UniRx; using UniRx.Triggers; void Start() { this.UpdateAsObservable() .Subscribe(UpdateRx); } void UpdateRx(Unit unit) { Debug.Log("updating"); } this.UpdateAsObservable()をSubsc…

Unityをアプデしたらエディタコンパイルが速くなっていた

環境 Unity 2019.3.15 -> 2019.4.4 iMac 2019 推測される原因 (予想です。) Enter Play Modeが実装されてからソースコードを変更した時に行われるコンパイルが異常に遅くなっていました。昔なら3から5秒くらいだったのが、30秒以上かかることがざらになって…

デザイン:ナイトを描いた時の思考の備忘録

デザインスキルがないので、いつもデザインは気合と根性で描いています。今回描いたのは「ナイト」です (自作ゲームで使います)自分的にはぱっと見良さげな感じに見えるのでとても満足しています。 精神状態 デザインはとても疲れるので、やる気も出ず、進捗…

Unity: Addressable.LoadSceneAsyncとEnter Play Modeの時は一回しかCompletedが呼ばれない

環境 unity 2019.3.15 Addressables 現象 Enter Play Modeを設定していると、Addressable.LoadSceneAsyncを呼ぶと一回しかCompletedが呼ばれません。 どういうことかと言いますと 再生し、停止して再生すると呼ばれません。 Hierachyを見てもsceneがloading…

Unity: 「Unknown Assembly DOTween」というエラーが起きる

環境 Unity 2019.3.15 Addressables 1.8.3 DOTween 1.2.335 推測 AddressablesとDOTweenを使用するとこの現象が起きる気がします。(予想です。) 現象 Unknown Assembly DOTween UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr) Unityを再生時に上記エラ…

UniRxのCombineLatestでReactivePropertyを合成する

ことの経緯 1つのReactivePropertyと変更対象のUIが1対1になっている時は問題ありませんが、2つのReactivePropertyが異なる条件で1つのUIを変更しようとしているときに困ったことになりました。例えば ゲージが貯まれば背景のグレー解除 マナが貯まれば背…

UnityでAndroidビルドすると「This could be caused by a class being stripped from the build even though it is needed. Try disabling 'Strip Engine Code' in Player Settings.」

現象 05-17 19:19:48.076 4675 4713 E Unity : This could be caused by a class being stripped from the build even though it is needed. Try disabling 'Strip Engine Code' in Player Settings. 原因 Addressables(Asset Bundle)を使っていると、手動で…

Affinity Designer: 波線

波線を書きたいことがあってAffinity Designerでどうやって書けば良いのか調べていたら以下のサイトが参考になりました。 AffinityDesignerでの波線の描き方 | coneta.me やり方 1. ペンツールでギザギザを書く 2. コーナーツールで角をつける このツールを…

PixelPerUnitとCameraのSizeから背景の高さ計算する

高さいっぱいになるような背景画像を用意したい状況に遭遇したので、何pixel用意すれば良いかの考え方を調べました。 考え方 考える時は2つの要素が必要です。 カメラのsize 背景画像のpixelPerUnit 例えば 背景画像のpixelPerUnitが100 カメラのsizeが5 と…

Unity: Rotationを指定する

角度指定をとりあえず雑に指定する方法のメモです。Unity InspectorのRotationでx, y, zを指定して角度を入力する方法です。(Quaternionから逃げたい!) float angle = 90; transform.eulerAngles = new Vector3(0, 0, angle); // or transform.rotation = Q…

utf8jsonのUtf8Json.UniversalCodeGeneratorをDockerでビルドしてMacで動かす

背景 GitHub - neuecc/Utf8Json: Definitely Fastest and Zero Allocation JSON Serializer for C#(NET, .NET Core, Unity, Xamarin).utf8jsonを使おうとしたところAndroidでは事前に自動生成したファイルが必要になるらしいです。その自動生成するバイナリ(…

Unity: Script Execution Orderを変更すると不明なエラーがでる

script Execution orderを変更したら以下のような大量のエラーが出ました。 特に悪いことはしていないので、とりあえず回避できる方法を載せておきます。 MissingReferenceException: The object of type 'MonoScript' has been destroyed but you are still…

unityのMonobehaviourの名前を変更する手順が以前と異なっている!?

unityのMonobehaviourの名前を変更する手順が以前と異なっているような気がします。 環境 Unity2019.3.9 手順 昔は UnityEditorからMonobehaviourの名前を変える テキストエディタで名前を変える の手順だったのが、 テキストエディタで名前を変える UnityEd…

Unity 2DでPhysics2D.OverlapBoxを使う

Physics2D.OverlapBoxを使おうと思った動機 敵との衝突判定に使おうと思いました。 味方、敵は衝突しない(Layer Collision Matrixでチェックを外す) rigidbodyは重力の影響を受ける。(地面からジャンプ、着地したりできる) このときに、OnCollisionEnter2Dで…

Unity: 着地した時の判定 (2D)

着地したときの判定をどうするかの備忘録。 環境 Unity 2D OnCollisionEnter2DとOnCollisionExit2D (ちょっと微妙) OnCollisionEnter2D OnCollisionExit2D を使って、判定してみようと思いました。 基本コンセプトはイベントが呼ばれたときに、Physics2D.Ove…

Unity: Unity 2D Animationでシーンでボーン(骨)の表示・非表示

Unity 2D AnimationでAnimationを作っていた時に、なぜかボーン(骨)が表示されないことがあって、焦りました。あれ?さっきまで骨があったはずなのになくなって結構焦りました。https://forum.unity.com/threads/2d-sprite-editor-bones-arent-visible-in-sc…

Unity:オブジェクトのパスが変わった時にアニメーションのパスを一括変更する

アニメーションをすでに設定している時に対象のオブジェクトのパス構造を変えたい時に、アニメーションファイルも同じようにパス構造の変更を反映して欲しい時の解決策です。 現象 アニメーションが設定されている対象のオブジェクトのパス構造を以下のよう…

Asembly Definition 試したけど体感が変わるほど、速くならなかった

Unityを2019.3系にアップデートしてからコンパイル時にレインボーが回るようになって、結構時間がかかるようになってしまいました。 そこでAssembly Definitionを利用すれば、コンパイル時間が速くなるというのを知ったので試してみました。 環境 Unity 2019…

「Curl error 56: Receiving data failed with unitytls error code 1048578」 がUnityででる

Curl error 56: Receiving data failed with unitytls error code 1048578 がでるようになりました。https://forum.unity.com/threads/crashes-unity-with-curl-error-56-receiving-data-failed-with-unitytls-error-code-1048578.795066/このフォーラムに同…

Unity: RectTransformの変更を検知するためにUniRxのOnRectTransformDimensionsChangeAsObservableを使えば便利だった

特定のuGUIのRectTransformのサイズが変わった時に連動して何かしたい場合に、どうすればベストなのか調べていたら、UniRxのOnRectTransformDimensionsChangeAsObservableを使えば良いことたどり着きました。 RectTransformの値変更を検知する [Unity]uGUIで…

Unity: Animatorのアニメーションをリセットしたい

AnimatorのアニメーションのSetTriggerで発火したものをリセットしたいことがあったのですが、ResetTriggerを呼べば解除できるみたいなのがあったので、試してみたのですが、どうもうまくいきませんでした。やりたいことはidleに戻せればよかったので、idle(…

Unity: ボタンやトグルはフォーカスがある時にスペースキーやエンターキーでクリックイベントが発火してしまう

ボタンやトグルはフォーカスがあると、スペースキーやエンターキーでクリックイベントが発火してしまうので、意図しないクリックイベントが発火してしまい、少々面倒でした。 やり方 調べてみるとありました。 Button is being triggered by spacebar after …

Visual Studioで保存時にUnityスクリプトのコンパイルをさせる

Unity 2019.3になってからコンパイル時間が長くなったような気がするので、とても面倒でした。 今まで回ることのなかったレイボーまで回り始めました。Enter Play Mode Optionsを設定して、スクリプトを一切編集していないときはめちゃくちゃ速くなったので…

Enter Play Mode Optionsを設定した時にDoTweenがうまく動作しない時

先日、2019.3の機能のEnter Play Mode Optionsを設定しました。 Unity 2019.3 Enter Play Mode Optionsを設定すると爆速になった (条件あり) - TAKOYAKING’s blog めちゃくちゃ速くなったのですが、使っていると、DoTweenが描画されないことに気づきました。…

Unity 2019.3 Enter Play Mode Optionsを設定すると爆速になった (条件あり)

blogs.unity3d.comこちらの記事でEnter Play Mode Optionsを設定すると速くなると書いてあったので試してみました! 環境 2019 iMac Unity 2019.3.2 機能 2019.3から Enter Play Mode Optionsが設定できるようになり、 スクリプトの状態のリセット(Domain R…

Unityがめちゃくちゃ遅くなるとき

Unityがめちゃくちゃ重くなる時があったのでその解決方法を残しておきます。 環境 iMac 2019 Unity 2019.2.16f 現象 Unity Editorの再生ボタンを押すと始まるまで異様に時間がかかる。(1分以上) ユニットの生成がものすごく時間かかることがあった 解決方法 …

Unity 2019.3にあげると再生のたびにImport Assetsが実行される現象

Unity 2019.3にあげたのはよかったのですが、再生するたびに、Import Assetsが実行され、毎回鬱陶しいので調査しました! 環境 Unity 2019.3.1 iMac 2019 現象 再生ボタンを押すたびにImport Assetsが実行される。 タイトルはAsset Progressと表示されていた…

Unityを2019.31f1にアップデートするとエラーが出た (ArgumentException: Requested value 'X86' was not found)

Unityを2019.31f1にアップデートすると以下のようなエラーが出ました ArgumentException: Requested value 'X86' was not found. ArgumentException: Requested value 'X86' was not found. System.Enum+EnumResult.SetFailure (System.Enum+ParseFailureKin…

UnityエディタでPREVIEW PACKAGES IN USE が上のバー出る時

いつからか気付いた時にはこのような「REVIEW PACKAGES IN USE」が上のバーに出るようになってました。 気持ち悪いので直したいと思います。 環境 Unity2019.2 Mac 注意 Gitのようなバージョン管理していない場合は注意です。 方法 What is "PREVIEW PACKAGE…