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

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

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

はじめに 例えば GameManager のような、どこからでもアクセスしたい・一つだけ存在していてほしいクラスを Unity で実装する場合、よく使われるのは【シングルトン】というデザインパターンです。 シングルトンは非常にシンプルでお手軽に実装でき、小規模…

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

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

Unity WebGL の実行環境が PC かモバイル端末かを判別するスクリプトを公開しました

PC モバイル はじめに PC では Post Processing を有効にしたいけど、モバイル端末では重たいので無効にしたい。 モバイル端末の場合はOnPointer*を切ってInput.Touchesを使いたい。 ……というように、PC とモバイル端末で処理を分けたいという場合がたまにあ…

Unity のビルド時刻を表示するスクリプトを公開しました

github.com 使い方 このパッケージをインポートした状態でゲームをビルドすると、ビルドが開始された時刻を int のフィールドで保持した ScriptableObject がAssets/BuildTimestampDisplay/BuildTimestamp.assetに生成されます。 uGUI の Text にBuild Times…

モバイルにも対応した、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 特有の決まりはありません。単純にキャラクターに追随させる…

TopDown Engine 入門 Part 4 ~ステージ編~

ステージ? いいえ、レベルです キャラクターの次はステージを作っていきましょう。なお、TopDown Engine では、ステージのことを【レベル】と呼んでいますので*1、このブログでも以降はレベルと呼ぶことにします。 TopDown Engine のレベルは Unity の標準…

TopDown Engine 入門 Part 3 ~最小構成編~

最小構成のシーンを作成 いよいよ自分でシーンを作成し、キャラクターを動かしてみましょう。適当な名前でシーンを新規作成します(ここでは「sandbox」という名称にします)。 親の顔より見たデフォルトの Skybox 各種マネージャーを配置 シーンを用意でき…

TopDown Engine 入門 Part 2 ~デモシーン編~

デモシーンを見てみる TopDown Engine のインストールが完了したら、デモシーンを見てどんな機能があるかを調べていきましょう。 様々なデモシーンが用意されていますが、最初は「MinimalSandbox2D」から見ていくのがオススメです。MinimalSandbox2D では、T…

TopDown Engine 入門 Part 1 ~インストール編~

はじめに 今日から「TopDown Engine」というアセットを使い始めるので、備忘録を兼ねて、このブログに学習したことを書き留めておきます。 TopDown Engine とは 「TopDown Engine」は、Unity 上で動作し、見下ろし型("トップダウン"ビュー)のゲームを簡単…

Visual Studio Code の Csscomb がカスタムプロパティを含む CSS でエラーになる

はじめに CSS / SCSS のプロパティを自動で並び替えてくれる、「CSSComb」というツールがあります。Visual Studio Code 用の拡張機能も存在し、Visual Studio Code で CSS を書く際に非常に便利なのですが、カスタムプロパティを含んだ CSS に使用するとエラ…

border を可視化して、CSS の調整をやりやすくする

CSS

* { border: 1px solid rgba(255, 255, 255, 0.25) !important; } いやまぁ、考えてみればめっちゃ当たり前のテクニックなんですけど、さっきこの手法を思いつくまで 10 年くらいずっとデベロッパーツールで頑張って調整してました……(´・ω・`).;:…(´・ω..…

Aseprite の UI を見やすくする

はじめに Aseprite は優れたドット絵エディターですが、自身がドット絵エディターであることを主張するかのように、UI にもドットフォントが採用されています。 Aseprite のデフォルトのトップ画面 これはこれで味があって良いのですが、さすがに見づらいの…

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

2020 GIGA CREATION