妹でもわかるUnrealEngine4

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

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

UE4.14

UE4 -> HTML5出力実験メモ

3DゲームのHTML5化(妹が前回のUE4ぷちコンに出したやつ) UE4.13で動いていたものが4.14や4.15だと動かない タイトル画面も出ない 4.13だと動いてるように見える でもWindows版よりかなり遅い ゲーム開始10秒ぐらいで必ずゲームが止まる ※止まった後もBGMは…

今日も失敗するHTML5化

「フォントの問題が解決したし、水のマテリアルも代替品を作れそうだから、妹のゲームまたHTML5対応にしようとしてたんだけど、なんかエラーが出て起動しない……」妹「あれ? 字はちっちゃくなるけど、一応動いてたよね?」「そのはずだったんだけど、何かの…

UMGウィジェットの表示がHTML5だと変わってしまう件(4) TTFフォントをOTF形式に変換してからアセット化

「とりあえずOTF形式のフォントを使えば大丈夫、ということが昨日わかったわけだけど、TTFしかないフォントもたくさんある。妹が使ってたやつもそう」妹「別のフォント探さないと駄目かな」「探してもいいんだけど、TTFからOTFに変換するという方法もある」j…

UMGウィジェットの表示がHTML5だと変わってしまう件(3) フォントがOTF形式なら正しく表示された

「バグ報告をしようと思って、最小限のデータだけの確認用プロジェクトを作ってたんだけど、そうすると何故か普通に表示できちゃったんだよ。どうやらフォントがデフォルトのRobotoのままだったからみたいで、昨日のプロジェクトもRobotoにすると問題なくな…

UMGウィジェットの表示がHTML5だと変わってしまう件(2) 何かがおかしいということはわかった

「どうも表示がおかしいのはフォント部分みたいなので、HTML5のフォント表示について、いくつかの設定を試してみたけど、同じだったり、そもそもブラウザでエラーになったり、どれも上手くいかない。それで新機能も試してみた」「4.14だったか15だったかから…

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

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

Paper2D用のマテリアルを作る(2) グレースケール化

「まずはグレースケールにするマテリアルというのを作ってみる。グレースケール化というのは、RGBから輝度に変換する処理だから、そういうマテリアルになってる」妹「輝度というのは……」「明るさの一種なんだけど、なんというかこう、お絵かきソフトに付いて…

Paper2D用のマテリアルを作る(1) まずはコピーして基本構造の調査

「ゲーム作りの途中なんだけど、2~3日ほど脱線して、マテリアル作りをやろうと思う。」妹「色違いのやつ?」「それもあるんだけど、ダメージエフェクトとかチャージとかみたいな処理でも、自作マテリアルは要りそうな気がするから、ここで一通り調べとこ…

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

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

OpenAssetOrgのアセットで2Dゲームを作る(18) KillZVolumeで消えない連中をどうにかする

「昨日UE4でテストプレイを開始したまま、すっかり忘れて違うことしてたんだけど、なんだか凄くゲームが重たくなっていた。なぜかと思って調べてみると、出てきた王様たちが全員消えずに行進を続けて、はるかかなたを目指して歩き続けてることが発覚した」妹…

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

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

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

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

Rotator用Equalノードの許容範囲

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

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

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

UE4.14.3 FBXインポート時のバグ修正など

forums.unrealengine.com「先日4.14.2が出たばっかりだけど、緊急を要するバグがあったらしく4.14.3が出てた」妹「何が起きるの?」「3Dの、FBXファイルをインポートするとクラッシュしてたらしい。最近は2Dのとこしか触ってなかったから気づかなかったんだ…

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

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

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

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

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

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

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

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

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

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

UE4.14.2がリリース エディタのクラッシュバグ修正など

forums.unrealengine.com「今回修正の数は多くないんだけど、エディタがクラッシュする系のやつがだいぶ直ったらしい」妹「エディタがクラッシュするやつ困るよね。いつセーブしたっけ? ってなるから」「4.14はいまいち不安定だと思ってたんだけど、だいぶ…

水のマテリアル研究⑪ HTML5にすると金属が鏡面反射してない

「だいたい水の構造がわかったので、懸案事項の1つだった、HTML5だと水がなんか変だという問題に着手する」「やっぱり水の色が変。というか、メタリックの数値が効いてない感じがする」 「謎の要素とかがないようにシンプルに組んだけど駄目だった。パソコ…

水のマテリアル研究③ ラフネスを下げないと水面に反射しない

「昨日メタリックにしても反射しなかったのは、ラフネスが標準値だったから。ラフネスが0がツルツル、1がザラザラになる。標準値は0.5だからあんまり反射しなかった」「ラフネス値のノードを見ると、実はLerpで0.15と0.15を混ぜてるので、Alphaに何をつない…

水のマテリアル研究② 水は金属なのかどうか

「水のマテリアルを見ていると、メタリックの数値が0.8になっていた。これは金属っぽさを表す数値で、0は金属じゃないやつ、1は金属のやつ。錆びた金属なんかが中間になるらしい」妹「水は……金属ではないよね? 多分」「そうだけど、水面は鏡のように顔が映…

水のマテリアル研究① 近い場所と遠い場所、水の色が違う

「昨日色々話を聞いてきたんだけど、水のマテリアルは複雑だけど1つ1つ見れば解読は可能だという話をしてて、これはちょうど気になってるやつだったから、今使ってるやつを解読してみようかと」「今回の目的としては、これをなんとかしたい。何かシミみた…

UE4.14に「Simplygon for UE4」を入れると何が変わるのか?

「起動時のログにはこういう違いが出る。入れる前からSimplygonの何かをUsingしてるけど、でも」妹「それはプラグインなの?」「プラグインに似てるんだけど、プラグイン一覧には名前が出てこないから、もうちょっと特殊な位置付けだと思う。半公式みたいな…

