indie-game-creation-with-unity.hatenablog.com Open in urlscan Pro
54.199.90.60  Public Scan

Submitted URL: http://indie-game-creation-with-unity.hatenablog.com/
Effective URL: https://indie-game-creation-with-unity.hatenablog.com/
Submission: On June 09 via api from US — Scanned from JP

Form analysis 1 forms found in the DOM

GET https://indie-game-creation-with-unity.hatenablog.com/search

<form class="search-form" role="search" action="https://indie-game-creation-with-unity.hatenablog.com/search" method="get">
  <input type="text" name="q" class="search-module-input" value="" placeholder="記事を検索" required="">
  <input type="submit" value="検索" class="search-module-button">
</form>

Text Content

Unityでインディゲームを作る!
読者になる


UNITYでインディゲームを作る!


UNITYでのゲーム制作を目指し、それに関わる話題についてのブログ

2024-06-04


MADEWITHUNITY探検隊!"COCOON" 様々な世界を飛び交う者

MadeWithUnity

 LimboやINSIDEのリード・ゲームプレイデザイナーが作り上げたことでも話題になった、パズル・アドベンチャー"COCOON"が今回取り扱うMadeWithUnity作品です。



 ローポリながらも雰囲気のある、美麗でスケールの大きいマップを探検しながら、謎を解いていくゲームです。主人公はオーブを集めながら、そのオーブを使って様々な空間を飛び回るという三次元パズルゲームとなっています。

 移動のためのスティック(あるいはWASDキー)、そして1つのアクションボタンという、とてもシンプルな操作体系になっていますが、それでいながら様々なギミックを楽しめるゲームです。

 キーボード操作だと片手で出来るゲームであり、これは昨今のインディーゲームのトレンドにもなっていますね。



 何よりグラフィックがとても良いです。おそらくUniversal Render
Pipelineによるものだと思うのですが、昨今のUnity製のゲームとして大変良い見本となる作品だと思います。正直、このゲームはプレイヤーとマップ上のオブジェクトのインタラクションはほとんどなく、パズル要素以外にプレイヤーが積極的にマップを歩き回る要素はあまりないのですが、それでも色々と探索したいと思わせてくれるグラフィックと環境デザインになっています。

 プレイヤーキャラの大きさに対して大き目なマップを場合によっては行ったり来たりすることになるのですが、移動における苦痛はまったくありません。レスポンスが良くて移動速度も丁度よい感じに素早く、そこらへんも調整されていることがわかります。

 

 自分は6~7時間ほどでクリアしました。とりあえず二週プレイしましたが、慣れたら3時間程度でクリアできるので気軽に遊べるのも良いですね。インディーゲームとしてはまぁまぁの容量だと思いますが、前述した通り世界観も楽しめるゲームとなっているのでリプレイ性は高いのではないでしょうか。RTA(Speed
Run)をやるのにも向いたゲームだと思いました。

 

※ひとつだけ注意点があるのですが、主人公を含め虫や昆虫モチーフの要素がほんの少しだけあるので苦手な人は気をつけてください。一応直接的な虫は出てきませんし、過剰にグロイ敵キャラなどは出てはこないのですが、とあるボス戦で地面がウジ虫みたいな幼虫で埋め尽くされる!なんて表現があったりします。そういうのは2つだけなのですが・・・。Hollow
Knightをやった時にも思いましたが、昆虫の造形はデザインの参照としては魅力的ですが、苦手な人もいるので難しいなぁと思います。注意点は以上です!

 


パズルゲームだけど・・・

 とても良く出来たゲームであり、インディゲームとしては傑作と言えるであろう作品だと思います。パズルのギミックも面白いです。



チューブ内を通り落ちてくるオーブを追いかけて進路を変える

 ただし、思っていたよりもアクション性は高いとは思いました。ジャンルとしてはパズル・アドベンチャーというべき作品で、基本的にはマップを探索しながらパズルやギミックを解いて進んでいくというものになっているのですが、たまにアクション性を要求される部分がいくつか出てきます。

 アクション性というのはタイミング要素だったり、素早く操作できるか?という操作精度要求がある、ということです。そして、ボス戦があり、これはもう完全にアクションゲームになります。ボス戦は初見だと若干難しく何度か失敗しましたが、失敗によるペナルティは『最初からやり直し』のみです(それが嫌な人もいるでしょうが)

 

 幸いなことにアクションゲーム要素も良く出来ており、自分はとても楽しめました。しかし、アクションが苦手な人や純粋なパズルゲームを期待していた人にとって、この思ったよりはあるアクション要素がどう作用するかは個人的には気になりました。

 


