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

妹でもわかるUnrealEngine4

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

UE4でHTML5出力したミニゲームの公開

Game2D「2Dゲームの方はHTML5でとりあえず問題なさそうなので、どういう感じになるのかちょっと公開してみた。まだゲームとして成立してないけど、マウスクリックで矢を撃って、当たると敵にダメージという仕組みは問題なく動作してるみたい」妹「これゲーム…

スプライトのつなぎ目のとこに線が出る問題の解決

妹「そういえばアクションゲームのマップ作る時に、なんかスプライト同士のつなぎ目のとこに変な線が出ることがあって、ひょっとしてこれタイルマップとかで解決出来たりするのでは? 計算上隙間はないはずだし、ウィンドウの大きさによって出たり出なかった…

ファイアーエムブレム ヒーローズにはSpriteStudioが使われていた

「昨日からファイアーエムブレムのスマホで出た新作を遊んでたんで、作業はまったく進んでいないんだけど、このゲームにSpriteStudioが使われているらしいことがわかった」fire-emblem-heroes.com「公式のリリースとかには出てないんだけど、ゲーム内の、そ…

OpenAssetOrgのアセットで2Dゲームを作る(25) グリッドの大きさを2の乗数にする

「書くの忘れてたんだけど、2Dゲームを作る時、特にドット絵のアセットを使う場合はグリッドサイズを2の乗数に変えておいた方が便利になる」 エディタの環境設定 通常のグリッド 2の乗数に設定したもの「エディタの環境設定の、"スナップの大きさを2の乗数を…

OpenAssetOrgのアセットで2Dゲームを作る(24) 続・スプライトの重ね合わせ順問題、Translucentにすれば簡単だった

imoue.hatenablog.com妹「昨日のスプライトの表示順の話だけどさ、なんか前にそんな話してた気がするんだけど」「してたかな……」imoue.hatenablog.com「してるね……」妹「そうそう、コレ。この時はそんなに細かく順番を色々はしなかったと思うけど」「一回や…

OpenAssetOrgのアセットで2Dゲームを作る(23) スプライトの重ね合わせ順問題

「キャラクターごとにスピードを変えると、どうしても出てくるのが重なりの問題。だいたい重ね合わせの順番が変なことになる。基本的には縦方向(Z軸)に合わせてYを変化させて、下にあるやつが手前にくると2Dゲーム的に綺麗に重なって見える。横方向(X軸)も左…

OpenAssetOrgのアセットで2Dゲームを作る(22) ChildActorコンポーネント製の盾

「今日はピンク色の敵に盾を持たせた。盾の画像は例によってDungeon Crawlのアセットから」opengameart.org 「今回作った盾はスプライトとブロックコリジョンのみ設定した、矢を弾き飛ばす完全無敵のやつで、正面からは攻撃不能だから、壁か他の盾の反射を使…

OpenAssetOrgのアセットで2Dゲームを作る(21) ダイナミックマテリアルインスタンスによるダメージエフェクト

「マテリアルはなんとかなりそうなので、そろそろゲーム作りに戻ることにして、ダメージ処理の白い点滅を入れてみた。こういうの入れとかないと、当たったのかどうだかよくわからないから」妹「当たったのかどうだかわからないのはよくないね」 マテリアルへ…

Paper2D用のマテリアルを作る(6) いい感じに色を混ぜるマテリアル改良版

新型(濃度 50%) 新型(濃度 100%) デフォルトのマテリアル 新型マテリアル設計図「スプライトの着色について考えてきたけど、もっとシンプルに色を混ぜた方が速くて簡単なのでは? と思って試してみた。これで良さそうな気がしてきた」妹「原理はどうなっ…

OpenAssetOrgのアセットで2Dゲームを作る(20) ちょっと足の速い敵

「敵が1種類じゃ、いくら出現がランダムになっても面白くない。いくつか敵の案はあるんだけど、とりあえず一番シンプルな、足の速い王様を追加してみた。従来型の敵のサブクラスで、各コンポーネントのパラメータだけちょっと違う」妹「この王様だいぶ体調が…

OpenAssetOrgのアセットで2Dゲームを作る(17) ランダムだけど毎回同じ

「敵が一直線ではおかしいので、適度に散らばってくれるように調整中」妹「王様が多すぎなのでは? 王とはいったい……」「毎フレーム1人出てくるようにしたらこうなってしまった」妹「あとまた卑怯な王様いるよ。壁の中移動してるし」「これは乱数の範囲をミ…

OpenAssetOrgのアセットで2Dゲームを作る(16) 敵のスポーン。重ならないように

「敵のスポーンが出来るようにした。とりあえず毎フレーム同じ位置から出てくる」「新しい敵をスポーンさせるのも3Dと同じように、Location(位置)・Rotation(回転)・Scale(拡大率)の3つで場所指定するだけ。ただちょっと注意した方が良さそうなことがあった…

