Unityでインディゲーム道!

プログラム、Unity初心者がインディゲーム制作を目指して日々思うことなどを書き綴ります。

ヒットボックス問題から格ゲーの今を考える。スポーツにおける道具とテクノロジーの歴史

最近、数十年ぶりにまともに格ゲー(ストV)を始めてみたり、ウメハラをはじめとするプロ格ゲーマーの動画をよく見たりしています。 Hit BOX問題とは、正確には梅原さんが大会で使おうとしたガフロコンという改造コントローラが禁止になったのですが、そのこ…

FMOD(ミドルウェア・オーディオエンジン)について [初心者入門編]

FMODというオーディオ・ソフトウェアについて、初心者視点から学んだことをまとめてみようと思います。 FMODというのは、ミドルウェアと呼ばれるタイプのソフトで、UnityやUnrealエンジンなどの既存のゲームエンジンや、何らかのソフトウェアに組み込まれる…

ゲーム性とそれに伴う操作性が決まらないと、レベルデザインなんて出来ないと思った。

レベルとは日本のゲーム語で言うところのステージとか面を意味します。なので、レベルデザインとなると、ゲームにおけるステージ設計、構成ということになります。 レベル(ステージ)という単位でゲームプレイを進めていく、というゲームはまだまだ多いにせ…

Unity : インポート不可になったアセットをダウンロード先から手動で消して解決した [Archimatix]

とあるアセットをプロジェクトにインポートすると次のようなダイアログが表示され、インポート出来ないという事態が発生しました。Unity 2018.3以降です。 インポートが始まって直ぐに表示され中止される 何回やっても上手くいかず、アセット作者に連絡取る…

C#におけるインターフェースは、横の繋がりを作るための変換アダプター [ interfaceとは ]

C#におけるinterface : インターフェースについてです。継承やポリモーフィズムはclass間の縦の繋がりを作り出したり、それを利用する機能であるのに対して、interfaceは横の繋がりを作り出すための機能と言えると思います。 interfaceを使うことで、異なるc…

UnityのPrefab周りについて 2018.3.x 2019.1以降の動向も合わせて

Prefab(プレハブ)はUnityにおけるゲームオブジェクトをカプセル化するためのもの。カプセル化とは、必然性のある一個体として存在を定義する、ということです。プレハブ化により制作を効率的に行い、かつ多数のオブジェクトを一元管理することが可能になり…

Switch版ダークソウル・リマスターをクリアして 【ゲーム感想】

写真はニンテンドーストアより引用 デモンズ・ソウルが話題になった頃、自分はコンソール・ゲームから離れていた時期で、羨ましく遠くから眺めていたのを覚えています。いわゆる死にゲーというのはネット上のフリーゲームなどで流行はしていたもののメジャー…

けものフレンズを知らない人に『けもフレ2炎上』について説明したい

もう二度とけものフレンズについて書かないだろうと思っていましたが、自分なりの考えを書きたいので、ブログの趣旨からは逸脱しますが失礼します。 [2019/04/18 : 追記] 更にややこしい事態になっているのに笑うしかない、という状況ですが、それも含めて事…

配列の浅いコピーと深いコピーについて | 配列の宣言、代入

配列とは、タイプが同一の変数の集まりを扱うためのデータタイプです。 配列(array)はいくつかの制限があります。宣言時に指定した要素数で固定されますし、そのせいで自由にデータの挿入が出来なかったり。C#では、例えばListの方が使いやすいので、無理…

Unityでのオープン・ワールドにおけるBGMの自然な切り替えとFMODについて

オープンワールド・ゲームにおいて、BGMを自然に切り替える、クロスフェードする方法をUnity上で再現してみたので、その経緯と結果をまとめます。そして、自分なりにやってみた後で、FMODという画期的なオーディオソフトに出会ったので、それについても書い…

停止性問題について考える。Halting Problem

コンピュータに何が出来て、何が出来ないのか、についての話です。 *本記事は個人的な思索をまとめたものなので、内容や記述の正当性についての保証はしかねます! Unityも触っていますが、やはりプログラミング自体も面白く、そちらに多く時間を掛けている…

オブジェクト指向をもっとシンプルに考える!変数と関数も。

オブジェクト指向プログラミングにおける初心者への説明はまどろっこしい。もっとシンプルに考えることは出来ないか、という試みです。とりあえず、変数と関数から行ってみます。 変数は箱のようなもので、箱じゃない 変数は箱ではありませんし、そもそも変…

ゲーム製作を学んで一番感動したこと。なぜマリオは壁の中で立てるのか。[ 当たり判定 ]

ゲーム製作やプログラミングを現在も勉強中ですが、それ以前は当然、単なるゲームプレイヤーでした。今では、それに違う視点も加わることで、ゲームというものを多面的に見れるようになり、また別の面白さを味わえるようになっています。 その中で、特に感動…

リアルでの人助けと『ウィッチャー3』| 決断と見返り

ひさびさの投稿になります。リハビリがてら、ちょっとした小話というか、ゲームに絡めた雑談を。 昨日、スーパーに行った時の話。自転車を倒して買ったモノを散乱させたおばあさんに出くわしました。 さすがに目の前だったので、知らんぷりも出来ません。自…

カメラを揺らして、画面上の敵を振動で倒すブロックを作る!| Unity 2D ポリモーフィズム 継承

