Unity

Unity Companion License をゲームの権利表記に記載する必要はあるのか?

Unity でゲームを作ろうとすると、ほとんどの場合、Unity UI (uGUI) や TextMesh Pro といった Unity 公式のパッケージを何かしら使うことになります。 そしてそれらのパッケージの多くは、Unity Companion License というライセンスの下で配布されています…

Unity エディターでの Undo 操作の登録を便利するツールを公開しました

はじめに Unity エディターにおいて、Undo 操作の登録を簡単に行うことができるようになるツールを公開しました! github.com Unity Undo Extensions の使いどころ Unity での開発では、エディター拡張を書いてメニューにオリジナルの項目を追加したり、Ins…

Unity プロジェクト内の Missing を検索するツールを公開しました

はじめに Unity のシーンやプレハブの中にある、Missing になってしまっている参照やコンポーネントを検索し、コンソールに表示するツールを公開しました! github.com 使い方 このパッケージをインストールすると、メニューに Tools/GIGA CREATION/Missing…

CSV の特定の列を抽出して、リストや辞書を生成できるツールを公開しました

はじめに CSV の特定の列をリストにしたり、特定の列をキー・値に持つ辞書を生成できる、Unity 向けのツールを公開しました! github.com CSV を辞書にして表示させたもの 使い方 CSV からリストを生成する 1. 抽出したい CSV を準備します。 var csv = @" …

Unity 向けのサービスロケーターを公開しました

はじめに 概要 インストール Package Manager を使用する方法 手動でインストールする方法 使い方 基本の使い方 IDisposable とセットで使う 自作のインターフェイスとセットで使う API リファレンス 補遺 シングルトンとの使い分け サービスロケーターはア…

Rainbow Folders と一緒に使える、Unity 用のフォルダアイコンを公開しました

概要 Unity プロジェクトに Rainbow Folders を導入すると、Project View のフォルダアイコンがフォルダ名に応じたものになり、視認性が向上します。 このたび、その Rainbow Folders のフォルダアイコンのデザインに沿って作成した、自作のアイコンをいくつ…

Addressables.DownloadDependenciesAsync() によるダウンロードを、アセットバンドルごとに分けて行う

はじめに Addressables のダウンロードを行う場合、普通にコードを書くと以下のようになります。 // ※ラベル名を指定してダウンロードする場合 // Addressable アセットのラベル名 string labelName = "LABEL_NAME"; // 指定したラベルを持つすべての Addres…

Addressables.UpdateCatalogs() でカタログのアップデートに失敗しても try ~ catch をすり抜ける問題

