コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

2019-02-01から1ヶ月間の記事一覧

【Android】Android Device Monitor のログの出力数を変更する方法

概要 Android Device Monitor メニューの「Window > Preferences」を選択して Preferences ウィンドウの「LogCat」の 「Maximum number of logcat messages to buffer」を変更します

【Android】実機で画面タップのモンキーテストを行う方法

概要 adb shell monkey -v -p 【パッケージ名】 --pct-touch 100 【タップ回数】 Windows PC に Android 端末を接続した状態で、 上記のコマンドをコマンドプロンプトから実行することで 実機で画面タップのモンキーテストを行うことができます adb shell ki…

【Airtest IDE】画面をランダムにタップし続けるサンプル

ソースコード # -*- encoding=utf8 -*- from airtest.core.api import * import random auto_setup(__file__) while True: # クリックしたい座標をランダムに決定する pos = ( random.uniform( 0, 1920 ), random.uniform( 0, 1080 ) ) touch( pos )

【Unity】Airtest IDE で Windows アプリをデバッグする時に touch を呼んでも EventSystem の OnPointer 関連のイベントが呼び出されない時の対処方法

対処方法1 EventSystem の OnPointer 関連のイベントを MonoBehaviour の OnMouse 関連のイベントに差し替える 対処方法2 Airtest IDE の Devices ウィンドウで Window App Connection の 「Select Window」ではなく赤枠の「Connect Desktop」を使用する

【Unity】Hierarchy の検索文字列や Project ビューのアセットをお気に入りとして管理できる「Unity-AssetBookmarker」紹介

はじめに 「Unity-AssetBookmarker」を Unity プロジェクトに導入することで Hierarchy の検索文字列や Project ビューのアセットを お気に入りとして管理できるようになります 使い方 Project ビューのアセットを右クリックして「Add to bookmark list」を…

【Unity】変更していない SpriteAtlas が Git で変更状態になる現象を防ぐエディタ拡張

概要 上記のスクリプトを Unity プロジェクトの「Editor」フォルダに追加することで 変更していない SpriteAtlas が Git で変更状態になる現象を 防ぐことができるようになります 補足 自分の環境だと SpriteAtlas が SourceTree で 「このファイルは、変更…

【Unity】一定時間ごとにシーンのバックアップを作成できる「AutoSaveScene」紹介

はじめに 「AutoSaveScene」を Unity プロジェクトに導入することで 一定時間ごとにシーンのバックアップを作成できるようになります 使い方 「AutoSaveScene」を Unity プロジェクトに導入すると 5分ごとにシーンのバックアップが作成されるようになります …

【Unity】Windows / Mac / Linux でファイルダイアログを開くことができる「Unity Standalone File Browser」紹介

はじめに 「Unity Standalone File Browser」を Unity プロジェクトに導入することで Windows / Mac / Linux でファイルダイアログを開くことができるようになります 使い方 // ファイルダイアログを開く var paths = StandaloneFileBrowser.OpenFilePanel( …

【Unity】属性を適用すると自動で GetComponent できる「Unity GetComponent Auto Injector」紹介

はじめに https://github.com/jinnin0105/UnityGetComponentAutoInjector 「Unity GetComponent Auto Injector」を Unity プロジェクトに導入することで 属性を適用すると自動で GetComponent できるようになります 使い方 using System.Collections.Generic…

【Visual Studio】ショートカットキーで次のメソッド、前のメソッドにジャンプできるようにする方法

概要 Visual Studio ではメニューの「編集」から 「次のメソッド」「前のメソッド」にジャンプできますが デフォルトではショートカットキーが割り当てられていません これらの機能にショートカットキーを割り当てることで、 少しだけコーディングの手間を省…

【Unity】四分木(Quadtree)による空間分割を使用して当たり判定を実装できる「Unity3d-QuadTree-Collision-Detection」紹介

はじめに 「Unity3d-QuadTree-Collision-Detection」を Unity プロジェクトに導入することで 四分木(Quadtree)による空間分割を使用して当たり判定を実装できるようになります 検証 今回は Unity 標準の当たり判定を使用した場合と 四分木による当たり判定…

【Unity】Unity で T4テンプレートを使用できる「t4-templates-unity3d」紹介

はじめに 「t4-templates-unity3d」を Unity プロジェクトに導入することで Unity で T4テンプレートを使用できるようになります 使い方 Unity プロジェクトに拡張子が「.tt」のファイルを追加します そして、.tt ファイルにコードを記述して、Inspector で…

【Unity】iPhone X / XS のセーフエリアに対応できるアセットまとめ

一覧

【Unity】uGUI で Pinterenst のようなタイルレイアウトを使用できる「Unity-VariableTileLayout」紹介

はじめに 「Unity-VariableTileLayout」を Unity プロジェクトに導入することで uGUI で Pinterenst のようなタイルレイアウトを使用できるようになります 使用例 使い方 親オブジェクトに「VariableTileLayoutGroup」をアタッチして さらに子オブジェクトに…