ゲーム(プレイヤー)のためのビジュアル・デザイン

 このゲームの特徴として、広大なマップやそれに伴う環境デザインがあるわけですが、それによってプレイヤーが混乱しないように丁寧にビジュアルデザインがされています。プレイヤーがそれなりに小さいにも関わらず、一画面の中にマップの全体像が収まることがほぼないからです。

 もちろん、プレイヤーの移動可能領域をきちんと制限したり、あるポイントごとに的確に通行止めしたりすることで、ゲームプレイ上でプレイヤーが混乱しないようにしていますが、それに加えて視覚的にもプレイヤーの認知負荷を下げるようにきちんとデザインされています。



橋が見やすいようなカラーリングと形状でデザインされている

 特に自分が良いなと思ったのはカラーデザイン(色彩設計)です。全体として調和しながらも、プレイヤーにとって重要な部分については画面を見てすぐ分かるような視認性の高いカラーリングが施されています。

 はっきり言って、メジャータイトルを含め、きちんと色彩設計が出来ているゲームは現代においてもそこまで多くないです。この作品はローポリ・スタイルではありますが、そこがしっかりしているので決して淡白な画面になっていませんし、見栄えが良くそれでいてプレイフィールも良いゲームになっています。そういう部分でも今後のインディタイトルの見本となるはずです。

 


このゲームを支配する、ある概念

 ネタバレになってしまうので伏せますが、このゲームのパズルを解く上でとても重要な『ある概念』があります。自分はそれを前半で掴めきれず、ある時点で詰みかけてしまいました。気づいてしまえば、良く出来た概念ではあるのですが、それを気づかせる仕組みが若干弱いかもしれない、とは思いました。

 しかし、この概念はこのゲームならではのものであり、それを視覚的にもギミック的にも上手く利用しているのが素晴らしいと思います。

 


音楽の使い方

 このゲームの音楽は基本的にはアンビエント・ミュージックで抽象的なサウンドになっています。具体的に説明されることのない、ミステリアスな世界観を更に引き立てるものとなっています。

 

 そして、パズルゲームということなので、それに合った使い方もされています。それはパズルの進行度が上がると、音楽が変化が現れて問題が解決に向かっているムードをきちんと出す、ということです。

 この作品は当ブログでもお馴染みのFMODを使用しており、それによりゲームの進行度に合わせて、音楽をコントロールしているのだろうと思われます。これもアダプティブ・オーディオの活用例のひとつでしょう。

 


パズル・ゲームの難しさ

 しかし、今回"COCOON"をやっていて思ったのはパズルゲームを作るのは難しい、ということです。このゲームはパズルゲームとしてはほぼ弱点はなく、このゲームならではのギミックもきちんとあります。それでも、いくつかあった詰みかけポイントでは自分はやっぱりイライラしてしまいましたし、バグか?なんて思ったこともありました。まぁそういう時は少し休むか寝ると解けたりするわけですが。

 ただ、悩んで解決したからこそ得られる感動もあるわけで、パズルゲームはその塩梅が本当に難しいなと思います。



鍵となる羽虫型ロボットをパスワードを入力し手に入れる

 このゲームはテキストを徹底的に排除しており、説明やヒントもありません。プレイヤーに自分で気づかせるという構造はかなりの挑戦です。しかし、パズル要素以外のストレスになりうる部分は徹底的に排除されコントロールされているという部分はこのゲームの素晴らしい所であり、それをやって初めてこのようなパズルゲームが成立するのだろうと思います。

 

 前述した通り、このゲームをプレイする上で理解すべき重要な『ある概念』を気づかせる仕組みが少しだけ弱いかもしれません。しかし、実はヒント自体はちゃんと出てはいますし、難易度設計自体もかなり丁寧にされていて、昨今のインディゲームのレベルの高さを感じさせてくれます。

 パズル・アドベンチャーというジャンルを抜きにしても、今後のインディシーンやUnity製のゲームに大きな影響を与える作品のひとつになるはずです。

 


まとめ



 というわけで"COCOON"について書いてみました。インディゲームとしては傑作でしょう。もっと早くやるべきでした!インディゲームでありながらも、素晴らしいクオリティやスケール感を実現させており、自分にとっても目指すべき目標となるゲームのひとつと言えます。面白かったです!

 

uni-mal 5日前 読者になる




広告を非表示にする

 * もっと読む

コメントを書く
2024-04-09


