コガネブログ

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

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

【Unity】Post Processing Stack v2 を導入した後の初回ビルドは少し時間がかかる

空の Unity プロジェクト ビルド時間 初回 1:44 2回目以降 0:36 Post Processing Stack v2 を導入したプロジェクト ビルド時間 初回 5:25 2回目以降 0:44

【Unity】Scene View のカメラの位置と角度をシーンのメインカメラに同期させるエディタ拡張

ソースコード 使い方 Unity メニューの「Edit > Scene View Camera Align」をオンにすると Scene View のカメラの位置と角度をシーンのメインカメラに同期させることができます

【Unity】Post Processing Stack v2 で Bloom を使用した場合と自作した Bloom を使用した場合の Android 実機での FPS の違い(自分用メモ)

検証環境 Unity 2018.3.11f1 Post Processing 2.1.6 P10 lite 検証結果 Bloom 無し Post Processing Stack v2 の Bloom 自作した Bloom 補足 「自作した Bloom」の検証には下記のシェーダを使用させていただきました

【Unity】「Shader Graph Example Library」のサンプルシーンを Android で実行した場合の FPS(自分用メモ)

概要 「Shader Graph Example Library」のサンプルシーンを Android で実行した場合に FPS がどうなるか気になったので調査してみました (時間をかけて検証したわけではないので、あくまで参考程度のモノになります) 検証環境 Unity 2018.3.11f1 Lightweig…

【おすすめスライド】「Best Practices for Shader Graph」

スライド

【Unity】ShaderGraph で作成されたシェーダを .shader で使用する方法

概要 ShaderGraph でマスターノードを右クリックして「Copy Shader」を選択して、 コピーしたテキストを .shader 形式のファイルに貼り付けると使用できる

【Unity】ビルド時に Resources フォルダにテキストファイルを作るエディタ拡張