Rotator用Equalノードの許容範囲

妹「昨日の角度のやつだけどさ、あれ3Dの角度でやるとどうなるんだろ? 例えば90度としてもさ、ピッチとロールとヨーがあるわけだから。その合計? それとも全部が90度以内だったらイコールとか?」「それは全部90度以内だったらイコールの方みたい」 「こう…

OpenAssetOrgのアセットで2Dゲームを作る(15) 指定範囲内の角度の時だけ有効なプログラム

「いままでは全方向に射撃出来てたけど、基本的に横にしか撃てないようにしたいので、そういう感じの仕組みにした。ただ角度となるとちょっと難しい」妹「そういうノードなかったっけ? clampだったかな、あれで角度が指定した範囲内になるようにすればいい…

OpenAssetOrgのアセットで2Dゲームを作る⑭ 爆発させる

妹「なんでこの人爆発するの?」「シューティングとはそういうものなんじゃないかと思って。血まみれにするのもアレだし」妹「それはアレだけど……」opengameart.org 「爆発の絵は、背景のブロックや矢と同じ、DungeonCrawlアセットを使ってる」妹「このアセ…

OpenAssetOrgのアセットで2Dゲームを作る⑬ 当たった弾を消す処理はどこに書いたらいいのか?

「昨日は矢が当たったら敵が消えるだけで、まだ色々足りてないんだけど、まず問題なのが当たった矢が消えずに残ってしまうこと。ブロック崩しとかだったらそういうのもあるけど、今回は消したい」妹「普通にヒットした時に消したらいいのでは?」「でも壁に…

OpenAssetOrgのアセットで2Dゲームを作る⑫ 矢(弾)のヒット処理

「今日は矢がちゃんと当たるようにした。当たる処理は2つのコンポーネントに書いてある」imoue.hatenablog.com「だいたいこの時の動画のやり方と同じになってると思う。カスタムイベントの簡単なバインドの仕方とかもこの時に書いたやつで」妹「そういう動…

OpenAssetOrgのアセットで2Dゲームを作る⑪ 敵キャラクターの移動

「敵の移動、っていっても、ただ横に動くだけのシンプルなやつなんだけど」 「こういうコンポーネントを作って、王様のPawnにくっつけた。今回の制作では色んな処理をコンポーネントとして作ってみたいという目標があるので、移動処理は全部コンポーネントに…

OpenAssetOrgのアセットで2Dゲームを作る⑩ キャラクターの向きはArrowComponentに合わせる

「そろそろ敵キャラを設置する。とりあえずはエルフのキャラクターと同じ人が作った王様の絵をあてる」妹「王様が敵なんだ……」「そのへんは後で変えるかもしれないけど。で、敵は右から左に進む左向きの絵が必要なんだけど、ブループリントでは自機と同じで…

OpenAssetOrgのアセットで2Dゲームを作る⑨ キルゾーンによる矢の消滅

「撃った矢が画面外に飛び出した後もどこかをさまよってしまうので、キルゾーンを設置して消滅してもらうことにした。キルゾーンという言葉は軍隊からきてるらしいけど、ゲームエンジンではそこに入ったアクターを消滅させる、ゲーム世界の回りに設置する境…

OpenAssetOrgのアセットで2Dゲームを作る⑧ ProjectileMovementComponentの移動制限

「矢の形が変になってる問題は、途中で一時停止してみたところ、やっぱりY方向にずれていたことがわかった」妹「でもなんでズレるんだろ? キッチリまっすぐ飛んだやつは跳ね返っても、まっすぐに飛ぶと思うんだけど」「理屈としてはそうなんだけど、多分高…

OpenAssetOrgのアセットで2Dゲームを作る⑦ タイルマップへのあたり判定設置

「せっかく壁があるのに矢が貫通してしまうので、コリジョンを設置する。タイルセットにはコリジョンの作成機能があるので、それを使うのが一番簡単」docs.unrealengine.com「だいたいここに書いてある通りにやるだけでいい」「そのタイルを選択した状態で、…

OpenAssetOrgのアセットで2Dゲームを作る⑥ マウスカーソルに向けて矢を放つ

「シューティングというと、ショットの角度は固定で自機が動くパターンが多いけど、今回は自機は動かずに射撃の角度を変える方法で、マウス操作でも遊びやすいような感じにしようと思う」「最初にマウスカーソルの表示をしてから、クリックした時に自機がカ…

OpenAssetOrgのアセットで2Dゲームを作る⑤ 矢の作成と発射

「今年中にゲームの形にするつもりが、矢の発射までしかできなかった。仕方がないのでこれは元々矢を撃つゲームだったということに…・・・」妹「そんな馬鹿な」「矢の構造は3Dゲームの場合とあんまり変わらない。変な方向に回転しないように気をつける必要は…

