<前文>
先週、なんで突然、直前まで書いた文章を消したのかと言うと、日本語学習にPitchの勉強は必要である派と必要ない派のディベートを見てて、日本語の文法について私見を述べた場合、日本語でこんな理性的な議論に発展する可能性は0だと思ったからです。違う意見の持ち主からディベートを持ちかけられるなら大歓迎ですが、単なる罵詈雑言を浴びるだけなら書かない方がましだと思いました。
だから消しました。
勿論、英語なら必ずディベートになる訳ではなく、むしろ英語の方が喧嘩になる事は多い位です。特に原理主義(Fundamentalism)の色が濃いアメリカでは、答えが最初から決まっている人達が結構いて、その人達はどんなに科学的な証拠を見せても聞く耳持たないです。一番分かり易い例が中絶の議論で、中絶は絶対駄目という原理主義者(Fundamentalist)は結構いて、中絶に関しては全くディベート出来ない事が多いです。どれくらい聞く耳持たないかと言うと、中絶を実行する医師の経営する病院を爆破したり、医者を殺害したりしています。
私の住んでいた所は結構田舎だったので、中絶は絶対駄目という原理主義(Fundamentalism)な人はそこそこいました。理由を聞くと大抵聖書に書いてあると答えます。聖書に書いてあっても例外もあるでしょう。と私なんかは思って大学の友達に聞いたら、例外を認めないから彼らは原理主義者(Fundamentalist)って呼ばれているんだ。と教えてくれて非常に納得したのを覚えています。
所が、最近になってRedditを見るようになって知ったんですが、聖書には中絶を勧める文章がいっぱいあるそうです。それを知った時何それと思いました。
更に、中絶反対する人でも嫁以外の女性を妊娠させた時や高校生で彼女を妊娠させた時なんかは、なりふりかまわず中絶を進めてくる話も知りました。アメリカでは生まれた子供の養育費は生物学的な父親が負わなくてはいけないのと、もしそれが出来ない場合は刑務所行きになるからだそうです。
日本語で語る分には、こういう中絶のようなアメリカではSensitiveで非常に気を使って話さないといけない話題でも、命の危険を感じずに軽く語る事が出来ます。こういう話題をここですべきと再確認しました。
逆に、日本語でこれを言うと語弊があるなとか、波風を立てる可能性がある話題は英語で日本人に見つからない所で議論すればいいんです。
それでは今週の勉強を始めます。
<本文>
1.今週の予定
今週は以下の事をやります。
- Unreal Engine 5について
- NiagaraとCascadeの勉強
- Cascade と魔法陣について
- Monster Zoneの拡張
- 先週のバグの直しなど
2.Unreal Engine 5について
ちょっとだけUE5について調査します。調べても私のPCのスペックでは動かないと思うので悲しくなるだけかもしれませんが。
2.1 必要とされるスペックについて
当然どのくらいのSpecのPCが必要なのかがまず知りたいです。UE5 Specと打ち込んだら一番最初に以下の記事が出て来ました。
Unreal Engine 5 is now in Early Access for developers – download the Valley of the Ancients tech demoによるとUE5そのものではなくそのデモ(The Valley of the Ancient demo)を実行するのに必要なスペックは
だそうです。最低基準すら私のPCでは満たしていません。
流石にハードの値段について疎い私でも、今Video Cardが品薄になって価格が暴騰している事は知っています。新しいPCを購入するにしても最速でも年末か、もしかしたら来年になるかもしれません。
それまではUE5はお預けです。
2.2 UE5についての公式ホームページの情報をみる
UE5の公式のホームぺ―ジ [2]から見てみます。
01は何について語っているのか曖昧で良く分からないのでスキップします。
02でNaniteとLumenについて語っていますね。この二つの言葉はよく聞きます。意味は知りませんが。
この辺から見てみます。
Naniteはどうやら、広大かつ精密なLandscapeをUserがなんの工夫もしなくてもそのまま扱える機能のようです。以下の説明によると
- Poly Count やDraw Call
- 詳細をNormal mapにBakeする事
- 手動でLODsを描く事
などの作業を大量に消去する事で達成してるそうです。
ふーん。ですね。
Lumenについてです。LumenはRay Tracingの一種だと思っていたんですが、YouTubeのビデオでLumen vs. Ray Tracingみたいなのがあったので違うのかもしれません。その辺が良く分かりません。
以下の説明によると、最初にDynamic global illuminationと書かれています。と言う事は動いている物体にもGlobal illuminationが働くって事なんでしょうか?
2021-04-26のブログの実験ですが、Directional lightの設定をMoveableにすると以下の様に床からのGlobal illuminationが全く働かないので影が真っ黒になってしまいます。
Lumenだとこういう設定でも影が真っ黒にならないんでしょうか?試してみたいですね。
説明文を更に読み込んだら、以下に示したようにはっきりと太陽の角度の変化と書かれていました。
もうこれは99%以上の確率でDirectional lightの設定をMoveableしてもGlobal illuminationが働くでしょう。
おーっ。
かなり興奮して来ました。
更に説明を読み込んだら、Light mapでしていた細かい設定とかも要らなくなるみたいですね。
建築関係でUE4を使用している人達には朗報なんでしょうか?それともLight mapでやっていた微妙な設定が出来なくなってしまうんでしょうか?その辺も興味あります。
次はOpen Worldsについてです。
以下の説明によるとWorld Partition Systemが採用されているそうです。
World Partition Systemに関しての色々な機能が紹介されていますが、一人で作っている私には直接の影響はあんまりない機能かもしれません。
Animationについてですね。
色々な機能が紹介されていますが、UE4のAnimation自体良く理解していない私には正直どう凄くなっているのか分かりません。UE4のAnimatorなら大興奮の内容なのでしょうか?読んでもポカーンて感じです。
MetaSoundsについてです。
ここは結構興味あったところなんですが、UE4と比べてどう変わったんでしょうか?
これもこれだけ読んだだけじゃ何も分かりませんね。
Editor workflowについてです。これはEditorのViewportが大きくなっている事についての解説みたいです。
ちょっとだけUE5を紹介するVideoで見たんですが、使用感が凄い快適みたいです。UE4でもストレスフリーでほとんどの機能が使用出来るのに更に使い易くなったらどうなるんでしょう。日常のストレスの発散のためにUE5を触る様になるかも知れませんね。
後重要なのはFAQにあった以下の解答です。
4.24じゃ互換性もないのか。うーん。
2.3 英語圏のUE5のコメントを見る
今まで引用させてもらった沢山のUE4のTutorialを参照(reference)にまとめてあります。全て英語圏からの引用です。折角ですのでその人達がUE5に対してどんなコメントを出しているのか見てみようと思います。
<Why Unreal Engine 5 is a BIG DEAL [3]>
Why Unreal Engine 5 is a BIG DEAL [3] はUnreal Sensei氏のUE5に対する簡単な解説です。
5分の短い動画ですがLumen、NaniteとBridgeそしてEditorについてコメントしています。
LumenはRay Tracingじゃないんですね。そんな気もしていましたがこの動画ではっきりしました。
Naniteの解説では、Naniteは一言で言えば動的なLODと言っています。これは分かり易い例えと思いました。NaniteはStatic meshにしか使用できない事も説明していました。デモでRobotがSkeletal meshで動いているじゃん。と思う方はこの動画を見て下さい。何でRobotにNaniteが効いているのかしっかり解説されています。この解説は他のTutorialでは全く聞いた事がないです。Unreal Sensei氏は本当にびっくりするぐらい頭良いです。
<Tech Art Aid氏のUE5についての動画>
Tech Art Aid氏はHierarchical Instanced Static Meshの使用方法を私に教えてくれた貴重なTutorial (UE4 Optimization: Instancing [4])です 。3年近く全く動画を上げていなかったんですが最近また動画を上げるようになったみたいです。
UE5についてTesting UE5 Lumen Real Time Lighting & Limitations // Unreal Engine 5.0 Early Access [5] とTesting UE5 Nanite Meshes & Limitations // Unreal Engine 5.0 Early Access [6] を上げていました。
Tech Art Aid氏本人が言っていますが、このビデオはTutorialではなく本人もほとんど初めての状態で試したものです。のであんまり綺麗にはまとまっていません。色々、興味深い事を発見したり考察したりしていますが、私が今のほとんど理解していない状態でそれをここでまとめると、間違ってまとめそうなので止めておきます。
それよりも驚いたのは私ずっとTech Art Aid氏はインド人と思っていました。Polandの人みたいです。全然関係ないですがTwo Minute Papers [7]の人もずっとインド人と思っていました。実際はHungaryの人でした。
<MR3D-Dev>
私、この人のTutorial、何時見たのか全く覚えていないんですが、参照(Reference)に名前がありました。LandscapeのDisplacementのやり方をこの人の動画で勉強したんでした。念のためにチェックしたらUE5 についての動画を2つほど挙げてありました。
Unreal Engine 5 First Impressions [8] とHow to Use Data Layers in Unreal Engine 5 (Dark Realm Access) [9] です。この人の動画も試しに使ってみたという感じでした。
<CGHOW>
この人は、Niagara のtutorialを沢山作成していて、いずれ参考にする時のために参照(reference)に記録していたんでした。UE5に関して既に5本の動画を上げています。どうせ他の動画と一緒だろうと思って、一番最初のUE5の動画、Unreal Engine 5 Early Access | First Reaction [10] を見たらUE5のNiagara systemについての動画でした。
ほおおっ。と思わず声を上げる所でした。
こういう独自の観点からUE5へのコメントを上げるのはかなり興味深いです。
UE5のNiagaraは、私が見た限りではUE4のNiagaraと全く同じみたいです。
残り4つのvideoはUE5でNiagaraを使用したsample映像などでした。はっきり言って凄いです。この人の動画でNiagaraは勉強する事にします。
参照(Reference)にある人でUE5の紹介をしている人達は以上でした。
3.Niagaraの勉強
今週は先週出来なかったCreate a Ribbon Effect in Niagara [11] の勉強をします。
3.1 Ribbon Effectの目的
Ribbon Effectって正直一番要らないEffectと思っていました。
Effectとしてはっきり言ってしょぼいです。アニメの必殺技でこんなエフェクトだったらそのアニメを見るの止めます。それで勉強するのも最後の方になってしまったんですが、以下の解説がありました。
飛行機雲みたいなEffectを作るためにはRibbon Emitterが必要って書かれています。Ribbon Effectってそんな目的のために作られたんですか。知らなかった。これは重要ですね。やる気が出て来ました。
<Create System and Emitter>
FX -> Niagara System -> New system from selected emitters -> Simple Sprite Burst を選択します。
おお、Sprite Burstが選択されています。先週、Cascadeで勉強した所ですね。実装方法もちょっとだけ見ておきます。
その前に作成したNiagara Systemに名前だけ付けます。
以下の様になっていました。
Spawn Burst Instantaneous ModuleのParameterは以下の様になっています。
Cascade のSpawn BurstのParameterは以下の様になっています。
単純に比較するとNiagaraのSpawn Burst Instantaneous ModuleはCount Lowに対応するParameterがありません。となるとNiagaraのBurst Moduleでは作成するParticleの数をある範囲内のRandom な数には出来ないと言う事でしょうか?
<Change Renderer>
Sprite Rendererを消去してRibbon Rendererを追加します。
Ribbon RenderingのMaterialにDefault Ribbon Materialをセットします。
NS_RibbonをLevel内にセットします。
まだ何も見えません。
<Edit the Emitter Update Group Settings>
Emitter Update GroupのEmitter State ModuleのLife Cycle Modeの値をSystemに変更します。
このDocumentにLife Cycle Modeについての説明がありました。
でもLife Cycle Logicって何を指しているのかが分かりません。
Parameterの機能が分からない時はカーソルを乗せるに限ります。
成程、Emitter の寿命の計算をEmitter自身にさせるか、そのEmitterを持っているNiagara Systemに計算させるかを決めているでした。
でもそれってどう違うの?と新たな疑問が出て来ます。そしたらその疑問に対する答えも書いてありました。
大体の場合、Niagara systemに計算させた方が最適化されて速くなるそうです。
でもそれなら何でDefaultではSelfにセットされているんでしょう?
やっぱりまだ腑に堕ちませんね。
Emitter Update GroupにSpawn Rate Moduleを追加します。Spawn Rate ModuleのSpawn Rateの値を100にセットします。
Spawn Rateの意味は、これまでの勉強で良く分かっていますが、Spawn Burst Instantaneous ModuleのSpawn Timeがその役割を担当していると思っていました。
Spawn Timeは何をしているのか不明ですね。
<Edit the Particle Spawn Group Settings>
今度はParticle Spawn Groupの設定を変更します。
まずParticle Spawn Group 内のInitialize Particle Moduleを消去します。
Initialize Ribbon Moduleを追加します。
以下に示したように、Parameterの値を変更します。
今度は、Particle Spawn GroupにTorus Location Moduleを追加します。
Torus とはドーナツ形状の事です。WikipediaのTorus [12]によるとTorusは以下の式で定義されます。
そして使用しているParameterの定義は、以下のようになっています。
これらのParameterの値をTorus Location Moduleで指定するのでしょうか?
Torus Modeの値をTorusからRingに変更しました。
TorusからRingに変更するとどう違うんでしょうか?
うーん。分からん。でももしかすると生成されたRibbonの形状から判明するかもしれません。
Ringは以下の様な形状です。
Torusは以下の様な形状でした。
Ringの方がバラケ具合が小さいですね。
Large RadiusとTorus Distribution Modeの値を変更しました。
Large Radiusは上記のTorusの式におけるRの事なんでしょうか?何か違う気がします。
UPositionの値をParticle Ageに変更します。
UPositionは何を担当しているParameterなのでしょうか?
分からん。
Documentに何か解説は載っていないかとみていたら、UPositionに追加するParameter、ageはParticleのageではなくEmitterのageを使用していました。直します。
EmitterのAgeに変更した途端に綺麗なRingが現れました。
何でParticleのAgeの時は何も表示されなかったのか?と思ったんですが、良く考えたらParticleは生成してないですね。
UPositionの機能についてはDocumentの方では以下の説明がありました。
良く分かりませんね。Floatを返しているんですから、数字を入れたら何かヒントが分かるかもしれません。実験してみましょう。
0、0.1、0.5、0.9、1、100などの数字を代入してみました。
全くRingが現れません。
うーん。これも意味が分からん。
Emitterのageがどんな値を返しているのか分かれば、もう少し分かるんですがPrint Stringみたいな機能はないんでしょうか?
今回は諦めるしかありませんね。私のParticle Systemの理解が進んだ時に、おのずと明らかにされるでしょう。
最後にAdd Velocity from Point Moduleを追加しました。
加えた途端にRingがきれいな渦巻きを描き出しました。
上から見るとこんな感じです。
Velocity Strengthの値を50にしました。
渦が小さくなりました。
このModuleの機能は分かりました。
説明のために一端、Add Velocity from Point Moduleを外します。
大きさを統一するためのちょっと見にくいですがPreview全体を表示します。以下に表示されているのが現在のRingの大きさです。
もう一度、Add Velocity from Point Moduleを追加します。
はい。Ringの半径が時間に沿って増大しています。
今度は、Velocity Strength の値を100から50に変更します。
はい。Ringの半径の増大率が前の半分くらいになっています。
うん。これは上から見ると結構、それぞれのParameterの機能の意味が分かりますね。
今週はもうそんなにこれだけに時間を費やす事は出来ないので来週、もう一回やりますか。そうしたらParameterの機能の80%位は解明出来そうですし。
<Edit the Particle Update Group Settings>
Scale Color Moduleは要らないので消します。
Acceleration Force Moduleを追加します。更にAccelerationのZの値を-200にセットします。
こんな感じになりました。
はい。このmoduleの機能を理解するためにまた横から見てみます。
重力がかかって物体が下に落ちていくのと同じですね。ぱっと見、上に登っているように見えましたが違いました。
はい解決。とはなりません。疑問が幾つかあります。
Acceleration Force Moduleですので加速度を足していると思われますが、Particle Update groupから呼ばれています。UpdateですからTickのように何回も呼び出されてるはずです。加速度を何回も足したら加加速度(jark)とか言うのになるんじゃないの?
加速度的に落下するためには、速度を足す必要があるんじゃないの?との疑問です。
これも来週考えましょう。
今週のNiagaraの勉強はここまでとします。
4.Cascadeの勉強
正直、もうCascadeの基本は理解したと思っています。それぞれのModuleのParameterで分からない所は沢山ありますが、それらの解答が簡単に見つかるとは思えません。
それで以下に示したCategory内のModuleについて勉強しようと思います。
Particle System Reference [13] に詳しい解説があるはずです。
Default Required and Spawn Modules [14]から見て行きます。
先週、調べていたUse Local Spaceについての解説もバッチしありました。
なんで先週、突然公式のDocumentを見る事を忘れてしまったんでしょうね。
ただここで言っているIts parentが何を指しているのかが今一分かりません。このEmitterを持つParticle Systemの事なのかそれとも…。
流石にこれを上から読んで全部理解出来るとは思えません。
良い事思いつきました。Content ExampleのEffectのサンプルを開いてそのEmitter内で使用されているModuleを調べる事にします。
<CPU and GPU particles>
以下の様な実装になっています。
Const Acceleration Moduleから見て行きます。
Acceleration Modules [15] によると
と書かれています。何でCPU_particlesに使用されているんでしょう?
Vector Coneとはどんな速度を表しているんでしょうか?
Velocity Modules [16] によると
となっています。
成程、試してみます。
以下に示したEffectを作成しました。
これにVelocity Coneを追加します。
Velocity Coneの設定は以下の様にしました。
Angle はDocumentによると0から1の間の値で設定しろとあります。のでMin 0、Max 1 で試してみました。
全然コーン状に広がっていないじゃん。と言うのが正直な感想です。
そしたらDocumentのVelocity の項目が以下の様な説明になっていました。
と言う事はVelocityの値をもっと大きくすればコーン状になるはずです。
なっていますね。
設定は以下の様にしました。
コーンらしさを見るためにParticleの数を増やしてみました。
確かに円錐(Cone)です。
Direction についてです。
以下の設定でテストします。
X軸に沿って広がる傾向が強いです。
今度は以下の設定に変えます。
今度はY軸に沿って広がっています。
大体、Cone Velocityの使用方法について理解出来ました。
サンプルの例だと、
のような円錐を作成するのにCone Velocityは使用されていますね。
このサンプルの最後のModuleはInitial Locationです。
Initial Locationを使用する必要ないでしょうと思っていたら、GPUとCPUのEmitterの位置をずらすために使用されていました。
それなら納得です。
こんな感じで勉強していけば、ほとんどのCascadeのModuleの機能と使い方について理解出来ると思います。この勉強をしばらく続けてみようと思います。
5.Cascade と魔法陣について
以下の様に変化する魔法陣を作成してみました。
魔法陣自体はEmitterとModuleの機能を理解したら、作成方法自体は単純なので簡単に改良出来ました。
正し、以下に示した魔法陣がLandscapeにめり込んでしまう問題を直す事は出来ません。
これを直すには、Decalを使用する必要があるそうです。Effectを勉強している最中に更にMaterialの勉強を始めると大変な混乱をする事になります。ので上記の問題はしばらくの間放置しておきます。
6.Monster Zoneの拡張
以下のNav Mesh Bound Volume にMonster Zoneを作成していきます。
6.1 Monster Zone 3の作成
Trigger Box を2つ作成し、Block3 とTrigger3と名付けます。Nav Mesh Bound Volume の名前をTerriotory3に変更します。最後にMonster Zoneを追加して名前をMonster Zone 3とします。
取りあえず、Monster を静的に配置します。
以下のようになっていました。
Monsterを動的に生成するためにMonster Spawn DataをRPG Game Instance BPに作成します。
この配列に先程、静的に配置したMonsterのデータを写します。
このData TableからMonsterを生成するようにします。
Monster Zone ActorのGet Monster Spawn Data関数をMonster Territory Number が3だった場合にも対応できるようにします。
これでMonster Zone 3のMonster は動的に生成されるはずです。
Monster Zone 3のMonster が倒された時にMonster Spawn Data Landscape 4-3のデータを書き変えるようにしましょう。
RPGGameBaseBPのRemove Defeated Monster関数にMonster Territory Number が3だった場合の対応を実装させました。
これでMonster Zone 3 でMonsterと戦闘しても問題ないはずです。
テストします。
Block3に侵入しました。
Monsterが生成されています。
次にBlock3から退散してみます。
Monsterは全部破壊消滅しましたが、コメントにMonster Territory 1がCleanになりました。とあります。多分、Print Stringだけの問題とおもいますが一応確認します。
そうでした。
セリフを直します。
直しました。
今度は戦闘をしてみます。
戦闘から戻ってきたらMonsterが生成されません。
直します。
問題が中々分からなかったんですが、分かりました。
以下の図で示した赤い部分はBlock3内部ですが、Trigger3の外です。極まれにこの部分にいても極端に端を歩いているモンスターと戦闘になる事があります。
その時、Monster Territory Numberは0のままです。当然、戦闘から戻って来てもMonster Zone 3のモンスターは生成されませんし、戦闘で倒したMonster Zone 3のモンスターも消滅しません。
このバグはBlockが重なった時に発生するバグを直す時に一緒に直します。直し方のアイデアは既にあります。それを実行するだけで両方のバグを一遍に直せるはずです。
試しに、Trigger 3 の内部に侵入した後でMonsterと戦ってみました。
戦闘後は、普通にMonster が生成しています。
全部のモンスターを倒してみました。
特にバグは発生しませんでした。
7.Monster Zone のまとめなど
Monster Zoneを3つ作成しました。同じ物を繰り返す作成するのは楽ですが、潜在する問題やバグに築かずに進んでしまう可能性もあります。それらを避ける為に、一端ここでまとめる事にします。
7.1 発見されているバグ
今の所2つのバグが見つかっています。
<バグ1>
以下の図に示した条件の矢印の場所にPlayerの操作するキャラがいます。
Playerの操作するキャラは、Monster Block 1内とMonster Block 2内に同時に存在しているのでMonster Zone 1のモンスターとMonster Zone 2のモンスターが発生します。
ただし、このキャラはMonster Territory 1 内にだけいるので、Monster Territory Numberは1と記録されます。戦闘になるのはMonster Block 1内のモンスターだけです。
モンスターと戦闘して元の位置に戻って来たとします。Monster Territory Numberは1と記録されているので、Monster Block 1内のモンスターだけが発生していてMonster Zone 2 のMonster は発生しません。
この場合、Playerの操作するキャラは、Monster zone 2をモンスターと戦闘する事なく進行する事が出来ます。
<バグ2>
Block内に侵入していますが。Territory内には侵入していない時。理論的には戦闘になりませんが、現実はまれに戦闘になる事があります。
以下の図で示した赤い部分に、Playerの操作するキャラが居た場合です。
この赤い箇所で戦闘になった場合、Monster Territory Numberは0のままなので、戦闘から戻って来てもMonster は生成されません。
7.2 発見されているバグの対策方法について
対策方法のアイデアは既にあります。Monster Territory Number以外にMonster Block Number と言う整数のArrayをRPG Game Instance BP内に作成する事です。そして戦闘後、このMapに戻って来た時は、生成するMonsterはMonster Territory NumberからではなくMonster Block Numberから生成すれば良いです。
7.3 全部のモンスターと戦闘してみる
Monster Zoneの全てのモンスターを生成させて戦闘した事はありません。バグが見つかるかもしれませんし、何か改良点が見つかるかもしれません。
久しぶりにStart画面からやって見ます。
雰囲気は良いんですが、建物や家具に使用している素材がStarter kitの物なのでFantasy感が薄いです。
「新しく始める」をクリックします。
Map1に移動しました。
因みにMap1には昼と夜があります。Good Skyで作成しました。
ここからLandscape4にワープして戦闘をします。戦闘をしますが、今のままだでMonsterと戦闘すると負けてしまいます。武器を装備させます。
武器屋で武器を買い装備しました。
ワープします。
ワープしてLandscape4に移動したら、直ぐに戦闘になりました。以下のスクリーンショットは戦闘後に取った物です。
戦闘画面でモンスターを倒した時ですが、Levelが上がっているにも関わらず、一言で終わっています。
読み逃してしまっています。
Levelが上がった時は勝利ポーズを変更して、もっと細かい情報を報告するようにします。
後、monsterがアイテムを落とす場合も作成します。勿論後でですが。
崖に近づくと、Monsterが発生しました。
崖があるのでMonsterと戦闘にはなりませんが、緊張感が生まれます。
Monsterを倒すために崖を遠回りして進行していると、大量のモンスターが発生しました。
全滅させます。
LevelがMaxまで上昇してしまったので戦闘が終了してもStatusが回復しません。一端Map1に帰ります。
宿屋に泊まります。
道具屋で回復薬とイーサーを買います。
回復薬のイメージの絵だけ異常にレベルが高いですね。
戦闘中に魔法を使用する時です。
戦闘中にアイテムを使用する時です。
ボタンが何故か小さくなっています。
戦闘が終わってHPを回復させようとしたらMHPが分かりません。
戦闘しまくって島の端までやって来ました。海と島が見えます。見えますが殺風景です。
その後、何体かのモンスターを倒したら、とうとうモンスターが居なくなりました。
7.4 全部のモンスターと対戦してみて
「7.3 全部のモンスターと戦闘してみる。」で述べた以外の感想を以下に記します。
- 途中から凄い退屈になった。戦闘しても勝てるのが分かっているから作業感が半端じゃない。
- 戦闘画面に移る時に、後ろからモンスターに襲われるときと、自分からモンスターの後ろを襲うとき、は普通の戦闘と同じ始まり方で良いのかと思った。
- もっと戦闘にメリハリが欲しくなった。途中までは戦闘も楽しかったが、戦闘しても勝てるのが分かっているからつまらなくなる。
- 一端倒したモンスターが絶対復活しないので帰りは楽だった。
- バグらしいバグはなかった。のでその点は良かった。
- 地面が明かる過ぎると思いました。
8.まとめと感想
今週は以下の事について勉強しました。
- Unreal Engine 5について
- Niagara のRibbon Emitterについて
- Cascade のVector Cone Moduleについて
- Monster zoneの追加
- Monster zone のバグ出し
- Monster zone の問題点について
来週は、以下の事についてやります。
以上です。
9.参照(Reference)
[1] L, S. & tsa. (2021, May 26). Unreal Engine 5 is now in Early Access for developers – download the Valley of the Ancients tech demo. Tsa. https://www.thesixthaxis.com/2021/05/26/unreal-engine-5-demo-valley-of-the-ancients-download-requirements-100gb/
[2] Epic Games. (n.d.). Unreal Engine 5 - Unreal Engine. Unreal Engine 5 - Unreal Engine. Retrieved June 6, 2021, from https://www.unrealengine.com/en-US/unreal-engine-5
[3] Unreal Sensei. (2021, May 27). Why Unreal Engine 5 is a BIG DEAL [Video]. YouTube. https://www.youtube.com/watch?v=HM1IZnRzVGQ
[4] Tech Art Aid. (2016, November 7). UE4 Optimization: Instancing [Video]. YouTube. https://www.youtube.com/watch?v=oMIbV2rQO4k&t
[5] Tech Art Aid. (2021a, May 27). Testing UE5 Lumen Real Time Lighting & Limitations // Unreal Engine 5.0 Early Access [Video]. YouTube. https://www.youtube.com/watch?v=OqDIkQWOyDk
[6] Tech Art Aid. (2021b, May 27). Testing UE5 Nanite Meshes & Limitations // Unreal Engine 5.0 Early Access [Video]. YouTube. https://www.youtube.com/watch?v=X6hbxOyDZWk
[7] Two Minute Papers. (2009, August 31). Two Minute Papers [Video]. YouTube. https://www.youtube.com/c/K%C3%A1rolyZsolnai/featured
[8] MR3D-Dev. (2021b, May 27). Unreal Engine 5 First Impressions [Video]. YouTube. https://www.youtube.com/watch?v=6uBmdLOMTK0
[9] MR3D-Dev. (2021a, May 27). How to Use Data Layers in Unreal Engine 5 (Dark Realm Access) [Video]. YouTube. https://www.youtube.com/watch?v=4O4t0BXcuwE
[10] CGHOW. (2021, May 26). Unreal Engine 5 Early Access | First Reaction [Video]. YouTube. https://www.youtube.com/watch?v=wELlkE0vI-c
[11] Epic Games. (2021, June 6). Create a Ribbon Effect in Niagara [Video]. Unreal Engine Documentation. https://docs.unrealengine.com/4.26/en-US/RenderingAndGraphics/Niagara/HowTo/RibbonEffect/
[12] Torus. (2021, May 26). In Wikipedia. https://en.wikipedia.org/wiki/Torus
[13] Epic Games. (n.d.-c). Particle System Reference. Unreal Engine Documentation. Retrieved June 6, 2021, from https://docs.unrealengine.com/4.26/en-US/RenderingAndGraphics/ParticleSystems/Reference/
[14] Epic Games. (n.d.-b). Default Required and Spawn Modules. Unreal Engine Documentation. Retrieved June 6, 2021, from https://docs.unrealengine.com/4.26/en-US/RenderingAndGraphics/ParticleSystems/Reference/Modules/Required/
[15] Epic Games. (n.d.-a). Acceleration Modules. Unreal Engine Documentation. Retrieved June 6, 2021, from https://docs.unrealengine.com/4.26/en-US/RenderingAndGraphics/ParticleSystems/Reference/Modules/Acceleration/
[16] Epic Games. (n.d.-e). Velocity Modules. Unreal Engine Documentation. Retrieved June 6, 2021, from https://docs.unrealengine.com/4.26/en-US/RenderingAndGraphics/ParticleSystems/Reference/Modules/Velocity/