ゲーム・テンポとゲーム・スピードについて少し考える。

ゲーム制作

 ゲームテンポとゲームスピード、どちらも速さ(早さ)に関係する言葉ではありますが、これはきちんと区別すべき概念だと思っています。今回は、この二つの概念について、メモ書き程度に少し考えていきたいです。

 


ゲームテンポ

 いわゆるテンポが良い、テンポが悪い、という風に語られるゲーム・テンポですが、これはゲームの段取りや進行にまつわるスピード感、あるいは早さだと考えられます。実際のゲームプレイそのもののスピード感とはあまり関係なく、ゲームプレイに至るまでの段階や遷移におけるスムーズさを表す言葉であるべきでしょう。

 

 テンポが悪い、というのはもちろん避けるべきことで、ゲームが始まるまでに時間が無駄に掛かる(ロードが長い)、準備が煩わしい、毎回いちいち設定しないといけない、みたいなことですね。ゲーム進行の段取りが悪い、ということであり、ゲームプレイそのものは面白くても、その外側にストレスがあるという状態になります。

 またワン・ゲームのサイクルの長さもテンポに影響を与えるはずです。無駄に長いよりは、子気味良い長さで何回も遊べた方が楽しいと考えられます。

 

 現代では、とにかくスピーディに、テンポよくゲームが進行することの重要性が高くなっているので、ゲームプレイに直接関係なくても気を付けたい部分です。

 


ゲームスピード

 まさしくゲームそのもののスピードであり、ゲーム体験の核に関わる部分です。早ければいい、というものでもなく、速すぎても難しくなってしまうし、遅すぎても簡単になりすぎたり、爽快感が無くなってしまったり、そのゲームに相応しいゲームスピードが出るようにデザインしよう、ということになります。

 

 ゲームスピードは何によって決まるのか?自キャラや敵キャラの動くスピード?ボタンを押す時間間隔の短さ?意思決定までの制限時間?展開の速さ?イベントの頻度?

 

 不思議なもので、見てる分にはスピーディに見えるけど、実際触ってみると、そんなに操作は忙しくなかったり、また逆の場合もあります。理想としてはある程度、スピーディに見える方が見栄えは良いですが、自分で触った時には程よくマイルドなスピード感であることが望ましいはずです。

 

 ゲームプレイそのもののスピード感であり、ゲームデザインと密接に関係する部分なので、そのゲームに適切なゲームスピードを見つけられるようにしたいです。

 最近の傾向としては、必ずしもゲームスピードが速ければいい、ということはなく、瞬間的に速かったとしても、全体的にはむしろゆったりとしてゲームが好まれているような気がします。忙しいゲームはあまり好まれない、ということなのかもしれません。

 


まとめ

 というわけで、ゲームテンポとゲームスピードについて、少し考えてみました。混同されかねない、この二つの言葉に対してはそれぞれを意味、重要性を考えつつ、ゲームを作っていけたらなと思います。

 

uni-mal 61日前 読者になる




広告を非表示にする

 * もっと読む

コメントを書く
2024-03-07


君はUNITY パッケージ・ドキュメントを知っているか!?

Unity

 Unityではパッケージという単位で各機能がモジュール化されており、必要な機能があればパッケージ・マネージャからインストールする、という形式になっています。

 そして、そのパッケージごとに専用のドキュメントが用意されており、実はこれがかなり詳しくて勉強になるものなのです。

 

 どう考えてもこれは活用すべきなんですが、検索にあまり出てこない傾向もあり、あまり周知されていないように思います。そこで、今回はこのパッケージ・ドキュメントへの移動の仕方を簡単にまとめます。

 


ドキュメントページへのリンク



 まずはUnity公式のマニュアルのトップページに行きます。そのページのパッケージ項目(上画像)に検証済みパッケージというリンクがあります。ここをクリックすると公式マニュアルのパッケージ・セクションへと飛びます。



 ここに現在、正式版となっているパッケージ群がまとめられており、パッケージ・ドキュメントへのリンクもそれぞれ併記されています。



 このページのリスト、あるいは各ページの上部にあるパッケージ・ドキュメントへのリンクをクリックすると、それぞれのページに移動します。例としてAddressablesのページにいますが、ここは一部日本語化されています。



 

 こんな感じで気になったパッケージ(機能)のドキュメントを流し見でもいいから目を通しておくと良い事があるかもしれません。

 

uni-mal 93日前 読者になる




広告を非表示にする

 * もっと読む

コメントを書く
2024-03-03