【Unity】Unity を使用せずに .unitypackage を作成できる「UnityPacker」紹介

はじめに 「UnityPacker」を使用することで Unity を使用せずに .unitypackage を作成できます 使い方 下記のファイルを Unity プロジェクトのフォルダ直下に追加します UnityPacker.exe ICSharpCode.SharpZipLib.dll UnityPacker.exe 【対象のフォルダ】 【…

【Unity】2D で斬撃エフェクトを実装できる「Simple Sprite Trails」紹介

はじめに 「Simple Sprite Trails」を Unity プロジェクトに導入することで 2D で斬撃エフェクトを実装できるようになります 使用例 使い方 斬撃エフェクトを表示したいスプライトに「Trail」という名前の子オブジェクトを作成して 「MeleeWeaponTrail」をア…

【Unity】ボロノイ図によりメッシュを破壊する実装を見ることができる「Simple destruction effect for Unity」紹介

はじめに 「Simple destruction effect for Unity」では ボロノイ図によりメッシュを破壊する実装を見ることができます 実装例 確認方法 「BreakableWall.cs」で処理を見ることができます ソースコード(GitHub 引用)

【Unity】Unity 製の APK をバッチファイルで起動する方法

概要 adb shell am start -n "【パッケージ名】/com.unity3d.player.UnityPlayerActivity" 上記のようなコードが記述されたバッチファイルを実行する 参考サイト様

【Unity】2D スプライトの移動の軌跡を描画できる「Sprite Ghost Trail Renderer」紹介

はじめに 「Sprite Ghost Trail Renderer」を Unity プロジェクトに導入することで 2D スプライトの移動の軌跡を描画できるようになります 使用例 使い方 「SpriteGhostTrailRenderer」をアタッチすることで使用できます

【Unity】Rigidbody2D を使用した際のすり抜けを防ぐ方法

概要 Unity メニューの「Edit > Project Settings > Time」を開いて 「Fixed Timestep」の数値を減らす 減らしすぎるとゲームが処理落ちする可能性があるので注意 参考サイト様

【Unity】Unity プロジェクトを開いた時に Unity エディタをミュートにするエディタ拡張

概要 上記のスクリプトを Unity プロジェクトの「Editor」フォルダに追加すると Unity プロジェクトを開いた時に Game ビューの Mute Audio が自動でオンになります

【Unity】Physics 2D Raycaster の「Max Ray Intersections」を 0 にしていると毎フレーム数バイトの GC Alloc が発生する

概要 Physics 2D Raycaster の「Max Ray Intersections」を 0 にしていると 毎フレーム数バイトの GC Alloc が発生します Physics 2D Raycaster の「Max Ray Intersections」を 1 などにすると発生しなくなります

【Unity】OnRenderImage() possibly didn't write anything to the destination texture!

概要 OnRenderImage() possibly didn't write anything to the destination texture! Unity エディタ再生時に上記のような警告が出力された場合、 using UnityEngine; public sealed class Example : MonoBehaviour { private void OnRenderImage( RenderTex…

【Unity】スプライトでノーマルマップやスペキュラマップなどが使用できる「Uber Shader for Sprites」紹介

はじめに 「Uber Shader for Sprites」を Unity プロジェクトに導入することで スプライトでノーマルマップやスペキュラマップなどが使用できるようになります 使用例 クイックスタート この記事ではスプライトでノーマルマップを使用する方法を紹介していき…

【宣伝】自分が専門学校で非常勤講師を担当した学生さんが Android アプリ「ドロップシュート」をリリースしました!

はじめに 自分が専門学校で非常勤講師を担当した学生さんが Android アプリ 「ドロップシュート」をリリースしました! https://play.google.com/store/apps/details?id=com.NTKG.DropShoot 3vs3の6人で対戦できるおはじきアクションゲームです! より多く敵…

【Unity】スクリプトから TimeManager の Fixed Timestep を変更する方法

概要 Time.fixedDeltaTime = 0.02f; Time.fixedDeltaTime を使用します

【Unity】ビルド時間を計測してログ出力するエディタ拡張

概要

【Unity】AssetDatabase.RenameAsset の第2引数に設定するのはファイルパスではなく拡張子を除いたファイル名

概要 // ☓ AssetDatabase.RenameAsset ( "Assets/Textures/hoge.png", "Assets/Textures/fuga.png" ); // ○ AssetDatabase.RenameAsset ( "Assets/Textures/hoge.png", "fuga" );

【Unity】乱数のシード値をランダムに設定する

概要 Random.InitState( System.DateTime.Now.Millisecond ); 例えば現在の日時をシード値に設定することで 乱数のシード値を擬似的にランダムに設定できる

【Unity】雪をかき分けるような処理の実装を見ることができる「Snow Trail」紹介

はじめに 「Snow Trail」を Unity プロジェクトに導入することで 雪をかき分けるような処理の実装を見ることができます 実装例 使用例 マテリアルの Shader を「Custom/SnowTrail」に設定して そのマテリアルをゲームオブジェクトに割り当てることで そのオ…