OpenAssetOrgのアセットで2Dゲームを作る④ タイルセットで背景を作る

「そろそろ設定も飽きてきたので、見た目の部分を作っていく。どんなゲームを作るかは特に決めてなかったんだけど……」妹「決まってなかったの!?」「ミニゲームだから、なんでもいいといえば良かったわけで。画面にグーチョキパーのアイコン置いてジャンケ…

OpenAssetOrgのアセットで2Dゲームを作る③ ウィンドウサイズとフレームレート

「カメラの設定だけしてウィンドウの大きさを変えてなかったのでこれも設定。これがないとウィンドウの横に黒帯がでてしまう」妹「そんなの設定したことないけど……」「それはカメラのとこでアスペクト比(縦横の比率)を1.777から変えてなければキッチリ収ま…

OpenAssetOrgのアセットで2Dゲームを作る② 2D向きのカメラ設定

「UE4で2Dゲームを作ろうとする時に、ちょっとめんどくさいのがカメラの設定。標準の2Dテンプレートだとキャラクタにカメラがくっついてるけど、今回は1画面で完結するようにゲームを作りたい。そうすると独立したカメラの方が便利」「3Dの場合はZ軸は重力…

OpenAssetOrgのアセットで2Dゲームを作る① プロジェクトの作成

「使い方がわかったところでちょっとしたミニゲームを作ってみようと思う。今回はアセットをなるべく自作しない方針で」「まずがプロジェクトの初期設定。これはblankから作ってる」妹「2D Side Scrollerじゃなくて?」「じゃなくて。別にそれでもいいんだけ…

GameMaker:Studioの学習

「前にちょっとだけ紹介したGameMaker:Studioだけど、とりあえず使えるようにしておこうと思ってやってみてた。GameMakerStudio2のプレビュー版みたいなやつも出てるんだけど、それもまず1をやってみないとわからないんで」妹「2Dゲームを作るやつだっけ?」…

どんなことがあってもY軸を固定するコンポーネント

「なんとなくコンポーネント作りたい欲が出てきたので、アクターにくっつけると、どんな時でも指定したY座標をキープするコンポーネントを作ってみた」妹「ヘンな欲……でもそれなんか意味あるの? 2Dゲーム用だとしても、物理とかだったら固定出来ると思うし…

AsepriteをGumroadで買った人用の、Steamキー登録方法

妹「なんかタイトルに書いてあることが全てわからないんだけど……」「これはブログの趣旨とはあんまり関係ないんだけど、どっかに書いておいた方がいいような気がするから書くやつなんで、わからなくても特に問題はないよ」www.aseprite.org「Asepriteという…

2Dゲーム用のアセット作り・草花の追加

妹「だいぶ生い茂ってきたよ」「なるほど、こういう感じの絵にしたかったのね」妹「いままではマリオとかを参考にして真横から見た感じにしてたんだけど、ああいう絵をわたしは描いたことがないし、そもそもどういう状態なのかさっぱりわからなかったという…

2Dゲーム用のアセット作り・木

妹「描いてはみたものの、この木はいまいちな感じがする。根元を調整すればいいのかな……」「草むらの中に生えてるから、木を削るか、木の上に草を描き込むか、あるいは1層分別の草レイヤを作って間に木を挟むか」妹「輪郭線描くのがめんどくさいんだけど、…

2Dゲーム用のアセット作り・地面と草

妹「今まで作ってたアセットはゲームっぽいというか、四角いのをいっぱい繋げる方式だったけど、どうも見栄えがよくならないから、ちょっとイラスト的に作ってみている」「画面固定なの?」妹「それはスクロールする。左右はスクロールしてもつながるように…

GameMaker:Studioの新バージョン紹介に、UE4のブループリントっぽい物が……

「GameMaker:Studioというのは2Dゲーム制作ソフトとして有名なやつで、前にちょっとだけ話したことがあるやつなんだけど」妹「あんまり記憶にない……」「良いツールなんだけどマウス操作だけで作れる部分があんまりなくて、プログラム部分はC言語の親戚みたい…

PSDtoSSが直接PSDファイルを読み込めるように

「PhotoShopで描いた絵をSpriteStudioで読み込めるようにするPSDtoSSというのがあるわけだけど、それがバージョンアップして、PhotoShopを使わなくても良くなった」github.com妹「PhotoShopを使うやつが、PhotoShopを使わなくなる……?」「例えば妹の場合Phot…

被破壊コンテンツは閉じたメッシュとして作る

妹「やっぱり平面のままで破壊出来ないかと思って調べたところ、まず向きがおかしいから表示されないってのはわかった。回転すると見えるようになったんだけど、でも破壊しようとすると、1枚のポリゴンのままでぺろーんと落ちちゃってる」「とすると、やっ…