FMODでグローバル・パラメータをIDでコントロールする [PARAMETER_ID]

Unity FMOD

 Unityで使うことのできるオーディオ・エンジンのひとつとしてFMODがあります。FMODでは『パラメータ』を使って、臨機応変にサウンドを変化させることが可能ですが、プロジェクト全体に作用させることの出来る『グローバル・パラメータ』がver
2.00から導入されました。

 

 FMODUnity.RuntimeManager.StudioSystem.setParameterByNameを使えば、スクリプト上のどこからでも、グローバル・パラメータを変化させることが出来ます。

 しかし、このメソッドは文字列を使っているため、ID(int)を使うことで処理の負荷を下げたいです。

 

 というわけで今回の記事はグローバル・パラメータのIDを取得する方法について書きます。

 


PARAMETER_DESCRIPTIONの取得

 まずはPARAMETER_ID
private変数を用意します。今回は_progressIDと_sceneIDの二つ。取得したIDをキャッシュしておくために必要です。



PARAMETER_DESCRIPTION一時変数を二つのパラメータに使いまわしてます

そして、AwakeかStartメソッドで

FMODUnity.RuntimeManager.StudioSystem.getParameterDescriptionByName

を使ってPARAMETER_DESCRIPTIONを取得、id変数からPARAMETER_IDを獲得します。



Update内でゲームを制御するメソッドの一部分

FMODUnity.RuntimeManager.StudioSystem.setParameterByID

を使って、グローバル・パラメータを効率良く変更することが出来るようになります。

 

 グローバル・パラメータを上手く使えばパラメータ管理がかなり楽になるので、上手く活用していきたいですね!

 

uni-mal 97日前 読者になる




広告を非表示にする

 * もっと読む

コメントを書く
2024-02-21


UNITY EVENT TRIGGER コンポーネントを使って、自動で閉じるコントロールパネルを作る!

Unity

 よくあるUIとしてアイコンをクリックするとパネルが開き、マウスカーソルがその範囲から離れると自動で閉じる、というモノがあります。これはゲームに限らず様々な分野のアプリで見かけるパターンだと思いますが、今回はこれをEvent
Triggerコンポーネントを使って作る!という内容です。



 自分が作っている、とあるミニゲームでは画面右上にスピーカーアイコンがあり、それをクリックするとパネルが展開され、表示されるスライダーで音楽と効果音の音量が調整出来ます。このパネルを閉じる時、もう一度アイコンをクリックするのは面倒ですよね。だからパネルからカーソルが離れたら自動で閉じるようにしたいです。

 



 このゲームには音楽を管理するスクリプトがあり、そこでオーディオコントロール・パネルの開閉を行うメソッドを定義しています(上写真)。処理内容としては、パネルのゲームオブジェクトへの参照からSetActiveを使って表示を切り替えるだけです。

 それをオーディオアイコンとしているButton(Text Mesh Pro)のonClickにアサインしているわけですが、このメソッドをパネルのEvent
Triggerの方にも追加します。



 パネルはヒエラルキーの追加メニューのUI項目から。そこにEvent Triggerコンポーネントを追加し、後はパネルのインスペクター上でRaycast
Target設定にチェックを入れておきます。これが無いとマウスカーソルに反応してくれません。



 Event
Triggerでは複数の中から自由にイベントを追加でき、今回はPointerExitを選択します。これは対象のUIからカーソルが離れた時に発生するイベントです。



 該当するスクリプトを持つゲームオブジェクトを選択し、ドロップボックスからToggleAudioControlPanelメソッドを選択します。これで動作を確認すると、確かにカーソルがパネルから外れると自動で閉じるようになっているはずです。

 

 しかし、このままだとアイコンの上にカーソルをやるとパネルが消えてしまいます。アイコンにカーソルが乗ったことでパネル及びその子UIオブジェクトからExitしたと判定されるからです。



 なのでヒエラルキー上でアイコンの方を上にして(ヒエラルキー上で下にあるものが手前に表示される)、コピーしたアイコンをパネル内部に配置します。すると、従来のアイコンはパネルの下に表示される形になり、PointerExitイベントが発生しなくなります。(ボタンを押して閉じる場合に押すのはコピーされたアイコン)

 

 というわけで、Event Triggerコンポーネントを使うと、Unity UIで簡単に自動開閉するパネルを作ることが出来ました。

 やはり、こうしたゲームプレイとは直接的に関係のない操作については、出来る限り簡潔でストレスの少ないモノにしていきたいですね!

 

uni-mal 108日前 読者になる




