コガネブログ

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

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

【Unity】画面全体にモザイクシェーダを適用できる「Pixelate post-effect/shader (Unity)」紹介

はじめに 「Pixelate post-effect/shader (Unity)」を Unity プロジェクトに導入することで 画面全体にモザイクシェーダを適用できるようになります 使用例 使い方 シーンに配置されているカメラに「Pixelate」コンポーネントをアタッチして 「Shader」に「P…

【Unity】よく作る名前のフォルダを一括で作成できる「Folder Creator」紹介

はじめに https://isfuturebright.itch.io/folder-creator 「Folder Creator」を Unity プロジェクトに導入することで よく作る名前のフォルダを一括で作成できるようになります 使い方 Unity メニューの「BrightTools>Folder Creator」を選択すると 指定し…

【Unity】TextureImporter でスプライトの Mesh Type を変更する方法

概要 TextureImporter でスプライトの Mesh Type を変更したい場合は、 using UnityEditor; using UnityEngine; public class Example : AssetPostprocessor { private void OnPostprocessTexture( Texture2D texture ) { var importer = assetImporter as T…

【Unity】タイルマップ - 塗ったタイルをすべて削除するエディタ拡張

ソースコード using UnityEditor; using UnityEngine; using UnityEngine.Tilemaps; public static class TilemapEditorUtils { [MenuItem( "CONTEXT/Grid/Clear All Tiles" )] private static void ClearAllTilesFromGrid( MenuCommand menuCommand ) { var…

【Unity】タイルマップ - 塗ったタイルを矩形ツールで削除する方法

概要 矩形ツールを選択した状態で Shift を押しながら左クリック&ドラッグすることで、タイルを矩形で削除することができます

【Unity】error CS0115: 'XXXX.Reset()': no suitable method found to override

概要 using UnityEngine.UI; public class Example : InputField { protected override void Reset() { } } 上記のようなコードを書いてアプリをビルドしたら error CS0115: 'XXXX.Reset()': no suitable method found to override 上記のビルドエラーが発生…

【Unity】Google AdMob にテストデバイスを追加する時は SystemInfo.deviceUniqueIdentifier が使える

概要 Google AdMob の公式ドキュメントには テストデバイスを追加する時はコンソールや logcat 出力で テストデバイスの ID をコピーして使用する、と記載されていますが var request new AdRequest.Builder() .AddTestDevice( SystemInfo.deviceUniqueIdent…

【Unity】【Odin Inspector】Inspector の表示形式を Odin ではなく従来の方式に戻すことができる「DrawWithUnity」属性

使用例 使い方 using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { public GameObject m_odinFormat; [DrawWithUnity] public GameObject m_unityFormat; } DrawWithUnity を変数に適用することで使用できます 関連記…

【Unity】WIndows 10 において Unity エディタのレイアウト設定が保存されているフォルダ

概要 C:\Users\【ユーザー名】\AppData\Roaming\Unity\Editor-5.x\Preferences\Layouts 検証環境 Unity 2018.3.11f1

【Steam】実績を削除できる「Steam Achievement Manager」紹介

はじめに 「Steam Achievement Manager」を使用することで Steam の実績を削除できます 入手方法 https://github.com/gibbed/SteamAchievementManager/releases 上記のページから「SteamAchievementManager-XXXX.zip」をダウンロードして ダウンロードした .…

【Steamworks】ERROR: An error (-102) has occurred during uploading. Please check you correctly entered your credentials and steamguard code if applicable.

はじめに *** ERROR: An error (-102) has occurred during uploading. Please check you correctly entered your credentials and steamguard code if applicable. *** SteamPipeGUI.exe で Steam にゲームをアップロードしようとしたところ、 上記のエラー…

【Unity】シンプルなメッセージバス「Unity Events 2.0」紹介

はじめに 「Unity Events 2.0」を Unity プロジェクトに導入することで シンプルなメッセージバスを使用できるようになります 使用例 送信側のスクリプト using UnityEngine; using UnityEvents; public struct PlayerRespawnSignal { } public class Player…

【Unity】ゲームオブジェクト間でデータの送受信ができる「Signals」紹介

はじめに 「Signals」を Unity プロジェクトに導入することで ゲームオブジェクト間でデータの送受信ができるようになります 使用例 送受信用のデータ using UnityEngine; // データ public struct Data { public int m_id ; public GameObject m_gameObject…

【Unity】木漏れ日のようなシェーダ「Light rays 2D effect/shader (Unity)」紹介

はじめに 「Light rays 2D effect/shader (Unity)」は木漏れ日のようなシェーダです 使用例 使い方 Quad オブジェクトに「LightRays2D」をアタッチして 各種パラメータを設定することで使用できます

【Unity】水の実装例を見ることができる「UnityWaveEquation」紹介

はじめに 「UnityWaveEquation」では水の実装例を見ることができます 実装例

【Unity】スプライトでアウトラインを使用できる「Sprites-Outline」紹介

はじめに 「Sprites-Outline」を Unity プロジェクトに導入することで スプライトでアウトラインを使用できるようになります 使用例 適用前 適用後 使い方 スプライトに「SpriteOutline」をアタッチすることで使用できます

【Unity】コンパイル完了時や Unity 再生時に Game ビューの Scale が 1 にリセットされる現象を防ぐエディタ拡張

はじめに 上記のフォーラムで公開されているスクリプトを使用することで コンパイル完了時や Unity 再生時に Game ビューの Scale が 1 にリセットされる現象を防ぐことができます ソースコード 上記のスクリプトを Unity プロジェクトの「Editor」フォルダ…

【Unity】スクリプトの実行順を制御する属性を使用できる「Unity3D-ExecutionOrderAttribute」紹介

はじめに 「Unity3D-ExecutionOrderAttribute」を Unity プロジェクトに導入することで スクリプトの実行順を制御する属性を使用できるようになります 使い方 using UnityEngine; using System.Collections; [ExecutionOrder( 10 )] public class NormalBeha…

【Unity】ゲームオブジェクト同士でメッセージの送受信ができる「MessageKit」紹介

はじめに 「MessageKit」を Unity プロジェクトに導入することで ゲームオブジェクト同士でメッセージの送受信ができるようになります 使用例 受信クラス using Prime31.MessageKitLite; using UnityEngine; public class Receiver : MonoBehaviour, Message…

【Unity】シンプルなメッセージバス「Signals」紹介

はじめに 「Signals」を Unity プロジェクトに導入することで シンプルなメッセージバスを使用できるようになります 使用例 送信側のスクリプト using deVoid.Utils; using UnityEngine; public class PlayerRespawnSignal : ASignal { } public class Playe…

【Unity】シンプルなメッセージバス「Unibus」紹介

はじめに 「Unibus」を Unity プロジェクトに導入することで シンプルなメッセージバスを使用できるようになります 下準備 シーンに「Unibus」プレハブを配置しておきます 使用例 送信側のスクリプト using UnibusEvent; using UnityEngine; public class Pl…

【Unity】【Odin Inspector】Inspector で列挙型の値をボタンで変更できる「EnumPaging」属性

使用例 使い方 using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { [EnumPaging] public enum Type { A, B, C } public Type m_type; } EnumPaging 属性を列挙型や変数に適用することで使用できます 関連記事

【Unity】【Odin Inspector】Inspector の入力欄の末尾に文字列を表示できる「SuffixLabel」属性

使用例 使い方 using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { [SuffixLabel( "秒" )] public float m_time1; [SuffixLabel( "秒", true )] public float m_time2; } SuffixLabel を変数に適用することで使用でき…