概要 using System.IO; using System.Text; using UnityEditor; using UnityEditor.Build; using UnityEditor.Build.Reporting; public class Example : IPreprocessBuildWithReport, IPostprocessBuildWithReport { private const string PATH = "Assets/Re…

【Unity】-batchmode -quit -executeMethod で関数を実行する時に EditorApplication.delayCall は使えない

概要 Unity.exe -batchmode -quit -executeMethod "XXXX.YYYY" 上記のようにコマンドラインから Unity プロジェクトの関数を実行しようとしたところ EditorApplication.delayCall で指定したコールバック内の処理に進まない現象に遭遇した

【Visual Studio Code】Jenkinsfile のシンタックスハイライトやスニペットが使用できる拡張機能「JenkinsFile Support」紹介

はじめに 「JenkinsFile Support」を VSCode に追加することで Jenkinsfile のシンタックスハイライトやスニペットが使用できるようになります 適用前 適用後

【Visual Studio Code】Jenkinsfile の文法が正しいかどうか検証できる拡張機能「Jenkins Pipeline Linter Connector」紹介

はじめに 「Jenkins Pipeline Linter Connector」を VSCode に追加することで Jenkinsfile の文法が正しいかどうか検証できるようになります 使用例 Ctrl + Shift + P でコマンドパレットを開いてから「Validate Jenkinsfile」を選択するか、 Shift + Alt + …

【Unity】削除済みのシーンが Scenes In Build に登録されていないかどうかテストできるコード

概要 削除済みのシーンが Scenes In Build に登録されていないかどうかテストできます

【Unity】シリアライズされたシングルトンなアセットの参照をエディタ拡張で取得できる「Unsupported.GetSerializedAssetInterfaceSingleton」

概要 using UnityEditor; using UnityEngine; public class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { var playerSettings = Unsupported.GetSerializedAssetInterfaceSingleton( "PlayerSettings" ) as PlayerSettings; Debug.Lo…

【おすすめスライド】「ゲームエンジン開発を支える技術」

スライド

【おすすめスライド】「BIOHAZARD RE:2の開発中のプレイログを収集した成果と過程」

スライド

【Unity】ハードエッジの 3D モデルでもキレイに表示できて、隠れている部分も表示できるアウトラインシェーダ「Facepunch.Highlight」紹介

はじめに 「Facepunch.Highlight」はハードエッジの 3D モデルでもキレイに表示できて、 隠れている部分も表示できるアウトラインシェーダです 使用例(引用) 使用例 適用前 適用後 使い方 「HighlightImageEffect」マテリアルでアウトラインのサイズや色を…

【Unity】クラスと構造体それぞれのインスタンスを object 型にキャストした時の GC Alloc の違い

クラス using UnityEngine; public class Example : MonoBehaviour { private class Hoge { } private Hoge hoge = new Hoge(); private void Update() { object obj = hoge; Hoge hoge2 = ( Hoge )obj; } } クラスの場合は GC Alloc は発生しない 構造体 us…

【Jenkins】「Custom Job Icon Plugin」はパイプラインのジョブにアイコンを表示できない

概要 「Custom Job Icon Plugin」を使用すると リストビューに好きなアイコンを表示できますが、 パイプラインのジョブにはアイコンを表示できないみたいです (Wiki にも同様の現象に遭遇している方の書き込みがありました)

【Unity】3D モデルがインポートされた時にマテリアルをプレハブ外に出すエディタ拡張

概要 現在の Unity は 3D モデルがインポートされた時に マテリアルがプレハブの中に内包された形になりますが、 using UnityEditor; public sealed class ModelPostprocessor : AssetPostprocessor { private void OnPreprocessModel() { var importer = as…

【Unity】10種類以上のシーン遷移演出を使用できる「TransitionKit」紹介

はじめに 「TransitionKit」を Unity プロジェクトに導入することで 10種類以上のシーン遷移演出を使用できるようになります 使用例 使い方 var fader = new FadeTransition() { nextScene = SceneManager.GetSceneByName( "TitleScene" ).buildIndex, faded…

【Jenkins】「Custom Job Icon Plugin」でアイコンをアップロードしようとしたら「HTTP ERROR 403」が発生した

概要 「Jenkins の管理 > グローバルセキュリティの設定」を開いて 「CSRF対策」のチェックを外すとアップロードできるようになりました 参考サイト様

【Unity】「unity-webview」で iOS の WKWebView を有効化する方法

概要 「unity-webview」で iOS の WKWebView を使用したい場合は var go = new GameObject( "WebViewObject" ); var webViewObject = go.AddComponent<WebViewObject>(); webViewObject.Init ( ... enableWKWebView: true ); Init 関数で enableWKWebView に true を設定し</webviewobject>…

【Unity】「unity-webview」を Mac の Unity エディタ上で使用する場合にエディタが強制終了してしまう現象を回避する方法

概要 Mac (Editor) Auto Graphics API/Metal Editor Support The current implementation reiles on several OpenGL APIs so you need to disable "Auto graphics API" and specify OpenGLCore as below. GitHub でも記載されておりますが、 Player Settings…

【Unity】パーティクルでメタボールの演出を実装できる「unity-metaball」紹介

概要 「unity-metaball」を Unity プロジェクトに導入することで パーティクルでメタボールの演出を実装できるようになります 使用例 使い方 シーンのゲームオブジェクトに「MetaballController」をアタッチして プレハブやマテリアルを設定します また、シ…

【Unity】Inspector に Sprite の画像プレビューを表示する機能を自作する

はじめに Inspector の Sprite の画像プレビューを表示する機能を自作する場合、 どのようなコードを記述すれば良いのか調べてみたのでメモ 方法 上記のスクリプトを Unity プロジェクトの「Editor」フォルダに追加すると 同じ見た目で Sprite の画像プレビ…

【雑記】TexturePacker をコマンドラインから実行する時に使用できるオプション一覧

概要 TexturePacker をコマンドラインから実行する時に 毎回どんなオプションが存在するのか忘れてしまうので、 TexturePacker --help で表示される内容を記載しておきます

【Unity】動くと乱れる LineRenderer の演出を実装できる「Unity MoveableLineRenderer」紹介

概要 「Unity MoveableLineRenderer」を Unity プロジェクトに導入することで 動くと乱れる LineRenderer の演出を実装できるようになります 使用例 使い方 「MoveableLineRenderer_Hand」プレハブや「MoveableLineRenderer_Neck」プレハブを シーンに配置す…

【Unity】Unity エディタのレイアウトのインポート・エクスポートができる「Unity-LayoutExporter」紹介

はじめに 「Unity-LayoutExporter」を Unity プロジェクトに導入することで Unity エディタのレイアウトのインポート・エクスポートができるようになります 使い方 Unity メニューの「Window>Layout Tools」から操作できます エクスポートしたい場合は「Expo…

【Unity】波紋、暗視、雪、ホログラムなど7種類のシェーダの実装を閲覧できる「Unity Shaders」紹介

はじめに 「Unity Shaders」では波紋、暗視、雪、ホログラムなど 7種類のシェーダの実装を閲覧できます シェーダ

【Unity】Scene ビューに手早くギズモを表示できる「FastGizmosUnity」紹介

はじめに 「FastGizmosUnity」を Unity プロジェクトに導入することで Scene ビューに手早くギズモを表示できるようになります 使用例 適用前 適用後 使い方 「FastGizmos」をアタッチすると任意のギズモを表示できます 表示できるギズモはこのように用意さ…

【Unity】uGUI でグラフを実装できる「XCharts」紹介

はじめに 「XCharts」を Unity プロジェクトに導入することで uGUI でグラフを実装できるようになります 実装例