広告を非表示にする

 * もっと読む

コメントを書く
次のページ

プロフィール
uni-mal
読者です 読者をやめる 読者になる 読者になる
8
このブログについて
検索

注目記事!
 * Unity TextMeshProのテキストをスクリプトから操作する、変更方法について [ UI text ]
 * Unityエディターでゲームを実行するとヒエラルキーに出てくる謎のDontDestroyOnLoadについて
 * Switch版ダークソウル・リマスターをクリアして 【ゲーム感想】
 * Unity使いがGodotを触ってみた感想を率直に語る!
 * BlenderでFBX出力時の座標軸設定とUnityインポート時の設定について

カテゴリー
 * MadeWithUnity (22)
 * ゲーム制作 (15)
 * FMOD (2)
 * Unity (32)
 * UnityのためのC# (23)
 * Blender (6)
 * Unity_eBook (21)
 * プログラミング (44)
 * 書籍レビュー (6)
 * Unity動画 (3)
 * ゲーム評論 (29)
 * Unity News (5)
 * 漫画、アニメ類 (7)
 * My Unity Game (1)
 * ブログ運営 (7)
 * DOTS (2)

最新記事
 * MadeWithUnity探検隊!"COCOON" 様々な世界を飛び交う者
 * ゲーム・テンポとゲーム・スピードについて少し考える。
 * 君はUnity パッケージ・ドキュメントを知っているか!?
 * FMODでグローバル・パラメータをIDでコントロールする [PARAMETER_ID]
 * Unity Event Trigger コンポーネントを使って、自動で閉じるコントロールパネルを作る!

月別アーカイブ
 * ▼ ▶
   2024 (6)
   * 2024 / 6 (1)
   * 2024 / 4 (1)
   * 2024 / 3 (2)
   * 2024 / 2 (1)
   * 2024 / 1 (1)
 * ▼ ▶
   2023 (19)
   * 2023 / 12 (1)
   * 2023 / 11 (2)
   * 2023 / 10 (1)
   * 2023 / 9 (4)
   * 2023 / 8 (3)
   * 2023 / 6 (1)
   * 2023 / 4 (4)
   * 2023 / 3 (1)
   * 2023 / 2 (1)
   * 2023 / 1 (1)
 * ▼ ▶
   2022 (38)
   * 2022 / 12 (5)
   * 2022 / 11 (4)
   * 2022 / 9 (1)
   * 2022 / 7 (1)
   * 2022 / 6 (1)
   * 2022 / 4 (2)
   * 2022 / 3 (2)
   * 2022 / 2 (2)
   * 2022 / 1 (20)
 * ▼ ▶
   2021 (28)
   * 2021 / 12 (10)
   * 2021 / 11 (6)
   * 2021 / 10 (4)
   * 2021 / 9 (4)
   * 2021 / 8 (2)
   * 2021 / 7 (1)
   * 2021 / 6 (1)
 * ▼ ▶
   2020 (4)
   * 2020 / 3 (3)
   * 2020 / 1 (1)
 * ▼ ▶
   2019 (12)
   * 2019 / 11 (1)
   * 2019 / 9 (1)
   * 2019 / 7 (1)
   * 2019 / 6 (1)
   * 2019 / 5 (3)
   * 2019 / 4 (3)
   * 2019 / 2 (2)
 * ▼ ▶
   2018 (9)
   * 2018 / 12 (1)
   * 2018 / 10 (1)
   * 2018 / 9 (1)
   * 2018 / 8 (1)
   * 2018 / 6 (1)
   * 2018 / 5 (2)
   * 2018 / 4 (2)
 * ▼ ▶
   2017 (41)
   * 2017 / 11 (2)
   * 2017 / 10 (2)
   * 2017 / 9 (2)
   * 2017 / 8 (5)
   * 2017 / 7 (3)
   * 2017 / 6 (2)
   * 2017 / 5 (3)
   * 2017 / 4 (4)
   * 2017 / 3 (5)
   * 2017 / 2 (6)
   * 2017 / 1 (7)
 * ▼ ▶
   2016 (17)
   * 2016 / 12 (5)
   * 2016 / 11 (12)

Unityでインディゲームを作る!

Powered by Hatena Blog | ブログを報告する




引用をストックしました

ストック一覧を見る 閉じる

引用するにはまずログインしてください

ログイン 閉じる

引用をストックできませんでした。再度お試しください

閉じる

限定公開記事のため引用できません。

読者です 読者をやめる 読者になる 読者になる
8