下から叩くと画面を揺らし、画面上にいる敵キャラを全部倒す、というブロックをUnity2Dで再現してみました!一気に敵を一掃できる爽快感溢れるアクションになりますが、これを上手くやるためにはカメラを揺らすだけでなく、ポリモーフィズムと継承を上手く活…

スーパードンキーコングでのバナナ、星の動きを再現してみた。

スーパードンキーコング・シリーズと言えば、レア社と任天堂による、SFCの傑作2Dアクションゲーム三部作です。今回はその"バナナ"や☆の獲得後の動きを再現してみました。 本シリーズのバナナは言わば、マリオにおけるコインのような存在で、100本集めると一…

オブジェクト指向とは単なる分割、縮小、連携のための手段だ!

オブジェクト指向は思想のように捉えることは混乱を生みます。エレガントな手段!なんてものではなく、タイトルの通り、それなりの規模のプログラミングに対する妥当で、現実的な手段ではないのでしょうか。オブジェクト指向の本質を理解した気がするので、…

マリオオデッセイという名のロードムービー | ゲームクリア後感想

少し遅いかもですが、マリオオデッセイをクリアしたので、その感想をまとめたいと思います。 パワームーンを500個以上集め、「長い旅の終着点」までクリアしたので、一通りは遊んだと言えると思います。 インタラクティブ・ムービーとしてのマリオ ムービー…

関数とは再利用よりも抽象化するためのもの?

関数といえば、プログラミングにおいては、なんらかの仕事をする「機械」のようなものであり、C#上だとメソッドとも言われます。 関数とはコードを部品化、あるいはモジュール化して再利用しやすくするためのものだ、というような説明がなされます。それはそ…

"正規表現"が面白い!!

正規表現という字面を見ると、なんだかお堅い感じがして尻込みしていましたが、分かってみるとこんなに便利なモノもないなと感動しました。 このページが分かりやすいです。 サルにもわかる正規表現入門 やっぱ、2000年前後の個人の方が真面目に作ったページ…

プログラミングにおける様々な記号の読み方!プログラミング入門

意外とスルーされがちな、プログラミングにおける様々な記号の読み方についてまとめていきます。 . , ; : [] {} _ * | () <> ! " ' = + - % / \ ^ 周知の事実? 自分を含む、ズブの素人というのは、プログラマの人が初めから分かっているようなことすら分か…

"Cuphead" Unity製の注目インディゲームの初感レビュー!!

いよいよ期待のインディゲーム、Cupheadが発売されました! ぶっ続けで3時間ほどプレイし、第一、第二エリアをクリアするかしないかの所までいったので、ひとまずその初感をザックリと書いておきたいと思います。 以下全ての画像は実際のゲーム画面のスクシ…

神ゲー"じゃんけん"でプログラミングを考える!!

神ゲーの1つである、ジャンケンをプログラミングで再現することで、プログラミングの最初から終わりまでの一連の流れをステップごとに追って説明していきます。それによりプログラミングとはなんだろうということを考察する内容です。 ジャンケンは分かりや…

なぜプログラミングが分からなかったのかを振り返る!<入門への道 >

そこそこプログラミング出来るようになった現在から、右も左もわからなかった頃、入門者時代を振り返り、なぜプログラミングは分からないのか?ということについての根本的原因を明らかにするのが本エントリの狙いです。一般的な観点(非プログラマ的観点)…

プログラミングってこういうことだよね?というチャート図を描いてみた。

結局、プログラミングとはどういう作業なんだろう?ということを一覧できるような図を描いてみよう、というのは以前から思っていました。 プログラミングを一概に説明するのは無理でしょう。でも初心者の頃にそういうのが欲しかったんですよね。大体でいいの…

C#で"FizzBuzz問題"に挑む!Main内で五行達成。

FizzBuzzとは英語圏における言葉遊びで、複数人で数字を順に言っていくわけですが、3の倍数の時は"fizz"、5の倍数の時は"buzz"、3と5の公倍数の時には"fizzbuzz"と言うのがルールになっています。 FizzBuzz問題とは、この遊びをプログラミングで再現するとい…

UnityでGetComponentを使って"参照"を得るということ。Unityにおけるオブジェクト指向とは、的な。

Unityでのスクリプト作成、コーディングにおいて重要であり、かつ基本的なメソッドである"GetComponent"について、まとめてみます。 そして、そもそも"参照(リファレンス)を得る"ということはどういうことか?という基本的な部分についても書いてみたいと…

下から叩くとアイテムが出るブロックの再現。二重コライダーの活用。

今回はUnity上で、マリオなどのアクションゲームで目にする"下から叩くとアイテムを出すブロック"を再現してみたいと思います。Unity2Dになりますので、3Dとの違いにご注意を。 完成版のGIFです。こんな感じでニュッと出るようにしました。明らかに敵っぽい…

本ブログのカテゴリー(の定義)を整理しました!

本ブログのメインテーマはUnityでゲーム、あるいはアプリを作る!というものであり、それに付随するプログラミングに関することなども書き記していくのが、主な目的となっています。 それらを中心に、そこからズレ過ぎない程度にいろいろ書いていきたいんで…

アクセス修飾子やプロパティは、クラス連携のセーフ・ガード。Unity上での実例も含めて。

public, privateとはつまりは公開、非公開のことであります。 今回は"クラス"同士が連携する際のセーフ・ガードの役割を果たす、アクセス修飾子、プロパティについてまとめてみたいと思います。Unity上の使い方についても書いてみました。 プログラム全体を…