真・3DのテクスチャとPaper2Dで色が微妙に違う問題の対処法

imoue.hatenablog.com「昨日のでブロック壊せるようになったけど、これのマテリアルをユーザーインターフェースに設定すると、色がグレーになっちゃうね。スタティックメッシュは大丈夫だけど、Destructibleコンポーネントで使うと駄目みたいな」妹「あー、…

2Dゲームに非破壊性メッシュを使う

妹「パンチしてブロックをぶっ壊す仕組みが出来たよ」「パンチ力すごい」妹「サンプルの設定をそのままにしたらこうなった。これをやるために、ブロックをSpriteじゃなくてポリゴンで作ろうとしてたんだけど、何故かペラペラのPlaneじゃ駄目で、しょうがない…

マテリアル属性:ユーザーインターフェース

imoue.hatenablog.com「昨日発見した、マテリアル属性をユーザーインターフェースに設定する方法だけど、追加調査でだいたいの仕様がわかってきた。まず4.10の時点でこの設定自体はあった。あとライトが当たったら色はどうなるんだろ? という疑問については…

3DのテクスチャとPaper2Dで色が微妙に違う問題の対処法(仮)

※追記 その後もっといい感じの方法が見つかったので新しい記事を書きました imoue.hatenablog.com 「じゃあ今日はシーケンサーの研究でも……」妹「いやその前に重大な懸案事項が」「一昨日使った、角を丸くした時の画像が何か……」妹「これの左と右、つまりポ…

ポリゴンにテクスチャを貼り付ける場合の透過設定

妹「前に聞いた方法で3Dポリゴンに絵を貼り付けるのをやってたんだけど、これだと角が丸くなりませんぞ? Paper2Dの方では角の部分透明になってるから、絵の問題じゃないと思うんだけど」imoue.hatenablog.com「それは多分マテリアルで透明度が有効になって…

Kritaによるアセット制作

妹「Kritaというやつを使ったアセット制作をやってみていた。使い方まだよくわかってないけど、いい感じのが出来た気がする。アクションゲームのブロック的な」「左右対称の機能を使ったの?」妹「絵部分じゃなくて枠の部分に左右と上下のを使った。あとフィ…

対称になった画像素材を手っ取り早く作る方法

妹「ウィジェットにハートの絵とかを、なんというかこう、綺麗に描きたいんだけど……」「妹が使ってるのはSaiだから、そういうのに向いてる機能は少なめかも」妹「コピーして左右反転はやってみたけど、なんか微妙にズレるし」「最近では左右反転した状態で描…

パーティクルもPerspectiveとOrthographicで見え方が違う

妹「昨日の雪なんだけど、あれカメラをPerspectiveにしてるというか、そうしないとちゃんと雪が出ないんだよ。Orthographicだと、ちっちゃい雪がキャラの周りにだけちょろっと降るだけで……。Perspectiveだとパララックス? みたいなことが出来るから、これで…

パーティクルの雪をカメラにくっつけてみる

妹「とりあえず一番簡単そうだった、雪パーティクルをカメラにくっつけるというのをやってみたんだけど、これ止まってる時はよくても、歩き出すと雪が元の場所に残ってるから、雪が減っちゃうんだよ。カメラにくっついてるんだから、てっきり雪もカメラに連…

雪の降らせ方を考える

妹「ちょっと気になっただけなんだけど、雪ってのはどうやって降らせたらいいんだろ?」「雪っていうと、こんなのかな。これはパーティクルを使って生成してる。3Dゲームだとこのタイプの雪が多い印象」docs.unrealengine.com 妹「そういう本格的なのじゃな…

レトロゲームプロジェクトの研究(9) インベーダーゲームっぽいの編(AlienInvaders)

「毎度おなじみのレトロゲーム風プロジェクトの研究。昨日のデバッグ作業は実はこれの話だったという」妹「インベーダーゲームというのも、聞いたことしかないなあ。写真だけで動いてる見てないかも」「敵が左右に動いて、端までいったら前進して……と、全体…

レトロゲームプロジェクトの研究(8) 2Dレーシングゲーム編(2dRacing)

Learning Templates [Blueprint Power]「しばらくやってなかったけど、レトロゲーム風プロジェクトの研究の続き。今日のテーマは2Dレーシングゲームのプロジェクト」妹「レーシングゲームってもっとこう、立体的なものなんじゃないの? F-ZEROみたいな」「あ…

拾った物をなげる

妹「手に持ってるアイテムを投げる仕組みが出来た。投げる角度はまだ調整前だけど。手に持ってるアイテムはただのスプライトで、投げる時は同じ場所に新しいアクターをスポーンしてProjectileMovementで飛ばしてる。持ってたアイテムは見えないようにすると…