コガネブログ

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

【Unity】水シェーダを導入する

はじめに https://lindseyreidblog.wordpress.com/2017/12/15/simple-water-shader-in-unity/ この記事では上記のサイト様が公開されている 水シェーダを導入する方法を紹介していきます 使用例 使い方 上記のシェーダファイルを Unity プロジェクトに追加し…

【Unity】アイスシェーダを導入する

はじめに https://lindseyreidblog.wordpress.com/2017/12/30/ice-shader-in-unity/ この記事では上記のサイト様が公開されている アイスシェーダを導入する方法を紹介していきます 使用例 使い方 上記のシェーダファイルを Unity プロジェクトに追加します …

【Unity】ファーシェーダを導入する

はじめに http://www.shaderslab.com/demo-60---fur-shader.html この記事では上記のサイト様が公開されている ファーシェーダを導入する方法を紹介していきます 使用例 適用前 適用後 使い方 上記のシェーダファイルを Unity プロジェクトに追加します シェ…

【Unity】スプライト用のアウトラインシェーダを導入する

はじめに http://www.shaderslab.com/demo-15---sprite-outline.html この記事では上記のサイト様が公開されている スプライト用のアウトラインシェーダを導入する方法を紹介していきます 使用例 適用前 適用後 使い方 上記のシェーダファイルを Unity プロ…

【Unity】スプライト用の色の反転シェーダを導入する

はじめに http://www.shaderslab.com/demo-83---invert-color.html この記事では上記のサイト様が公開されている スプライト用の色の反転シェーダを導入する方法を紹介していきます 使用例 適用前 適用後 使い方 上記のシェーダファイルを Unity プロジェク…

【Unity】スプライト用のディゾルブシェーダを導入する

はじめに http://www.shaderslab.com/demo-95---flag-with-lighting.html この記事では上記のサイト様が公開されている スプライト用のディゾルブシェーダを導入する方法を紹介していきます 使用例 適用前 適用後 使い方 上記のシェーダファイルを Unity プ…

【Unity】チェッカー柄のシェーダを導入する

はじめに 上記の GitHub で公開されている 「Checkerboard.shader」をUnity プロジェクトに導入することで チェッカー柄のシェーダを使えるようになります 使用例(引用) 使い方 シェーダを使用したいマテリアルの Shader を 「Game/Unlit/Checkerboard」に…

【Unity】他のオブジェクトに隠れている時にシルエットを表示するシェーダを導入する

はじめに 上記の GitHub で公開されている 「Silhouette.shader」をUnity プロジェクトに導入することで 他のオブジェクトに隠れている時にシルエットを表示するシェーダを使えるようになります 使用例(引用) 使い方 シェーダを使用したいマテリアルの Sha…

【Unity】半透明なオブジェクトを綺麗に表示するシェーダを導入する

はじめに 上記の GitHub で公開されている 「BetterTransparentDiffuse.shader」をUnity プロジェクトに導入することで 半透明なオブジェクトを綺麗に表示するシェーダを使えるようになります 使用例(引用) 使い方 シェーダを使用したいマテリアルの Shade…

【Unity】iOS / Android で WebView を使用できる「unity-webview」紹介

はじめに 「unity-webview」を Unity プロジェクトに導入することで iOS / Android で WebView を使用できるようになります 使用例 その他 // 前のページに戻れる場合 true if ( webViewObject.CanGoBack() ) { } // 前のページに戻ります webViewObject.GoB…

【Unity】Android で日付ピッカー、タイムピッカーを使用できる「AndroidNativePicker.cs」紹介

