投稿

2025の投稿を表示しています

ゲーム制作雑記録 - ようやくプロトタイプ作成終了…しかしこれ、おもろくなるんか?w

2.5D横スクロール・プラットフォーマー試作版 プロトタイプ(試作版)を暇を見てコツコツと作っていたのですが、ようやく目途が付きました。 一応SEやってるとはいえ、Unreal Engineを触るのはというかゲーム作り自体ほぼ初。Unreal Engineの機能はもちろん最初から学ばないといけないし、最初はブループリントのみ使ってC++は使わないつもりが結局少し使ったり、3D描画に関する知識もある程度学ばなくちゃいけなかったり、ゲーム開始から終了まで一通りシステムを作るのにやること大杉だったり、一年以上かかりました。 最終段階でゲームシステムの根幹部分が 行き当たりばったりやってたので、考えたものが汎用性無しで最終段階のレベル(マップ)デザイン時にいろいろと使いづらいことが発覚。 いやーまぁプロトタイプだからいいんだけど、やっぱある程度の設計書を作りつつ考えないといけませんねw 次段階のα版からはまた新規作成になるので、そこからが本番です。 itch.ioにアップ ゲームのアップロードは海外で有名なサイト「itch.io」にしました。試作版をわざわざダウンロードしてプレイする奇特な人はほとんどいませんが。 ここはプロトタイプでも気軽に投稿でき初心者でも使い易いです。ただ審査が無いので、アップロードするなら良いですがダウンロードしてゲームをプレイする場合は自己責任となります。 CP_prototype by Codasatoatz ここから例のアレ向け… 上で紹介したゲームページのタイトルにある頭文字の通り、タイトルは決まっていてシステムも内容もほぼ考え済みです。スピリチュアル関連をテーマにしたキャラクターや世界観ですが、初回作はかなり一般向けです。今までも別の記事でネタ絵を描いていたのですが、かなり本気を出して可愛いキャラクターの2次元画と3Dモデルを作ります。乞うご期待!! あと、一般向け(?)なホラー要素も入れる予定ですが、怪異という名の幽霊が腕力で人の首をへし折るとかはありませんw(操作キャラクターが人間じゃないのもありますが…) ゲーム内容は世界観的にエーテル体だとかアストラル体だとかスピリチュアル関連に精霊やら人の霊とか織り交ぜつつ、物理的肉体やら物質とかは(ゲームネ...

ゲーム制作雑記録 - Unreal Engine - Blueprint - SubLevelと複数PlayerStartのメモ

イメージ
アクション・ゲームでは定番のステージ・クリア型ですが、一つのレベルで複数レベル管理をするレベル・ストリーミングの機能でハマったのでメモを残します。従来の通り一つずつOpen Levelでレベルを開けば問題無いのですが、特に意味もなく興味本位でレベル・ストリーミング機能を使おうとしたばっかりに… 複数PlayerStart 一つのレベルに複数のPlayerStartがある場合にRestart Player At Player Startという関数でPlayerStartを指定してリスタートできるのですが、Destroy Actorしないとリスタートできなかったりして中々使いづらい(Kill ZがDestroyedイベントなのが…)。さらにRestart GameはPlayerStartを指定することができない。私が調べた限り、PlayerStartを指定して半恒久的にプレイヤーの開始位置にするという、気の利いた機能は現在UE5.5では無いようです。(ソースをサラッと見た感じ、情報を保持していないっぽい。) ただGameModeBaseの関数「ChoosePlayerStart」をオーバーライドして処理を実装すれば可能です。開始位置を動的に変更する際には、当然GameModeはプレイヤー・キャラがスポーンする前の話なので、GameInstance等から値を引き渡す必要があります。Destroyされても問題無いですし。 例)GameModeのイベント・グラフ (なんかStage NumberとかいうInteger型を使ってますが、そのままString型でもいいですね。) この例で気を付けないといけないのは関数「FindPlayerStart」の「Incoming Name」に必ず存在する「Player Start Tag」を指定することです。そうしないと自分自身(ChoosePlayerStart)を呼んじゃうので無限ループになります。(検知してくれるのでPCがデストローイ!されることはありません。) ちゃんとした関数を作りたい場合は「Get All Actors of Class」で「Player Start」クラスを取得して「Player Start Tag」で存在チェックするロジックを入れたら、いい感じになります。 ...