コガネブログ

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

2020-09-01から1ヶ月間の記事一覧

【Unity】UniTask で非同期処理がすでに開始している場合は待機するだけのスクリプトメモ

コールバック版 using Kogane; using System; using UnityEngine; public class Example : MonoBehaviour { private readonly Hoge m_hoge = new Hoge(); private void Update() { if ( Input.GetKeyDown( KeyCode.Z ) ) { Hoge( "AAA" ); } if ( Input.GetK…

【Unity】Unity Hub で Unity プロジェクトごとに Unity Accelerator のキャッシュサーバを指定する方法

概要 -adb2 -EnableCacheServer -cacheServerEndpoint 【IPアドレス】:【ポート番号】 Unity Hub の各プロジェクトの三点リーダをクリックして 「詳細なプロジェクト設定」を選択して 入力欄に上記のコマンドを入力して「実行」を押すことで 次回からその Un…

【Unity】Unity エディタのデバッグモード・リリースモードを切り替えるエディタ拡張

概要 using UnityEditor; using UnityEditor.Compilation; public static class Example { [MenuItem( "Tools/Debug" )] private static void ToDebug() { CompilationPipeline.codeOptimization = CodeOptimization.Debug; } [MenuItem( "Tools/Release" )]…

【Unity】IOException: Directory Library/BuildCache\XXXX is not empty

概要 IOException: Directory Library/BuildCache\XXXX is not empty Addressable Asset System を使用しているプロジェクトで BuildCache.PurgeCache( false ); を実行したところ 上記の例外が発生することがあった 一度、手動で Library/BuildCache フォル…

【C#】using ステートメントに指定した変数が null でも抜ける時に例外は発生しない

C#

概要 using System; using UnityEngine; internal sealed class Hoge : IDisposable { public void Dispose() { Debug.Log( "ピカチュウ" ); } } internal class Example : MonoBehaviour { private void Start() { using ( Hoge hoge = null ) { } } } 上記…

【Jenkins】日時を指定してビルドできる「Schedule Build」紹介

はじめに 「Schedule Build」を Jenkins に追加することで 日時を指定してビルドできるようになります 使い方 ジョブのページで「Schedule Build」を選択することで 日時を指定してビルドできます 「Jenkinsの管理 > システムの設定 > Schedule Build Plugin…

【Jenkins】Sectioned View の List View Section のヘッダの文字サイズを変更する方法

概要 Jenkins に「Simple Theme」プラグインをインストールして 「Jenkins の管理 > システムの設定」の「Theme」の欄の「追加 > Extra CSS」を選択して .pane-frame h2 { font-size: 1rem; } を入力します 適用前 適用後

【Jenkins】実行予定のビルドの日時表記を変更する方法

概要 「Jenkins の管理 > システムの設定」を開いて 「Next Executions Configuration」の欄の「Date format」を yyyy/MM/dd HH:mm に変更する

【Jenkins】Jenkins Pipeline でタイムアウトした時のリザルトを Success にする方法

概要 pipeline { agent any stages { stage("Hello") { steps { script { timeout(time: 5, unit: "SECONDS") { sleep 10 echo "Hello World" } } } } // このステージはスキップされる stage("Hello2") { steps { echo "Hello World2" } } } } 通常、タイム…

【Jenkins】Jenkins Pipeline でステージごとにタイムアウトを設定する方法

概要 方法1 pipeline { agent any stages { stage("Hello") { steps { script { timeout(time: 5, unit: "SECONDS") { sleep 10 echo "Hello World" } } } } } } 方法2 pipeline { agent any stages { stage("Hello") { options { timeout(time: 5, unit: "S…

【Jenkins】フリースタイルのジョブをパイプラインに変換できるプラグイン「Declarative Pipeline Migration Assistant」メモ

概要 「Declarative Pipeline Migration Assistant」は フリースタイルのジョブをパイプラインに変換できるプラグインです デフォルトでは変換に対応していない機能も コンバータを自作することができます 参考サイト様

【Jenkins】ダークモードにできる「Dark Theme」紹介

はじめに 「Dark Theme」を Jenkins に追加することで ダークモードにできるようになります 使用例 使い方 「Jenkinsの管理 > システムの設定 > Themes」で「Dark」を選択します

【Jenkins】Jenkins Pipeline で他のジョブを実行した時に終了を待たない方法

概要 pipeline { agent any stages { stage('Hello') { steps { build( job: "【ジョブ名】", wait: false ) } } } } build する時に wait に false を設定する

【Jenkins】Jenkins Pipeline で定期的に実行を指定する方法

概要 pipeline { agent any triggers { cron( "0 10-19 * * *" ) } stages { stage('Hello') { steps { echo 'Hello World' } } } } triggers ディレクティブで指定する

【Jenkins】Jenkins Pipeline でタイムアウトを設定する方法

概要 pipeline { agent any options { //timeout(time: 5, unit: "MILLISECONDS") //timeout(time: 5, unit: "SECONDS") //timeout(time: 5, unit: "MINUTES") //timeout(time: 5, unit: "HOURS") timeout(time: 5, unit: "DAYS") } stages { stage('Hello')…

【Jenkins】タブを並び替えたい場合

概要 Jenkins のタブは自由に並び替えできない プラグインも存在しない? Jenkins のタブは数字順->アルファベット順で並び替えられるので タブ名の先頭に数字やアルファベットをつけることで意図した順番にすることは可能 参考サイト様

【Jenkins】Windows で Jenkins を開始・終了するバッチ

通常版 停止 sc stop Jenkins 開始 sc start Jenkins 再起動 set SERVICE_NAME=Jenkins sc stop %SERVICE_NAME% sc start %SERVICE_NAME% 自動で管理者権限で処理する版 停止 @echo off cd /d %~dp0 openfiles > NUL 2>&1 if NOT %ERRORLEVEL% EQU 0 goto pr…

【Jenkins】Jenkins でマテリアルデザインを使用できる「jenkins-material-theme」

概要 「jenkins-material-theme」を導入することで Jenkins でマテリアルデザインを使用できるようになります 検証環境 Windows 10 Jenkins 2.249.1 導入方法 Jenkins のプラグインマネージャーから「Simple Theme」をインストールしておきます Jenkins のシ…

【雑記】Mac のスリープ解除時にパスワードの入力をスキップする方法

概要 「システム環境設定 > セキュリティとプライバシー」を選択して 「スリープとスクリーンセーバの解除にパスワードを要求」をオフにする

【ReSharper】Attribute が適用された変数の定義が長い時に改行する方法

概要 ReSharper メニューの「Code Editing > C# > Formatting Style > Line Breaks and Wrapping」の 「Arrangement of Attribtues」の 「Place attribute section list on separate line if it is longer than」に 1行における文字数を入力する その文字数…

【Unity】Paste Component As New をスクリプトから呼び出す方法

概要 using UnityEditor; using UnityEditorInternal; public static class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { var gameObject = Selection.activeGameObject; ComponentUtility.PasteComponentAsNew( gameObject ); } } C…

【Unity】Console ウィンドウを自作するサンプル

概要 上記のサイト様が Console ウィンドウを自作するサンプルのソースコードを 公開してくださっております

【Unity】Standalone ビルドで Use Player Log をオンにした時に Player.log が出力される場所

概要 Project Settings で「Use Player Log」をオンにした場合 C:\Users\【ユーザー名】\AppData\LocalLow\【Company Name】\【Product Name】 上記のフォルダ内に Player.log が出力される 関連記事

【Unity】スタックトレースを取得する方法

概要 StackTraceUtility.ExtractStackTrace() 上記の関数で現在のスタックトレースを取得できる using UnityEngine; public class Example : MonoBehaviour { private void OnGUI() { Hoge1(); } private void Hoge1() { Hoge2(); } private void Hoge2() { …

【Jenkins】過去のパラメータを再利用してビルドできる「Rebuilder」紹介

概要 「Rebuilder」を Jenkins に追加することで 過去のパラメータを再利用してビルドできるようになります ビルド履歴を選択して「Rebuild」を押すと そのビルドで使用したパラメータを再利用してビルドできます

【Jenkins】Jenkins Pipeline から Slack に送信したテキストが文字化けする場合

概要 Pipeline script from SCM で読み込んだ .jenkinsfile で slackSend で Slack にテキストを送信したところ 日本語のテキストが文字化けした Pipeline script from SCM で読み込む .jenkinsfile の文字コードを UTF8 から SJIS に変更したところ正常に表…

【Jenkins】Jenkins Pipeline でビルドしたユーザーの情報を取得する方法

概要 「build user vars plugin」を Jenkins にインストールした状態で 下記のようなスクリプトを記述する pipeline { agent any stages { stage("stage1") { steps { wrap([$class: "BuildUser"]) { echo "${BUILD_USER}" // フルネーム echo "${BUILD_USER…

【Unity】Could not load symbol clCreateImage : 指定されたプロシージャが見つかりません。

概要 Could not load symbol clCreateImage : 指定されたプロシージャが見つかりません。 Could not load symbol clEnqueueFillBuffer : 指定されたプロシージャが見つかりません。 Could not load symbol clEnqueueFillImage : 指定されたプロシージャが見…

【Unity】CommandInvokationFailure: Gradle build failed.

概要 Multiple task action failures occurred: See the Console for details. 24 actionable tasks: 24 executed UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&) CommandInvokationFailure: Gradle build failed. C:\Program Files\Unity\Hub\Edi…

【雑記】java.exe の場所を確認するコマンド

概要 where java