4.14.0のスケルタルメッシュ編集画面を見てるとクラッシュする問題

「ポリゴン数削減機能について色々確認しようとしてるんだけど、なんだか妙にクラッシュすることが多くて、原因はどうもスケルタルメッシュとか、スタティックメッシュとかの、詳細設定のとこでマウスを動かしてると、クラッシュすることがあるというのがわ…

昨日のはSimplygonじゃなかったみたい……

「読者から寄せれた情報によると、昨日やってたのはSimplygonじゃなかったらしい」forums.unrealengine.com「Preview版の時の説明だけど、これはSimplygonじゃないよ、と書いてある」妹「ニセモノ! じゃあアレなんだったの? 少なくとも4.13ではああいうの…

UE4.14に標準搭載されたSimplygonを試す

docs.unrealengine.com「Simplygonというのは、ポリゴンの数を簡単ラクチンに削減出来るソフトウェアなんだけど、これの技術がUE4.14から標準機能として組み込まれることになった」妹「今までだとZBrushの機能とかでポリゴン数減らしてたと思うんだけど、あ…

processingを使ったグリッド用スプライト画像制作

「今日はこういうモノを作っていた。ゲーム中に配置できる方眼紙的なやつ」妹「これにはどういう使いみちが?」「マップを作る時に、こう、見てわかるのがあった方がいいかなあ……って思ったんだよ」妹「でもそれだったらUE4でも線は出てくるのでは」妹「こう…

GameModeとGameStateの、Baseとの違い

「GameModeと別にGameModeBaseが出来た問題を追いかけたんだけど、GameModeの方にはマルチプレイヤー対戦用の機能が入ってるらしい、ということしかわからなかった」妹「ソースコードとか言うのを調べてみては?」「調べた結果がそれなんだよ。なんというか…

UnrealEngine4.14正式版リリース

www.unrealengine.com「予定通り正式版がリリースされてた。内容としてはPreview3から変わってないと思う」妹「今回もいっぱいあるねえ」「TSET型とTMAP型は、日本語訳としては"セット"と"マップ(辞書)"という表現になったらしい。マップだけだとややこし…

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

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

クラスの継承とタグの扱い

「アクターに付けたタグの扱いについてちょっと勘違いしてて、クラスのデフォルトで設定したタグは、あくまでデフォルトで、配置した後に足したり消したり出来るから、個別に色々やっても大丈夫なことがわかった」「まず基本クラスにタグAとタグBの2つをつ…

GetAllActorOfClassからの絞り込み

「昨日のだとアクター全部を落下させる形になってしまうので、落下させるアクターと、させないアクターと区別する方法を考える」「一番簡単なやり方はこれ。Actorクラスじゃなくて、特定のクラスで絞り込む方法。一番ノードが少ないし、動作的にも多分速い。…

BlutilityはActorのカスタムイベントとして作る方が自由度高い

unrealengine.hatenablog.com妹「なんて読むの?」「ブルティリティ……かな。BlueprintUtilityを略した造語だと思うんだけど、とにかくエディタ上でブループリントが実行出来るというもの。詳しい手順は上記のブログがわかりやすい」妹「エディタ上で実行って…

UnrealEngine4.14.0 preview3が登場

forums.unrealengine.com「Preview3が出てた。次が正式版になるらしい」妹「今回は早いね。またpreview6とか7とかいうのかと」「とりあえずHTML5で動作がおかしかった部分は直ってた。原因不明のクラッシュが2回ぐらいあったけど、そっちは条件がわからない…

同じHitイベントが1フレームに2回発生する原因と対処法

「実は昨日の実験の最中に、ティックの発生タイミングとは別の問題に気付いてしまった。記事にしたかどうかは忘れたんだけど、妹が作ってたアクションゲームの試作で、1フレーム2回Hitイベントが起きるっていうバグがあったよね?」妹「あったよ。パンチした…

Tickイベントの実行順・ティックグループの謎

youtu.be ブループリントマニアックス from Masahiko Nakamura www.slideshare.net「先日紹介したアンリアルフェスの動画を見てたんだけど、まず気になったのがこのブループリントマニアックスのセッションで紹介されてた、ティックグループ。スライドの方で…

UnrealEngine4.14.0 preview2のアップデート情報

forums.unrealengine.com「preview2が出てた。沢山修正あるけど、先日のTMAP型のバグとかはまだ直ってなかった」imoue.hatenablog.com妹「直すとこありすぎて手が回ってないのかな?」「まだ実験段階だからね。HTML5のパッケージ化も4.14で試してみたんだけ…

UE4.14.0 preview1のTSetとTMap状況

「先日TMap型の変数が作れないという記事を書いたけど、あれが実は作れるということがわかって……」「実験的な機能だから、エディタ設定でここにチェックを入れないと駄目だということがわかった」妹「じゃあもう使えるの?」「作れるけど……使えない」妹「?…

4.14でのTMap型サポートはまだ限定的?

「4.14の機能紹介にこんなことが書いてあったんで、詳細パネルをつつき回してみたんだけど、どうもC++から作ったTMap型に、詳細パネルからデータを追加したり出来るだけで、肝心のTMap型自体を作るのはブループリントとエディタだけでは無理っぽい気配だった…

4.14.0 preview1がインストール可能に。日本語のAddActorWorldRotationバグなど修正

forums.unrealengine.com「4.14.0 preview1が出て、ついにあのAddActorWorldRotationバグが直ってた」imoue.hatenablog.com妹「そんなこともあったねえ」「あと確認が足りてないんだけど、これもひょっとしたら直ってるんじゃないかという気がする。コメント…