はなちるのマイノート

Unityをメインとした技術ブログ。自分らしくまったりやっていきたいと思いますー!

Unity

【Unity】OVRLipsyncで口パクがうまく動作しないとき【BlendShape】

はじめに 今までOVRLipsyncを正常に動いていたのですが、特定のAnimation Clipを再生したときのみ急に口パクをしなくなってしまいました。ただ一応解決することができたので、共有しておこうと思います。 はじめに 解決策 解決策 Animaiton Clipの中でBlendS…

【Unity】FacadeパターンとMediatorパターンの違いと使い分けについて

はじめに 今回はFacadeパターンとMediatorパターンの違いについて考えた後、それぞれの使い分けについて考えてみたいと思います。しかし私自身まだ習いたてなので、間違っている情報を書いてしまっている可能性があります。注意してください。 はじめに 2つ…

【Unity】サービスロケーターを使ってみる

はじめに 今回はServiceLocatorパターンというよくDependency Injectionパターンの前座として紹介されるデザインパターンを取り上げたいと思います。 はじめに 実装 使い方 テストをやる サービスロケーターの良し悪し さいごに 実装 サービスロケーターの実…

【Unity】"setting Anti-aliasing Of Already Created Render Texture Is Not Supported!"というエラーの対処法

はじめに Unityを使っていたらこのようなエラーが出てきました。 setting Anti-aliasing Of Already Created Render Texture Is Not Supported! エラー一応解決することができたので、共有しておこうと思います。 解決策 これはどうやらURP(HDRPでも?)で出…

【Unity】Simplest Mesh Bakerを使ってメッシュを結合してみる

はじめに 今回はSimplest Mesh Bakerというアセットを用いてメッシュを結合し,その効果をみていきたいと思います。 使い方についても紹介したいと思いますが,詳細は公式動画を参照してみてください。(といっても名前の通り超簡単ですが) https://www.youtu…

【Unity】はじめてでも簡単インスペクターのエディタ拡張の手順

はじめに みなさんエディタ拡張していますか?私はエディタ拡張という名前からかなり高度な知識が必要では?と初めは思っていたのですが、実際に触ってみると意外とシンプルだったと感じました。この記事ではインスペクターのエディタ拡張を扱い、以下の画像…

【Shadertoy,Unity】Shaderを初めて本格的に触ってみる

はじめに 私はUnityというゲームエンジンに実装されているShaderGraphというノードベースで視覚的にShaderを作れるツールを使ってShaderを作成していました。 イメージただ学校のとあるイベントでシェーダーの知識が必要になったので、コーディングの方も本…

【Unity】UniRxを用いてアプリケーション終了時に何かしらの処理をする(OnApplicationQuitAsObservable)

はじめに 最近OnApplicationQuitAsObservableというメソッドを知ったのですが,ネットの記事でほとんど取り上げられていなかったので軽く書いておきたいと思います。 はじめに アプリケーション終了時に処理をする もう一息 アプリケーション終了時に処理を…

【Unity】LineRendererをスクリプトから自由自在に操る

はじめに 今回はLineRendererについて取り上げていきたいと思います。docs.unity3d.comインスペクターでの設定の方法というよりは、スクリプトから扱う方法をメインに網羅的に紹介していくのであしからず。 はじめに 一本の線を引く 線の太さを変える 線の太…

【Unity】HttpClient,UnityWebRequestにタイムアウトを設定する方法

はじめに Unityで通信を行おうと思った場合、HttpClientもしくはUnityWebRequestのどちらかを使うことが多いでしょう。これらを用いるに当たってタイムアウト処理を設定しておかないと、永遠に処理が終わらないなんてこともあるかもしれません。今回はそれを…

【Unity】指定したフォルダ以下のファイルで使用されている文字を列挙するエディタ拡張を作ってみた

はじめに 先日このようなエディタ拡張を作成しました。指定したフォルダ以下に含まれるファイルで使用されている文字列を列挙してくれるエディタ拡張を作ってみました!TextMeshProのテキストを使用するものだけにして容量削減するときに活躍してくれそうhtt…

【Unity】3Dモデルの関節のTransformをAnimatorコンポーネントから取得する(GetBoneTransform)

はじめに UnityのHumanoidモデルには,モデルのImportSettingよりそのボーンマッピングをみることができます。 アバターの Mapping タブ - Unity マニュアル unityちゃんのボーンマッピング今回はボーンに対応したゲームオブジェクトをスクリプトから取得す…

【Unity】Device Simulatorを使ってデバイス上での描画をエディタで確認する

はじめに unity2019.3からpackage managerに登場したDevice Simulatorですが,公式の説明に面白そうなことが書かれていました。 Device Simulator is an alternative to the traditional Unity editor Game window. By simulating Screen and SystemInfo cla…

【Unity】いつの間にかPlayerPrefsを削除する機能がデフォルトでできるようになっていた件

はじめに ゲームデータのセーブ・ロードの手法の一つとしてPlayerPrefsがあります。このPlayerPrefsですが昔はエディタ画面で編集することができなく,エディタ拡張を使って自分で実装する必要がありました。 www.hanachiru-blog.comしかしどうやら編集まで…

【EasySave3】EasySave3がAssembly Definitionを定義していると使えない件

はじめに 私自身Assembly Definitionに詳しいわけではないので間違った情報を言ってしまっている可能性もありますが、EasySave3にはAssembly Definition Filesが定義されていないようでした。そうするとなにが辛いかというと、Assembly-CSharpでないアセンブ…

