(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

(:3[kanのメモ帳]


本ブログの運営者kan.kikuchiが個人で開発したゲームです!


ChatGPTのお絵かきAI(DALL-E)にはチャット回数とは別に、1日100回ぐらいの制限があるという話 【AI】【ChatGPT】【DALL-E】

はじめに ChatGPTはDALL-Eという生成AIを使って、イラストを生成する事が出来ますが、 ある程度連続で使うと制限がかかる事がありました。 具体的にどれぐらいで制限がChatGPTに聞いた所、分からないというか明示されてないらしく、 自分(有料のPlusプラン)…

画像などのUIのアスペクト比(縦横比)を維持したい時はAspect Ratio FitterかImageのPreserve Aspect【Unity】【uGUI】

この記事でのバージョン Unity 2022.3.21f1 はじめに 今回はUnityのUI(uGUI)で、画像などのUIのアスペクト比(縦横比)を維持したいという時の話です。 なお、記事中では以下のアセットを使っています。 2D Casual Game UI Set - Unity Asset Store アスペクト…

Unity上で3Dキャラクター(アバター)の服の着せ替えるが簡単に出来る無料ツール「キセテネ」【Unity】【エディタ拡張】

この記事でのバージョン Unity 2022.3.21f1 はじめに 今回はUnity上で3Dキャラクター(アバター)の服の着せ替えが簡単に出来る無料(MITライセンス)ツール「キセテネ」の紹介です! もともとはVRChatのアバター用ですが、Unityのエディタ拡張なのでゲームのキ…

SourceTreeで強制的にプッシュ(git push --force)する方法【SourceTree】【Mac】【Windows】

今回はSourceTreeで強制的にプッシュ(git push --force)する方法の紹介です!Windowsだと上部メニューのツール/オプションから、 Gitタブを選び、「強制プッシュを有効にする」にチェックを入れれば、 プッシュ画面で「強制プッシュ」が選べるようになります…

複数のAnimationCurveの波形をブレンド(合成)して使う BlendAnimationCurve【Unity】【DOTween】

この記事でのバージョン Unity 2022.3.21f1 はじめに UnityはAnimationCurveを使うことで波形を定義し、波形に合わせた数値を取得する事が出来ます。 [SerializeField] private AnimationCurve _animationCurve; このAnimationCurveの波形をブレンド(合成)し…

DotweenのSetEaseにメソッドを指定して、プログラムで動きを制御する方法 【Unity】【DOTween】

この記事でのバージョン Unity 2022.2.8f1 DOTween Pro 1.0.381 DotweenのSetEase Unityで位置や大きさなどのアニメーション、いわゆるTweenを実装するアセットとしてお馴染みのDOTweenは、 DOTween Pro | Visual Scripting | Unity Asset Store SetEaseを使…

表示する対象の制限もしやすく、好きなシェーダーが使えるサイバーエージェント製の軽量デカールシステム「AirSticker」 【Unity】【URP】

この記事でのバージョン Unity 2022.3.21f1 はじめに 以前、デカール(Decal)という3Dモデルの表面の形に沿って、画像をスタンプのように投影して表示する公式機能の紹介しましたが、 このデカールは意図せず他のオブジェクトに映り込んだり、 貫通して裏面に…

CinemachineVirtualCameraの移動や補正中の現在値でなく、目標の位置を取得する方法【Unity】【Cinemachine】

この記事でのバージョン Unity 2022.3.21f1 Cinemachine 2.9.7 はじめに カメラ操作を簡単に行えるUnityの公式機能Cinemachineを使ってる際に、 カメラの位置を取得して、その近辺にオブジェクトを置こうと思ったらカメラが移動中だったため座標がずれた事が…

ゲームに完成はない。諦めただけだ。【雑記】

はじめに とある小説に「芸術に完成はない。諦めただけだ。」というレオナルド・ダ・ヴィンチの言葉が載っていました。 そこを読んで思ったのが「若干ニュアンスは違う気はするが、ゲーム開発も同じかもな〜」という事です。 少なくとも自分はゲームをリリー…

3Dモデルの表面の形に沿って、画像をスタンプのように投影して表示するデカール(Decal)の使い方【Unity】【URP】

この記事でのバージョン Unity 2022.3.21f1 はじめに 今回はUnityのURPで、デカール(Decal)という3Dモデルの表面の形に沿って、画像をスタンプのように投影して表示する公式機能の紹介です! イメージとしては以下のような感じ。 ちなみに同様のシステムにサ…

Cinemachineでカメラにランダムな振動や手ブレを追加する方法【Unity】【Cinemachine】

この記事でのバージョン Unity 2022.3.21f1 Cinemachine 2.9.7 はじめに 今回はカメラ操作を簡単に行えるUnityの公式機能Cinemachineを使って、 カメラにランダムな振動や手ブレを追加する方法の紹介です! なお、記事中では以下のアセットを使っています。 …

Cinemachineで自然にカメラ(視点)を切り替える方法【Unity】【Cinemachine】

この記事でのバージョン Unity 2022.3.21f1 Cinemachine 2.9.7 はじめに 今回はカメラ操作を簡単に行えるUnityの公式機能Cinemachineを使って、 自然にカメラ(視点)を切り替える方法の紹介です! なお、記事中では以下のアセットを使っています。 Japanese S…

カメラの操作や管理を簡単に行えるCinemachineの導入と設定、基本的な使い方【Unity】【Cinemachine】

この記事でのバージョン Unity 2022.3.21f1 Cinemachine 2.9.7 はじめに Unityには、カメラ操作を簡単に行えるCinemachineという公式機能があります。 これを使うと対象を追いかけたりなどのカメラの操作や管理が簡単に行えます。 という事で今回は、Cinemac…

URPでリアルな反射を表示するエフェクトSSR(Screen Space Reflections)を使う方法【Unity】【URP】【ポストプロセス】

この記事でのバージョン Unity 2022.3.21f1 はじめに UnityはSSR(Screen Space Reflections)と呼ばれる、リアルタイムに反射を計算して表示するエフェクトが使えます。 Japanese School Gymnasium - Unity Asset Store しかし、このSSRはビルドインではポス…

timeScaleを下げてスローモーションにした時に物理演算がカクカクする場合の対処法【Unity】

この記事でのバージョン Unity 2022.3.21f1 はじめに UnityはTimeのtimeScaleを操作する事で簡単に時間の進みを変えられます。 ただし、この値のみを変えると物理演算で動いてる物の動きがカクカクします。例えば以下のようにボールがバウンドしている時に、…

URPでより自然に暗くするエフェクトAO(Ambient Occlusion)を設定する方法【Unity】【URP】【ポストプロセス】

この記事でのバージョン Unity 2022.3.21f1 はじめに UnityはAO(Ambient Occlusion -アンビエントオクルージョン)と呼ばれる、現実では暗くなる場所(溝や穴など)をより自然に暗くするエフェクトが使えます。 しかし、このAOはビルドインだとポストプロセスで…

顔や手などの特定の部位だけ別のアニメーションにするためのAvatar Maskの作り方【Unity】

この記事でのバージョン Unity 2022.3.21f1 はじめに UnityではAvatar Maskを使う事で、顔や手などの特定の部位だけ別のアニメーションをさせる事が可能です。 今回はそのAvatar Maskの作り方の紹介です! Avatar Maskの作り方

「ゲームがヒットした理由」がなぜ簡単に分かるのか : その錯覚の原因【雑記】

はじめに ゲームを作ることを生業としているので、なにかのゲームがヒットした時は、それがなぜヒットしたのかみたいな事を考えます。 しかし、この"ヒットした理由"というのは、深く考えずとも意外とポンポン出てきたりします。 それは自分がゲーム開発者だ…

3Dモデルの影だけを表示する方法【Unity】

この記事でのバージョン Unity 2022.3.21f1 3Dモデルの影だけを表示する方法に 今回は3Dモデルの影だけを表示する方法の紹介です。 やり方は簡単、Mesh RendererのLightingにあるCast ShadowsをShadows Onlyにするだけ。(Skinned Mesh Rendererの場合も同じ)…

URPで複数のカメラを重ねて表示する方法【Unity】

この記事でのバージョン Unity 2022.3.21f1 はじめに Unityはデフォルト(ビルドイン)の状態だと複数のカメラ(Camera)を作成しても、CamaraのClear FlagをDepth Onlyにする事で背景が透けるため、重ねて表示する事が出来ます。 しかし、URPにはこのClear Flag…

Steam(works)でテストプレイヤーとしてユーザーアカウントを追加し、リリース前のゲームをテストプレイしてもらう方法【Steam】

はじめに Steam(works)は非公開ベータテストを使う事で、任意の人を招待して簡単にテストが行えますが、 リリースしていないゲームには使えません。 なので今回はテストプレイヤーとしてユーザーアカウントを追加し、リリース前のゲームをテストプレイしても…

Rigidbodyを使って任意の形(=メッシュ)で衝突するか通過するかをチェックする SweepTest【Unity】

この記事でのバージョン Unity 2022.3.21f1 はじめに UnityではRaycastを使って、指定の位置や方向に何か衝突するオブジェクトがあるかをチェックする事が出来ます。 しかし、Raycastは点や球などの決められた形でしか判定が出来ません。 と言う事で今回は、…

URPとビルドインがパッと見でどれだけ違うかの比較画像と動画【Unity】【URP】

この記事でのバージョン Unity 2022.3.21f1 はじめに Unityにはデフォルトの描画方法であるビルドインの他に、SRP(スクリプタブルレンダーパイプライン)という呼ばれる、新しい描画方法があります。 そしてSRPには以下の2種類があります。 高品質でリアルな…

3Dモデルのメッシュに合わせて正確なコライダーを簡単に自動作成してくれる Technie Collider Creator 2【Unity】【アセット】

この記事でのバージョン Unity 2022.3.21f1 Technie Collider Creator 2 1.2.1 はじめに Unityには3Dモデルのメッシュに合わせてコライダーを作るMeshColliderという機能がありますが、動かしたい時はConvexを有効にする必要があり、Convexを有効にすると形…

複数のプラットフォームやコントローラーに対応できるInput Systemの導入と設定、使い方【Unity】【Input System】

この記事でのバージョン Unity 2022.3.21f1 Input System 1.7.0 はじめに UnityはUnityEngine.Inputクラスを使う事で、コントローラーへの対応が比較的簡単に行えます。 しかし、様々なコントローラーに対応しようとすると途端に面倒になります。例えばデフ…

目的はなんですか?と聞いたら笑われた新卒の話【雑記】

とある一部(現:プライム市場)上場企業に、何でも目的を確認する新卒1年目のエンジニアがいました。 そんな彼は某ソシャゲを運営しているチームに配属されました。 そしてそのチームでは、若手だけで「担当者が何でも良いからゲームを紹介する」というプチ勉…

パーティクルをuGUIのCanvas上に表示し、UIの間にも簡単に表示できるParticleEffectForUGUI【Unity】【uGUI】

この記事でのバージョン Unity 2022.3.21f1 はじめに 今回はパーティクルをuGUIのCanvas上に表示出来るParticleEffectForUGUIという無料(MIT License)アセットの紹介です! イメージとしてはパーティクルを他のUIと一緒に配置するする感じで、UIの間にも簡単…

スプリングセール開催!約300のアセットが50%オフ!一部のアセットが日替わりで70%になるフラッシュディールも同時開催中!【Unity】【アセット】

はじめに Unity Asset Storeにてスプリングセールが始まっています!(期間 : 2024年5月8日まで) ​ 約300ものアセットが50%オフになっている上に、 Unity Asset Store - スプリングセール 24時間限定で最大70%オフにもなるフラッシュディールも同時開催され…

Unity再生中にコード(プログラム)の変更してもコンパイルをせずに即座に適用出来る Hot Reload【Unity】【アセット】

この記事でのバージョン Unity 2022.3.16f1 HotReload 1.12.9 はじめに 今回はコード(プログラム)の変更をコンパイルをせずに即座に適用出来るいわゆるホットリロードがUnityで行えるHotReloadというアセットの紹介です! Hot Reload - Unity Asset Store イ…

Steamを経由せずゲームアプリ(exeやapp)を直接起動された時に、Steamを起動して開き直す方法【Unity】【Steam】

この記事でのバージョン Unity 2022.3.21f1 はじめに 今回はSteamで配信したゲームアプリ(exeやapp)が、Steamを経由せずに直接起動された場合に、Steamから起動し直す方法の紹介です! ユーザーが意図して直接起動する事はあんまりないと思いますが、ファイ…