発生した問題 サーバーに、新しいコンテンツカタログの hash だけあり、json は無いという状況で Addressables.UpdateCatalogs() を実行すると、エラーは発生するもののなぜか try ~ catch をすり抜けてしまう。 try { // これがエラーになっても…… await Ad…

Addressables.CheckForCatalogUpdates() で返ってくるリストが常に空になる問題

発生した問題 サーバーに置いてある Addressables のコンテンツカタログをアップデートしてから Addressables.CheckForCatalogUpdates() を実行しても、常に空のリストしか返ってこないという問題に遭遇しました。 解決方法 先に Addressables.InitializeAsy…

パッケージを一括アップデートする

Unity の Package Manager でインストールしたパッケージを一括アップデートする方法です。 manifest.json から、アップデートしたいパッケージの行を削除する。 Unity Editor に戻る。 おそらくコンソールにエラーが出ると思いますが気にせず次へ。 manifes…

Unity でサービスロケーターを使う

2023.02.20 追記 本記事で紹介しているスクリプトを発展させ、Package Manager から導入することができるサービスロケーターのパッケージを公開しています。 blog.gigacreation.jp はじめに 例えば GameManager のような、どこからでもアクセスしたい・一つ…

ルートに変更された Prefab があるかどうかを調べるエディター拡張

Prefab の Apply や Revert をし忘れていないかいつも心配になるので、それをチェックするエディター拡張を作成しました。 自分のワークフローだとルートに存在している Prefab だけをチェックするようにしたほうが都合が良かったのでそうしていますが、子孫…

モバイルにも対応した、Unity WebGL からツイートができるスクリプトを公開しました

はじめに 先日リリースした『ねねちーのお昼ご飯大作戦ある!』では、スクリーンショット付きで結果をツイートすることができます。 こんな感じ。 そしてこのたび、ここで使用したスクリプトを切り出して、GitHub にて公開いたしました。 github.com デモは…

最高の Hierarchy Window を目指して ~QHierarchy & Hierarchy Folders~

この記事は「Unity アセット真夏のアドベントカレンダー 2020 Summer!」2 日目の記事になります。 昨日のアドカレは、汗人柱さんの「Massive Clouds Atmosなど雲、天候、昼夜が美しい空アセット8連発!グラフィック & 機能比較まとめ」でした。 明日のアドカ…

TopDown Engine 入門 Part 14 ~効果音編~

【フィードバック】 キャラクターがジャンプした時の効果音、魔法を放った時のエフェクト、ダメージを受けた時の画面の振動――こういったゲーム中で何かが起こった時に再生する演出のことを、TopDown Engine では【フィードバック】と呼んでいます。 今回は基…

TopDown Engine 入門 Part 13 ~アニメーション編~

キャラクターがジャンプできるようにする 今回は、キャラクターの基本的なアニメーションの一つ、ジャンプを作っていきます。 Part 3 で実行した「AutoBuild Player Character 2D」により、すでにキャラクターに Character Jump 2D がアタッチされているので…

TopDown Engine + Rewired で NPC に話しかけたり扉を開けたりができない問題

「Interact」アクション TopDown Engine に Rewired を導入したところ、移動やジャンプはできるのに、話しかけたり扉を開けたりといった操作ができないという問題が発生しました。 この状態で A ボタンを押しても何も起こらない コードを見てみると、話しか…

TopDown Engine 入門 Part 12 ~ダイアログ編~

ダイアログ(会話テキスト)を表示させる TopDown Engine には、シンプルなダイアログシステムが備わっています。今回はこれを利用して、NPC に話しかけるとメッセージが表示されるようにしてみましょう。 ダイアログゾーン キャラクターに話しかけられるよ…

TopDown Engine のキャラクターを、アナログスティックと十字キーの両方で動かせるようにする

CharacterMovement の代わりに、以下のスクリプトをアタッチします。 using System; using MoreMountains.TopDownEngine; using UnityEngine; public class CharacterMovementCustom : CharacterMovement { float secondaryHorizontalInput; float secondary…

TopDown Engine で、Composite Collider 2D の Hole に入っても落ちれない問題

TopDown Engine では、CharacterFallDownHoles2D コンポーネントを持ったキャラクターが「Hole」レイヤーに設定されたコライダーを通ると落ちることができるのですが、Hole のコライダーが Tilemap Collider 2D + Composite Collider 2D だった場合、初期状…

TopDown Engine 入門 Extra ~Rewired 編~

TopDown Engine で Rewired を使うには 「Rewired」という、様々な種類のコントローラーやキーボード、マウス、画面のタッチイベントといったあらゆる入力を簡単に管理できる、人気のアセットがあります。他の有名なアセットとの連携も多数サポートしている…

Hierarchy 上の特定のコンポーネントを持つ GameObject のフォントカラーを変更するエディター拡張

using UnityEditor; using UnityEngine; public static class HierarchyFontColoring { static readonly Vector2 offset = new Vector2(18f, 0); // どんなフォントカラーに変更するか static readonly Color separatorColor = new Color(1f, 0f, 0f); [Init…

TopDown Engine 入門 Part 11 ~ルーム編~

ルームによってレベルを分ける Part 6 にて、レベル 1 を拡張し、2 つ目の部屋を作りました。その際、カメラの撮影範囲も広げたわけですが、現状だと片方の部屋からもう片方の部屋が見えてしまいます。 隣の部屋が見えないようにするには、スクリプトを書い…

TopDown Engine 入門 Part 10 ~初期位置編~

プレイヤーキャラクターの初期位置を変える 現状では、プレイヤーキャラクターの初期位置を指定していないので、シーンを再生すると (0, 0, 0) の位置に生成されます。今回は、初期位置を任意の座標に変更していきます。 レベル 1 とレベル 2 のそれぞれで、…

TopDown Engine 入門 Part 9 ~シーン遷移編 2~

レベル同士のシーン遷移 今回は、異なるシーンで作られたレベル同士を移動できるようにしてみましょう。 「sandbox_level2」というシーンを新しく用意し、以下のようなレベルを作りました。シーンは Build Settings にも忘れずに追加しておきます。 これを「…

TopDown Engine 入門 Part 8 ~シーン遷移編 1~

異なるシーン間を移動する 今まではずっと単一のシーンで制作してきましたが、タイトル画面や違うレベルの画面(フィールド←→ダンジョンなど)を制作する場合、別のシーンにすることが多いでしょう。今回は、こうしたシーン間の遷移を実装していきます。 と…

TopDown Engine 入門 Part 7 ~UI 編~

フェードイン・アウトを実装する 前回、テレポーターによるセクション間の移動を実装しました。しかし、画面の切り替わりが一瞬で行われるため、少々見栄えが悪いです。そこで今回は、セクション間の移動時に画面をフェードさせてみたいと思います。 Canvas …

TopDown Engine 入門 Part 6 ~テレポーター編~

異なるセクション間を移動できるようにするには レベルの中に扉や階段を配置して、別のセクションへ移動できるようにしたいという場合も多いでしょう。今回は、TopDown Engine にある【テレポーター】という機能を使い、セクション間の移動を実装していきま…

Cinemachine にコンファイナを設定してカメラの動きを制限する

TopDown Engine 入門 Part.5 ~カメラ編~ にて、TopDown Engine 用のコンファイナのセッティングをしましたが、TopDown Engine の機能を使わず Cinemachine の標準機能だけで設定する方法も紹介します。 カメラを 2D 用の設定に変更 「Main Camera」を選択…

TopDown Engine 入門 Part 5 ~カメラ編~

カメラの作り方は自由 このままだとキャラクターが移動しても画面が動かないので、キャラクターの動きに合わせてカメラも動くようにしてみましょう。と言っても、カメラに関しては TopDown Engine 特有の決まりはありません。単純にキャラクターに追随させる…

The coloring of this site is Dracula PRO🧛🏻‍♂️
This website uses the FontAwesome icons licensed under CC BY 4.0.

2020 GIGA CREATION