【Unity】事前ロード,アンロードを実装する(AsyncOperation.allowSceneActivation)

はじめに 今回はあらかじめシーンのロードを行っておき,任意のタイミングでシーンの読み込みを完了するような処理を実装していきたいと思います。例えばフェードアウトの処理をしている間に、次のシーンのロードを裏で行ってしまうみたいな使い方ですね。実…

【Unity】フェードイン・アウトをShaderGraphで作ってみる

はじめに 今回ShaderGraphで作るフェードイン・アウトはこちら。結構簡単に作ることができるので、ShaderGraphの練習としても使えるかもしれません。早速みていきましょう。 はじめに 方針 全体 さいごに 方針 alpha値を円形内を0,外を1とすることで再現を…

【Unity】ShaderGraphでカートゥーンな海を作ってみる

はじめに 今回はShaderGraphを用いてカートゥーン風な海を作ってみたいと思います。 (一応開発中の未公開ゲームの一部なので、このブログをみた方のみの秘密です)GIFだとわかりにくいかもしれませんが、水面や水面の高さが動的に動いていたりします。 はじめ…

【Unity】iOS,Androidでメモリが少なくなったときのコールバックを設定する(Application.lowMemory)

はじめに Unityの公式ドキュメントをみていたら面白そうなイベントを見つけました。 docs.unity3d.comこれについて軽く紹介をしていきたいと思います。 はじめに Application.lowMemory 使い方 さいごに Application.lowMemory Application.lowMemoryという…

【Unity】xorを使った暗号化の基礎からPlayerPrefsの暗号化クラス作成まで

はじめに 今回はxor(排他的論理和)についてみていきます。xorを使った暗号化はかなり簡単な分類の暗号化アルゴリズムとして知られているので、すぐに習得できると思います。またその応用としてUnityのデータのセーブ・ロードのために用いられるPlayerPrefsを…

【Unity】ScriptableObjectを使ってインスペクターを使ったポリモーフィズムを実現する

はじめに 今回はScriptableObjectを使った一例を紹介したいと思います。どんな例かというとインスペクターを使ったポリモーフィズムの実現です。よくある例をみてから、それをどう改善していくかをみていきましょう。 はじめに シンプルなもの 問題点 Script…

【Unity】Joystickをアセットパワーで楽々実装する

はじめに モバイルのゲームを作る場合、Joystickは避けて通れないといっても過言ではないでしょう。私も今回作っているゲームに組み込もうと思いどう実装しようか悩んでいたところ、このようなアセットを見つけました。 このアセットを用いて以下のGIFのよう…

【Unity】Taskでメインスレッドを止める・止めない実例集

はじめに 非同期処理やマルチスレッド処理をするときにTaskを使ったりすると思います。ただUnityは基本全てメインスレッドで動くので、誤ってメインスレッドを止めてしまった場合他の処理が止まってしまう危険もあります。←正しくTaskを使えた場合 メインス…

【Unity】頂点移動を題材にShaderGraphからコーディングを考える

はじめに SRP(Scriptable Render Pipeline)にて利用可能なShaderGraphですが、標準レンダリングパイプラインでは利用することができません。私はShaderGraphからShaderを触り始めた身なのですが、どうしてもSRPが使えない環境(プロジェクト)もありボチボチコ…

【Unity】ProBuilderをURPでも使うために必要なマテリアル(Shader)をインストールする

はじめに ProBuilderでVertex Colors Editorという機能を用いて頂点に色をつけようとするにはマテリアルにProBuilder用のシェーダーを設定する必要があるはずです。(別のマテリアルを適応して色を変える場合は除く)www.hanachiru-blog.comただURPだとそれが…

【Unity】Cinemachineを初めて触ってみる

はじめに 今回はCinemachineというアセットを触ってみるという記事になります!Cinemachineとはカメラワークを作成することができるアセットになります。とりあえず簡単なカメラワークを作成を目指していきたいと思います。 はじめに 下準備 概要 Chinemachi…

【Unity】マルチシーンエディティングを初めて触ってみる

はじめに 今回はマルチシーンエディティングを使ってみようという記事になります! 複数シーン編集によって、複数のシーンを同時にエディター上で開くことが可能になり、実行時でも簡単に複数シーンを管理できるようになりました。エディターで複数のシーン…

【Unity】Kinectを使って身体座標を取得してみる

はじめに アルバイトにてKinectを使う必要があったので、その基本的な操作であるKinectを使った身体座標の取得を紹介したいと思います。 はじめに 下準備 身体座標を取得する 座標の取り出し方 手の状態を取得する さいごに 下準備 こちらの記事が分かりやす…

【Unity】Unity Test Runnerを初めて触ってみる(EditModeのみ)

はじめに 今までUnityを使ってきてテストをしたことがなかったのですが、UniRxについて調べた時にTest Runnerがすごい便利だと気づいたので初めて触ってみました。そこで備忘録の意味合いもかねてやり方を書き残しておきたいと思います。 はじめに 環境 下準…

【Unity】UniRxをクイズ形式で学んである程度使えることを目指す

はじめに 先日UniRxに関する非常に分かりやすい記事を見つけました。qiita.comいままでUniRxの中身をブラックボックスと捉えて表面上の使い方だけを学んでいたのですが、しっかりと使うためにはやはり内部構造を知るのは欠かせません。そこでこちらの記事で…