概要 上記のスクリプトを Unity プロジェクトに導入することで Android で日付ピッカー、タイムピッカーを使用できるようになります 日付ピッカーを表示する AndroidNativePicker.ShowDatePicker( ( year, month, day ) => { Debug.LogFormat( "{0}/{1}/{2}"…

【Unity】Android でトースト表示を使用できる「ShowToastUnityAndroid.cs」紹介

概要 上記のスクリプトを Unity プロジェクトに導入することで

【Unity】Assembly Definition のコンパイルにどのくらい時間がかかったかログ出力できる「Unity Assembly Definition Debugger.cs」紹介

概要 上記のスクリプトを Unity プロジェクトの Editor フォルダに追加することで コンパイル完了時に Assembly Definition のコンパイルに どのくらい時間がかかったかログ出力できるようになります

【Unity】シーンを .obj 形式でエクスポートできる「ExportSceneToObj」紹介

はじめに 「ExportSceneToObj」を Unity プロジェクトに導入することで シーンを .obj 形式でエクスポートできるようになります 使い方 例えばこのようなシーンが存在する場合に、 Unity メニューの「ExportScene/ExportSceneToObj」を選択すると .obj 形式…

【Unity】4x3 サイズの画像でグラデーションを表示する

概要 4x3 サイズの画像を Unity プロジェクトに追加します シーンにスプライトを作成して、4x3 サイズの画像を設定します あとは、スプライトのサイズを大きくすることで、 4x3 サイズの画像でグラデーションを表示できます 参考サイト様

【Unity】TextMesh Pro では SpriteAsset にアウトラインや影を適用することはできない

概要 TextMesh Pro では SpriteAsset にアウトラインや影を適用することはできない

【Unity】TextMesh Pro でアウトラインを太くしたら文字が潰れてしまう現象を防ぐ方法

概要 TextMesh Pro でアウトラインを太めに設定した場合に 文字が潰れてしまう現象を防ぎたい場合は ] TextMeh Pro のマテリアルで「Face」の「Dilate」に 「Outline」の「Thickness」と同じ数値を入力することで 文字がキレイに表示されるようになります 参…

【Unity】TextMesh Pro でアウトラインをさらに太くする方法

概要 TextMesh Pro でアウトラインを使用する場合、 アウトラインの太さの上限がこれぐらいだとして、 さらにアウトラインを太くしたい場合は FontAsset を作成する時に「Font Padding」に大きめの数値を設定します すると、Outline の Thickness が同じ値で…

【Unity】Visual Studio で Debug.Log の記述を楽にするコードスニペットを作成しました

はじめに 上記の GitHub で公開されている「Unity Code Snippets for Visual Studio」フォルダを Visual Studio のコードスニペットに追加することで Debug.Log の記述を楽にするコードスニペットを使用できるようになります 使い方 Log や LogFormat と入力…

【Unity】Unity の機能を async / await で使用できる「Await Extensions」紹介(無料)

概要 2018/9/14 に「Await Extensions」がリリースされました 「Await Extensions」を導入すると、 Unity の機能を async / await で使用できるようになります 検証環境 Unity 2017.4.7f1 Await Extensions 1.0 使用例

【Unity】uGUI のコードを変更して使用する方法

はじめに https://bitbucket.org/Unity-Technologies/ui/src uGUI のソースコードは Bitbucket で公開されているため、 自分で編集して使用することができます 変更例 https://bitbucket.org/Unity-Technologies/ui/downloads/ 上記のページにアクセスして「…

【Unity】MaskableGraphic を継承した uGUI コンポーネントは初期化や破棄のタイミングで GC Alloc が走る?

はじめに https://bitbucket.org/Unity-Technologies/ui/src/2017.3/UnityEngine.UI/UI/Core/MaskableGraphic.cs protected override void OnEnable() { ... if (GetComponent<Mask>() != null) { MaskUtilities.NotifyStencilStateChanged(this); } } protected o</mask>…

【Unity】Error Code: 1 occurred while Loading the [XXXX] font file. This typically results from the use of an incompatible or corrupted font file.

概要 Error Code: 1 occurred while Loading the [XXXX] font file. This typically results from the use of an incompatible or corrupted font file. TextMesh Pro で FontAsset を作成しようとした時に上記のエラーが発生した フォントのファイル名に日…

【Git】Unity でバージョン管理する必要がないファイルを定義した .gitignore

概要 参考サイト様

【Unity】ランプテクスチャにより色が変化するシェーダを導入する

はじめに http://www.shaderslab.com/demo-42---varying-color-with-ramp-texture.html この記事では上記のサイト様が公開されている ランプテクスチャにより色が変化するシェーダを導入する方法を紹介していきます 使用例 使い方 上記のシェーダファイルを …

【Unity】スプライト用のベタ塗り(単色)シェーダを導入する

はじめに この記事では上記のリポジトリに含まれている スプライト用のシェーダを導入する方法を紹介していきます 使用例 使い方 上記のシェーダファイルを Unity プロジェクトに追加します シェーダを使用したいオブジェクトのマテリアルの Shader を 「Spr…

【Unity】SpriteAtlas.GetSprite はスプライトの参照を返すのではなく複製するのでメモリに注意

概要 using UnityEngine; using UnityEngine.U2D; public class Example : MonoBehaviour { public SpriteAtlas m_atlas; private void Update() { m_atlas.GetSprite( "goal_01" ); } } 例えば上記のように Update 関数で毎フレーム SpriteAtlas.GetSprite …

【Unity】エディタ拡張でフォルダ(Mac なら Finder)を開く方法

概要 var path = @"D:\Hoge\Fuga"; EditorUtility.RevealInFinder( path ); EditorUtility.RevealInFinder を使用する

【Unity】スプライト用のアウトラインシェーダを導入する

はじめに この記事では上記のリポジトリに含まれている スプライト用のアウトラインシェーダを導入する方法を紹介していきます 使用例 使い方 上記のシェーダファイルを Unity プロジェクトに追加します シェーダを使用したいオブジェクトのマテリアルの Sha…

【Unity】MenuItem で絵文字を表示する

概要 [MenuItem( "Tools/⚙ Settings..." )] private static void Hoge() { } MenuItem に指定する文字列に絵文字を設定するだけで使用できる 使用できない絵文字や、Mac だと表示されるけど Windows 7 だと表示されない絵文字があるので注意