<前文>
<Epic game社が$ 520 millionの罰金を支払う件について>
これ全然、日本でNewsになっていませんが、Game産業の未来が大きく変わるかもしれない大きな事件だと思っています。
ので、今回は特別にこのNewsについてまとめます。
まずこの罰金ですが、史上最大の罰金額で日本円にしたら700億円位になります。
以下の情報によると
Epic Game社の今年のGross Incomeは$710 millionで、その利益のほとんどがこの罰金で吹っ飛んでしまいました。
しかも来年の利益は$343 millionしか予定されていません。
これ倒産する可能性だってあると思われる金額です。
Federal Trade CommissionがEpic Game社に対してこの制裁を決定したんですが、こんなひどい制裁を受けなければならない悪い事をEpic Games社はしたんでしょうか?
Federal Trade Commission[1] によると
Privacy Violationsとして
- Violated COPPA by Failing to Notify Parents, Obtain Consent
- Default settings harm children and teens
となっています。
更に、Illegal Dark Patternsとして
- Used dark patterns to trick users into making purchases
- Charged account holders without authorization
- Blocked access to purchased content
が制裁の理由として挙げられていました。
それぞれの細かい内容についてはこの記事に書かれています。のでここで詳しく述べる事はしませんが、今までNet上でこれらの問題を聞いた事がないんです。
本当にここに書かれている事をFederal Trade Commission が主張するほどの規模でEpic Games社がやっていたら、もっとネットで騒がれていると思うんですが、どうなんでしょう。
しかもこれ、うがった見方をすれば、
- 散々Gameで遊んだ。
- 遊んだけどやっぱ金返して。と要求
- 怒ったEpic Games社が金返すけど、その代わり二度と遊べないようにした。
- その記録は個人情報だから消せ。と言った
こういうイチャモンが通った。と見えなくもないです。
更に、他のGame会社が全く問題にされていないのも不思議です。
もっとあこぎな稼ぎをしているGame会社は沢山あるのにそっちは無視してEpic Game社だけ罰するのも不思議です。
これはEpic Game社が、共和党を代表とする保守系支配層から必ず潰すと、宣戦布告されたと考えるべき事案なんです。
何故?Epic Games社が、保守系支配層にそんなに恨まれるようになったのかは本当の事は分かりません。
しかし私には思い当たる理由があります。
それはApple社を訴えた事です。
Appleの株主と共和党系支配層はほぼ同じなんです。もっと詳しく言うと反マイクロソフト連合であるIT関連企業は全部共和党系です。
これが虎の尾を踏んだ事になったんです。
共和党系支配層がAppleに盾突くとこうなるぞ。という見せしめにEpic Game社を血祭に上げたと考えると凄く辻褄があいます。
私は大多数のアメリカ国民がEpic Game社を叩く事に対して、疑問の声を上げるまで、それも大声で上げるまでこの共和党系支配層によるEpic Game社叩きは続くと見ています。
そしてもし数年の内に大多数のアメリカ国民が疑問の声を上げなかった場合、Epic Game社が倒産する事もあると覚悟する事にしました。
BlenderはNPO法人が管理する無料Softですが、昔はMayaと同じ有料Softだったんです。それが共和党系支配層からのアメリカ政府の訳わからない規制で一気に倒産させられてしまいました。それで仕方なくNPO法人としてSoftを無料で配布する事になったんです。
オランダ人は、もう200年位、アングロサクソンとやり合っているので共和党系支配層がどんな攻撃をしてくるのかなんて全部知っているですよ。それでも倒産するまで追い込まれてしまったんです。
Epic Game社の創設者であるTim Sweeny氏はその苗字からアイルランド系かスコットランド系だと思われますが、こっちもアングロサクソンと何百年もやり合っています。
さらにTim 氏の経歴から推測するとかなりの民主党支持者っぽい感じがします。
これはとことん喧嘩する感じがします。
しかしその結果、Epic Game社が倒産する可能性は、非常に残念ですが、大いにあると思います。
更にもう一つ、共和党系支配層から目を付けられたんじゃないのかと疑われる会社がもう一社あります。
Pokémon の新作が販売されましたが、アメリカでは物凄く叩かれました。
最初Graphicsが駄目だ。と叩かれていたんですが、それは誤解だった事が分かると、今度はBugが多いと叩き始めました。
Bugも言われている程ひどくないし、Game自体はかなり面白い事が判明しだすと、まるで何事もなかったかのようにPokémonの話をしなくなりました。
そして今度はSteam Deckがいかに素晴らしいかについて話すようになりました。
確かに最初、アメリカでPokémonの新作が叩かれた時、普段ゲームをしない私は、本当にPokémonのGraphicsが悪いんだと思いました。
でも自分でYouTubeに上がっている動画を見て確認したら、全然そうは見えなかったです。
例えばLandscapeにはうっすらとMacro Variationが使用されていましたし、Tilingも見られませんでした。YouTubeの動画では確認できませんでしたが、Distance Blendも使用されていそうです。
唯一気になったのが、Height MapをNoiseから生成するSoftを使用しないでPaintで塗り塗りして作成したっぽい部分でしたが、これはPhoto-Realisticな背景を作成するのが目的ではないので、そこまで目くじらを立てる事は無いと思います。
何か批判している人達の言っている事が信用出来ないので、その後SwitchのGPUについて調べてみました。
そしたらGTX 1650と同性能だっていうじゃないですか。
私なんてGTX980でずっと頑張って来て、今年の10月にやっとRTX3070Tiを買ったんですよ。
もっともGraphicsにうるさいと言われているPC GamerだってGTX 1650が最も使用されているGPUだって言うじゃないですか。全然Switchの性能は劣ってないですよ。
大体、純粋に娯楽目的でGPUを買う場合、そんな高いGPUなんで庶民は買えませんよ。やっぱりGTX 1650位を買う位が、庶民が娯楽として使用出来る最大の額なんです。
SwitchやPokémonの新作を批判している人達って、職業クレーマーだったんですよ。
普段はGame Journalistとして活躍している風に見せていますがJournalistを名乗るならGame機のGPUくらい調べるのが当たり前でしょう。単なるクレーマーだから事実はどうでもいいんです。
ここで更に凄い事実を見つけてしまいました。
何とSwitchと比較してGraphicsが優れていると言われるSteam DeckのGPUですがGTX 1050 かGTX 950と同程度の性能と書かれていました。
ええーですよ。
信じられますか。
3D Graphicsの性能はGPUの性能です。
GPUの性能で一次的に決まってしまうんです。Game Journalistさん達は全部でっち上げでPokémonの新作、並びにSwitchの批判をしていたんです。
これは誰かが旗振って扇動していますよ。じゃなきゃここまで統制のとれた批判は出来ないですよ。
で、証拠はないですが、私が犯人だと思っているのが共和党系支配層です。
Christmas商戦でiPadよりSwitchを欲しがる子供の親に、Pokémon がいかに駄目なGameかを吹き込める絶好の機会じゃないですか。
それでも子供がPokémonしたいとなったらSteam Deckを進めるわけです。
でもこれは本当に表面的な理由で、実際はPokémonが共和党系支配層の支持母体である教会の信者離れを引く起こす可能性が高いのが理由だと思います。
今、アメリカの若者の間では本当に日本のアニメが流行っています。そして日本のアニメを見たら教会なんかバカらしくて通ってられなくなります。
教会で女性を欲情の目で見るのは大罪ですって教えているのに、日本のアニメでは女性のおっぱいをプルンプルンさせているわけです。
勿論、教会内で日本のアニメの話なんかしたら、罰則ものですが、例外が2つだけあります。というか私がアメリカに住んでいた時、通っていた教会では日本のアニメでも話していいのが2つだけあったんです。それが宮崎駿監督が作ったアニメとPokémonです。
この2つは何故か教会内でしゃべってもお咎めなしだったんです。恐らく宮崎駿監督が作ったアニメは芸術作品として認められているからで、Pokémonは教会に通っている子供たちがその話しかしないから自然にOKになったと思います。
このPokémonを見て育った世代は大きくなったら自然に日本のアニメを見る様になる訳です。
そしておっぱいをプルンプルンさせているの見て、脳が正常に働くようになる訳です。女性の中絶反対を指示している教会に通うのはアホらしい。と。
まあ、これは私の勝手な想像ですが、結構こういうパターンで若者が教会に来なくなるのはありそうです。
これは共和党系支配層には2重の意味で恐怖なんです。まず直接的に支持母体が弱くなります。これが第一の恐怖です。しかしもっと恐ろしいのは共和党を支持している白人層の道徳を教会を通じて縛る事で、共和党系支配層はアメリカを支配して来たんです。道徳による縛りですから凄いんです。これが効かなくなってしまうんです。
今までアメリカの若者はあいつは悪魔だ。殺さなくては駄目だ。と教会で言われると、ああそうなんだなーと100%信じて世界中の戦場に出かけて人殺しをしてきたんです。
最近ではコロナは中国人が製造したからアメリカにいるアジア人を殴って殺しても良いというのがそれです。
2~3年前、よくアメリカでアジア人が暴行にあって死んだりしていましたが、それはそういう背景があったからです。
これは日本のアニメを見たアメリカの若者には全く効かなくなるんです。日本のアニメにでてくるVillain 達には悪の道に入った理由があるんです。それだけじゃなくて別な角度から見るともうひとりの主人公だったりします。だから結果的には殺す事になってもVillainの気持ちもよく理解した上での結果なんです。人間同士の複雑な営みの上での勝敗の結果で、敵に対しても単純にあいつは悪魔だ。殺さなくては駄目だ。と見なくなるんです。
これが共和党系支配層にとって物凄い恐怖なんです。
だからPokémonを潰す事で、アメリカの若者が日本のアニメを見るとっかかりを無くしたい訳です。
今回のPokémonの新作を事実無根の炎上で潰す計画は、まあ威力偵察ってやつでしょう。これでPokémon及び任天堂がどう対応するのかを見るのが真の目的だと思います。
次にやってくるのが本当の攻撃です。
そこで、思ったんですが、任天堂とPokémonはEpic Game社と同盟組んじゃったらどうでしょうか?
バラバラだったら個別撃破されるのは目に見えていますが、任天堂とPokémonがEpic Game社と同盟組んだらそれなりに強い気がします。
個人の勝手な意見ですが、述べさせて頂きました。
<本文>
今週は、先週出来なかった今年の勉強の総括を行います。
1.Niagara: CGHOW氏のTutorialをやる
この節と次のMaterialの勉強の目的を簡単に述べると、筋トレのように毎週繰り返して、Material/Niagaraの基礎体力を上げる事です。
それは例えばCurl Noise Moduleなどの一般に使用されているModuleの使い方を一通り覚えておく。という事です。
その点に注目してこの一年のNiagaraの勉強を振り返ってみます。
1.1 一月の勉強
CGHOW氏のFlower Effect in UE4 Niagara Tutorialを勉強しています。
ここで勉強したNodeやModuleは、以下のモノでした。
- Black Bodyノード
- Hue Shiftノード
- Set Parameter Module
- Torus Location Module
うーん。
Torus Location Moduleはそんなに勉強する必要があるModuleではない気がします。
Black BodyノードやHue Shiftノードは、今でもあんまり良く理解していませんね。
Set Parameter Moduleはもう、目を瞑っていても使用出来る様になりました、
CGHOW氏のDistort in all Directions in UE5 Material and Niagaraを勉強しています。
ここで使用しているNodeやModuleは以下のモノです。
- Radial Gradient Exponentialノード
- Pannerノード
- Dynamic Parameterノード
- Dynamic Material Parameter Module
このEffectどうやって作成したのか全く分かりません。
今、Blogを読み直したんですが、今週は自分で作成する必要がないので頭が働きません。
MaterialのDynamic Parameterノードの値をNiagaraのDynamic Material Parameter Moduleで管理するのは覚えていますね。
これだけ覚えて置けば十分でしょう。
Wave in UE5 Niagara Tutorialを勉強しています。
このTutorialではあんまり知らないMaterialやNiagaraは無いですね。
Wave in UE5 Niagara Tutorialの理論について考察しています。
いつものTexCoord[0]の計算です。
1.2 二月の勉強
Eventを使用してNiagara Effectを繋げる方法を勉強していますね。
この時、初めてNiagaraのEventを勉強したみたいです。
更にここで初めて、Particle Attribute Readerの存在を知ったみたいです。
まあ、今となってしまえば、Particle Attribute Readerを知っている方と言って別に偉いとか思う事はないですが、この時は、Particle Attribute Readerの使い方を知らないとNiagaraを理解したとは言えない。みたいな強迫感に襲われて、これからParticle Attribute Readerについて必死に勉強を始めるわけです。
早速Particle Attribute Readerについて勉強するのかと思ったら、しっかりEventとEvent Handlerから勉強しています。
本当に私は石橋を叩いて渡る性格ですね。
ここで、Particle Attribute Readerについて本格的な勉強を始めていますね。
ところが、唯一と言っても良いParticle Attribute Readerに関するTutorialであるParticle Attribute Reader in UE4 Niagara Tutorial | Download Project FilesでCGHOW氏、途中で混乱してしまい、良く分からない終わり方をしてしまいます。
その結果、このTutorialで勉強してもParticle Attribute Readerの使用方法を理解する事が出来なかったんです。
ここでやっとParticle Attribute Readerノードを使いこなせるようになりました。
以下の様なEffectを自分で作成しています。
1.3 三月の勉強
この時期、Blenderの使用方法を結構熱心にしていたみたいです。
それでMesh を使用してFXを作成しているTutorialを勉強しています。
このTutorialで勉強したNodeやModuleは、
- Rotate About Axisノード
- Dynamic Material Parameter module
ぐらいでした。
Mesh Renderingも使用方法も理解出来たので、Niagaraの4つRenderingのSprit、Ribbon、LightそしてMesh Renderingの全てを理解出来るようになりました。
この時、Niagaraの勉強を始めて約1年経ちました。
それでこの週は、今までNiagaraを勉強して分かった事をまとめています。
結構重要な内容がまとめられているのでそれを簡単にまとめ直します。
- 何故、Effectは光るのか?
- Effectの作成の30~60%はMaterialの作成
- Niagaraを使いこなすのに大学レベルの数学は必要か?
更に、日本のアニメ調の絵でも見栄えのするEffectを作成するためにはどうすればいいのかについても考えています。
黒枠を追加したりしています。
Niagaraで黒枠を作成するのって一寸工夫が要ります。Textureを普通に読み込むと黒は透明で表現されたりします。
Coin FX in UE4 Niagara Tutorialを勉強しています。
どうもMeshを使用したNiagaraの勉強を集中してやっているみたいですね。
後、アニメ調のEffectに改良しようとしていますね。
これ確か難しすぎて挫折したはずです。
1.4 四月の勉強
何とNiagaraの勉強を始めた最初の目的は、以下の魔法のEffectを作成する事でした。
いやー。すっかりこんな目的があったの忘れていました。
というかこういうEffectがほしかったらどこかのAssetを改良した方が断然早いです。
この週はIceのEffectの作成をする事にして、CGHOW氏のAOE ICE in UE4 Niagara Tutorial | Download Filesを勉強する事にしています。
このTutorialでもMeshを使用していますね。
Mesh Renderingの作成は、Blenderの基礎を覚えるまで勉強出来なかったので、その鬱憤を晴らすかのようにMesh RenderingのTutorialばかりやっています。
Wavy Trails in UE5 Niagara Tutorial | Download Filesを勉強しています。
Eventを使用しています。
あれ、実際にやった内容を読んでいるとParticle Attribute Readerを使用していますね。
そう言えばEventとParticle Attribute Readerの違いはGPUで使用出来るかどうかです。
その事がここに書かれていました。
良く読んだら、途中でRibbon Rendererに変更するのでEventで実装し直すと書かれていました。
うーん。
なんと、この週で初めてUE5に触っています。
CGHOW氏のUE5 Niagara Baker Tutorialを勉強しています。
このTutorial、Content Examplesにある以下のSampleを再現しています。
これ以下の様なSub UV TextureをUE5内で作成しています。
これは勉強した当時は凄い衝撃的な内容だったんです。
いつもこのSub UV Textureを使用するたびにどうやってこれを作成するんだろうか不思議に思っていたからです。
でも今はFluid Simulationを専門に計算するSoftで作成した方が高品質な事を知っているので、微妙な機能かもしれない。と思っています。
PC1号ではUE5のFluid Simulationが十分に動かせないので、新しいPCを買う必要性を感じて来ました。
うーん。危なかった。
もしまだPC2号を買ってなかったら、来年の一月からUEの勉強が出来ない事態になっていました。
この後もいろいろなContent Exampleにある例を見ていますが、ほとんどの例で、どこが新しい技術なのかを理解出来ていません。
Wool Fabric in UE5 Niagara Tutorial | Download Filesを勉強しています。
この辺からNiagaraを筋トレのように基礎を固めるための勉強としてやるようになって来ました。
それは、一回、アニメ調のEffectに改造使用しようとして挫折して終わった事から、もう少しMaterialやNiagaraの基礎力を高める必要を感じたからです。
このTutorialで勉強したModuleやNodeは
- Grid Location Module (+Spawn Particles in Grid Module)
です。
後、このTutorialで初めてLerpノードをExtrapolateして使用しています。
この使用方法は今となっては常識ですが、最初に見た時はかなり驚きました。
1.5 五月の勉強
CGHOW氏のYin Yang FX in UE5 Niagara Tutorialを勉強しています。
ここでEmitter StackのPropertiesのLocalにCheckを入れた場合と入れない場合の違いについて解説していました。
Checkが無い場合です。
Checkがある場合です。
LocalにCheckが無い場合は、Niagaraが移動しようが、それぞれのParticleの始点は変化しません。
LocalにCheckがある場合は、Niagaraが移動すると、それぞれのParticleの始点も一緒に変化します。
黒い部分のMaterialの作成方法ですが、ここではBlend ModeをAdditiveに変更して
以下の実装を行う事で実現していました。
太極図が完成しましたが、なんとこの太極図、原点でしか回転しません。
Yin Yang FX in UE5 Niagara Tutorialが原点でしか回転しない問題について検証しています。
色々検討していますが、この週は原因を解明する事が出来ませんでした。
この週もYin Yang FX in UE5 Niagara Tutorialが原点でしか回転しない問題について検証していますが、いきなり原因を突き止めていました。
その原因は、Scratch Pad内でPositionの値をVectorに変換する時に、以下に示したPosition to Vectorノードを使用していたからでした。
このNode、一見すると以下のPosition->Vectorと同じ機能に見えますが
実際は以下に示した様な複雑な実装をしており、
それが、常に原点を中心に回転する原因を作成していました。
CGHOW氏のUE5 Niagara & Custom Stencil Buffer Tutorial | Download Filesを勉強しています。
このTutorialではCustom Stencil Bufferを使用しています。
これはすっかり忘れていました。
UE5 Niagara & Custom Stencil Buffer Tutorial | Download Filesの続きを勉強しています。
こんな結果になりました。
特にここに書き記しておきたいNodeやModuleは無かったです。
1.6 六月の勉強
Velocity Moduleについて勉強しています。
そのためにCGHOW氏のAll Velocity Modules in UE4 Niagara Explained とUE Memorandum氏の【Niagara入門】ForceとVelocityの違いと使用する際のポイントなど【Unreal Engine】を勉強しています。
今、私がこのBlogを読み返して、完全に忘れていたModuleはInherit Velocity Moduleだけでした。
UE Memorandum氏の【Niagara入門】ForceとVelocityの違いと使用する際のポイントなど【Unreal Engine】では以下の事を勉強しました。
これも今となっては常識になっています。
CGHOW氏のMesh Flipbook in UE5 Niagara Tutorial | Download Filesを勉強しています。
ここでは3D Graphics Softwareで作成した沢山のCoinをそれぞれ別のStatic MeshとしてUEにImportする方法を勉強しています。
地味ですが知っておくと何処かで役に立つ技術である事は間違いないです。
ここで、CGHOW氏が作成したNiagara初心者向けの対策であるUnreal Engine 5 Niagara Beginner Tutorial - UE5 Niagara Starter Course!とScratch Pad ModuleのSeriesを勉強する事にします。
Scratch Pad ModuleのSeriesは#8まで作成されていますし、Unreal Engine 5 Niagara Beginner Tutorial - UE5 Niagara Starter Course!は2時間以上の大作です。
何故、今更Niagaraの基礎について勉強したいかと言うと、以下の理由があったからです。
特に3番目の初心者に教えるためと言うのが重要で、いずれNiagaraのTutorialを自分で作成するので、そのための準備と言う意味合いがあります。
Particleの生成する位置を指定するSectionの説明を、自分で作成したんですが、なんと間違えて説明してしまいました。
後で、それに気が付いて訂正しています。
このBlogではまだまだ勉強する必要がある。みたいなまとめ方をしていますが、今読み直すと、そんな一寸した間違いはどうでも良くです。
Niagaraの仕組みを理解したいなら、各Sectionが何を担当しているかを説明している私の解説の方が何十倍も大切です。
しかもその各Sectionが何を担当しているのかを理解する事がNiagaraで自由にEffectを作成するためには重要である。としっかり認識して説明しています。
Unreal Engine 5 Niagara Beginner Tutorial - UE5 Niagara Starter Course!の続きを勉強しています。
大体一回の勉強で進むのは2時間のTutorialの内の20分位でした。
この週は、
- User Parameter
- Local Space
- GPU
- Emitter Summary
- Life Cycle(Loop Type)
- LODs(Scalability)
- Spawn Modules
でした。
1.7 七月の勉強
Unreal Engine 5 Niagara Beginner Tutorial - UE5 Niagara Starter Course!の続きを勉強しています。
以下の内容について勉強していました。
- Shape Location Module
- Velocity Module
- Force
- Inherit Velocity
Unreal Engine 5 Niagara Beginner Tutorial - UE5 Niagara Starter Course!の勉強の続きです。
- Update Overlife (Size, Color, Rotation)
- Solve Forces and Velocity Module
- Sprite Renderer Module
- Using Sub UV
について勉強しました。
Unreal Engine 5 Niagara Beginner Tutorial - UE5 Niagara Starter Course!の勉強の続きです。
について勉強しました。
7月は3回しか勉強してなかったんですね。今年は三カ月毎に一回休みを入れると決めたので、まあその通りなんですが、見直してみると一寸寂しいです。
1.8 八月の勉強
Unreal Engine 5 Niagara Beginner Tutorial - UE5 Niagara Starter Course!の続きを勉強しています。
- Static Mesh Location
- Skeletal Mesh Location
- Morph Effect
- Fire Material
これでやっとUnreal Engine 5 Niagara Beginner Tutorial - UE5 Niagara Starter Course!を一通り勉強しました。
私のようにNiagaraの基礎は一通り理解した人間でもこのTutorialを全部終わらせるために、6回の勉強をしています。一回の勉強に掛る時間を90分としても540分掛かっています。こんなの初心者にいきなり教えるのは無理ですわ。
講義で30分、実装で50分、最後に講義内容のテストで10分としても90分フルで勉強するのを6回する訳です。
かなりきつい内容になります。
そして恐ろしいのは内容がきついと、脳が理解する行為を止めて兎に角終わらせようとし始める事です。
これ、よーく考えてTutorialを作成しないといけないですね。
Unreal Engine 5 Niagara Beginner Tutorial - UE5 Niagara Starter Course!の総括をしています。
ここでは勉強内容を整理して6つの段階に分けています。
非常に良く考えて作られています。この通りに勉強したら必ずNiagaraを理解して自分で使いこなすことが出来るようになります。
以下にその第一部の理解すべき内容だけ記しておきます。
そして今度はScratch Padの勉強に着手し始めました。
UE5 Niagara #ScratchPad Module #1 | velocity Conditionを勉強しています。
しかしこのTutorial、最初のTutorialなのにParameterとは何かについてまったく説明していません。
これを理解出来ないとScratch Padが何をしているのか訳わからなくなります。
UE5 Niagara #ScratchPad Module #2 | Custom Dragについて勉強しています。
ここでは、Scratch Pad内にサイズや色の違うParticleのみをDragする実装方法を勉強しています。
この後で、Clouds in UE5 Niagara Tutorial | Download Filesを勉強しています。
初めてCGHOW氏のTutorialを勉強したのが、これの前のVersionのTutorialでした。
その時は、雲を光らせる事が出来なくて、CGHOW氏のTutorialは難しすぎるとほとんど挫折仕掛けたのを覚えています。
ここのPointはLight Renderer ModuleのAffects TranslucencyにCheckを入れる事で、
以下のように雲を光らせる事が出来る様になります。
Scratch Pad Moduleの勉強として
- UE5 Niagara #ScratchPad Module #3 | Spawn Count on Owner Scale
- UE5 Niagara #ScratchPad Module #4 | LODs
の2つを勉強しています。
更にここで、ほとんど初めてであるNiagaraの新機能であるFluid Simulationの勉強を以下のTutorialでしています。
- Flip Fluid in UE5 Niagara Tutorial | Download Files
ただしこれ勉強しただけで、実装はしていません。
1.9 九月の勉強
Scratch Padの勉強として
- UE5 Niagara #ScratchPad Module #5 | Static Mesh Location with Offset , Rotation and Scale
その他のNiagaraの勉強として、
- Flip Fluid in UE5 Niagara Tutorial | Download Files
の実装をしています。
ここで、今のNiagaraの勉強方式を明確に規定しています。
CGHOW氏のTutorialは結構複雑な作りをしていますが、この方式で勉強すると問題無く理解出来るようになります。
Niagaraにおける初めてのFluid Simulationの結果も以下に示しておきます。
NiagaraのFluid Simulationに関しては今も勉強中であり、まだ良く分かってない事ばかりです。来年頑張って勉強します。
Scratch Padの勉強として
- UE5 Niagara #ScratchPad Module #6 | Skeletal Mesh Location with Offset and Scale
- UE5 Niagara #ScratchPad Module #7 | Grid and Brick Pattern
を勉強しました。
更にCGHOW氏が作成したVFXのShort 動画を見ています。
このShort動画ですが、見直すと圧巻の一言です。
これ自分で実装してみたい。とか色々書いていました。
UEの勉強の何が良いかと言うと、こういう映像を見ると勉強したいと言うMotivationが上がって来る事です。
Scratch Padの勉強として
を勉強しました。
ただしCollision Query | UE5 Niagara #ScratchPad Module #9の方は途中までしか終わりませんでした。
Scratch Padの勉強として
- Collision Query | UE5 Niagara #ScratchPad Module #9
の続きをやっています。
ここで座っているイスが壊れると言う大事件が起きます。
これ前の日にイスがボキッと凄い音したんですが、その時は別に何事も無かったのでそのままにしていたんです。
そしたら、これです。
もう少しで大けがする所でした。
1.10 十月の勉強
Scratch Padの勉強として以下のTutorialの続きをやっています。
- Collision Query | UE5 Niagara #ScratchPad Module #9
新しいPCやイスを買いにいったりして結構時間を費やしてしまいました。
Niagaraとは関係ないですが、ここで初めてBloomについて本格的に勉強しました。
これMaterialでじっくり勉強する事になります。
ここでもCollision Query | UE5 Niagara #ScratchPad Module #9の続きを勉強しています。
というか、前週、勉強した時、今までの勉強内容を忘れている事に気が付いて、まず今までの勉強内容の復習をしています。
一応実装は終わりました。
Collision Query | UE5 Niagara #ScratchPad Module #9 [4] の総括をしています。
このTutorial、確かに25分もあって長いんですが、勉強している途中で2週間の間が空いてしまったので、物凄く難しいTutorialだった印象が残っています。
以下の2点がこのTutorialの重要な点であるとまとめられています。
今回、Scratch Padの勉強としてどんなNodeが大切なのかにまで踏み込んでまとめようとしたんですが、それぞれのBlogでそれがまとめられていなかったんです。
今それを全部整理すると物凄く大変になるので、どんなNodeの使用方法について学んだのかをまとめるのは諦めました。
この時のBlogは何故かそれがしっかりまとまっていましたので、これだけここに書いて置きます。
Particle Attribute Reader | UE5 Niagara #ScratchPad Module #10を勉強しています。
はい。
ハッキリ言ってScratch PadのSeriesを勉強して来た理由は、これが勉強したかっただけです。
まず、今までのParticle Attribute Readerの勉強内容について復習しています。
そこで、まとめられていたんですが、前の実装が上手く行かなかった原因は、私がTutorialではSubtract ノードを使用して1を引いている所を、One Minusノードを代わりに使用していたからだ。と言うかなり恥ずかしい事が書かれていました。
確かにそこは私が間違えていたんですが、CGHOW氏も何か間違えていた記憶があります。
うーん。
覚えていません。
普通に実装を終えています。
この後でこのTutorialの評価として
というPositiveな評価をしています。
しかし結論としては以下に示した様な問題点があるとなっています。
うーん。
やっぱりParticle Attribute Readerを使いこなせるかどうかってNiagaraの基礎をある程度理解したと言う証明だと思うんです。
だからParticle Attribute ReaderのTutorialはかなりしっかりしたモノが欲しい。という利用者側の厳しい要望は仕方ない気がします。
まだScratch Pad Moduleの勉強をしていました。
- Custom Facing | UE5 Niagara #ScratchPad Module #11
を勉強しています。
同じEmitter内で作成したParticleの内の一つだけSize、ColorそしてVelocityの条件を変える方法について勉強しています。
これもParticle Attribute Readerを使用しています。
結果です。
このTutorialで学んだ内容がまとめられていました。
こうやっていつも勉強した後に何を学んだのかをまとめて置けば、今ざっと読み直した時に簡単に復習出来るんですが、ほとんどのNiagaraの勉強ではそれをしていませんね。
これは来年は必ずやる事にします。
これでScratch Pad Seriesの勉強が終わりました。
総括をしています。
ここで凄い重要な話をしています。
この部分の説明は、値千金の内容です。
読んでいて普段からこういう内容が書けたら、筆で食っていけるのに。と思いました。
今の感想と全く同じ事を書いていました。
結論として以下のまとめを行っています。
私がScratch PadのTutorialを作成する時はこのような内容で構成します。
1.11 十一月の勉強
この週からNiagara のFluid Simulationの勉強を始めています。
11月ってつい最近じゃないですか。
前文では既にDirect X12の勉強を始めています。
Render Bucket氏のUE5 Niagara Fluids Tutorial - Intro To FLIP Fluids/3D Water & Foamを勉強しています。
以下のEffectが完成しました。
この時はまだ、Render Bucket氏の実力を知らないので
とか書いています。
ここで、
という非常に大事な情報を紹介しています。
これ、後でRender Bucket氏がとんでもない実力を持っている人だと判明する証言になるんですが、この時は
と書いているだけです。
以下に自分で実装した結果を示します。
この週もFluid Simulationの勉強をしています。
CGHOW氏のChocolate Flip Fluid in UE5 Niagara Tutorial | Download Filesを勉強しています。
ここで、このTutorial、Drag Moduleを使用しているのに、Solve Source and Velocity Moduleを追加してしまっています。
そのせいで、Particleが床から溶け出してしまっています。
この時点で、私の中のRender Bucket氏の評価はうなぎ登りです。
それは兎も角として、NiagaraのFluid Simulationでは粘性を指定する箇所がないんです。のでそれをどうやってセットするのかについて論じています。
Render Bucket氏のUnreal Engine 5 Tutorial - Niagara Fluids & Characters/Skeletal Mesh Collisionsを勉強しています。
以下の様なSkeletal MeshとCollisionするFluid Simulationを作成します。
何と5.1のEmitter Stackには、Use Physics Asset Collisionがありません。
Use Physics Asset Collisionがある5.0で作り直して、実装しました。
5.1でもSkeletal MeshでNiagaraのFluid SimulationとCollisionする方法はないのか検証しました。
この辺になるともう昨日の事のように覚えています。
結論から言うと出来ました。
Niagaraの勉強を始めて、約2年経ちましたが、初めて自分で、まだ誰も作成していないVFXを作成しました。
何故、このVFXが凄いのかについてはこの週のBlogにまとめてありますが、一応以下に示しておきます。
Content Exampleで紹介されているやり方
は、Skeletal Mesh ActorにSkeletal Meshをsetした状態でのみ適用可能です。
つまりPlayerが操作するCharacterに使用する事は出来ません。
しかも名前にSKM_が入っているSkeletal MeshをSkeletal Mesh ActorにSetするとErrorになって使用出来ません。
のでDefaultでThird Person CharacterにセットされているSKM_QuinnSimpleに対して使用する事も出来ません。
それに対してRender Bucket氏のやり方は、Playerが操作するCharacterでも、そのCharacterのSkeletal Meshの名前にSKMが入っていてもNiagara FluidとCollision出来ます。
しかしRender Bucket氏の方法は、UE5.1 では使用する事は出来ません。
なぜならUE5.1 ではNiagara Fluidを生成するNiagara SystemのEmitter Stackに使用されているGrid 3D Compute Boundary ModuleのAttributeにUse Physics Asset Collisionが無いからです。
なので、Render Bucket氏のやり方を改造してUE5.1でもPlayerが操作するCharacterでも、そのCharacterのSkeletal Meshの名前にSKMが入っていてもNiagara FluidとCollision出来きるようにした私の方法は、現状、公表されている唯一の5.1でPlayerが操作するCharacterとNiagaraのFluid SimulationがCollisionする方法です。
だから結構凄いって事です。
1.12 十二月の勉強
この週は気分転換して、UE5.1 でRibbon RendererをGPUで使用出来るのかどうかを確認しています。
そのために、CGHOW氏のRibbon Trails in UE5 Niagara Tutorial | Download Filesを勉強しています。
結論から言うと、何の問題もなくRibbonをGPUで使用出来たんですが、Ribbonを敢えてGPUで使用する目的が見つからなかったです。
例えばRibbonの数を増やすと以下のようにParticleを生成しているのと変わらなくなりました。
更にLight Rendererを使用した場合もGPUで使用出来なくなるので、思ったより応用方法が無かったです。
以下の様な応用したのも作成したんですが、動画を撮影するためのSoftをまだPC2号にInstallしていないのでScreen Shotしか残っていません。
Render Bucket氏のUnreal Engine 5 Tutorial - Niagara Fluids - Flamethrower [1/2] を勉強しています。
うーん。これが今年最後の勉強になりますね。
これ完成したんですが、Level上で使用すると原点に配置した時しかFluid Simulationの結果を見る事が出来ません。
試しに以下のTemplateでも同じなのか調べました。
このTemplateで作成されたFluid SimulationはLevel上のどこに配置しても普通に表示されていました。
これで今年一年のNiagaraの勉強は終わりです。
1.13 今年のまとめ
こうやって見直して見ると、かなり一貫性のある勉強をしていました。
もっと適当に食い散らかした感じの勉強をしていたと思ったら、その勉強内容は、
- Mesh Rendering関連
- Niagaraの基礎関連
- Scratch Moduleの基礎関連
- Fluid Simulation関連
- その他
にきれいに分割されていました。
この辺は流石でした。
ただしそれぞれの勉強で、新しく学んだ事についてのまとめが、無いものが多かったです。
後から見直した時に、このTutorialを勉強して何を得たのかが分かりにくい時が結構ありました。
これは来年の課題にします。
来年は必ず、勉強の最後に学んだことのまとめをする事にします。
2.Materialの勉強
今度は今年のMaterialの勉強を見直します。
2.1 一月の勉強
Ben Cloward先生のUsing Position Data - Shader Graph Basicsを勉強しています。
以下の3つのNodeについて勉強しています。
何をするためにこんなの勉強しているんでしょう?
Ben Cloward先生のDirection Masks - Shader Graph Basics - Episode 27を勉強しています。
ああ、思い出しました。Tri-planar Projectionを作成するための勉強をしているんです。
ここでは歪んでいる部分に黒いMaskをかける方法を勉強しています。
Tri-planar Projection - Shader Graph Basics - Episode 28 を勉強しています。
やっぱりそうでした。
ここでは歪みが生じないProjectionを作成しています。
簡単に説明すると、最初にx、y、z方向にそれぞれMaskして歪みを隠したProjectionを作成します。そしてそれらをLerpノードを使用して合成します。
更に繋ぎ目をBlendしています。
この例はProjectionの継ぎ目がSeamlessには見えません。
以下の例だとかなり良い感じにBlendされています。
Tri-planar Projection Improvements - Shader Graph Basics - Episode 29 を勉強しています。
ここでは、今度は上下左右があるTextureに対応したTriplaner Projectionを作成しています。
上下左右の逆転がなくなりました。
2.2 二月の勉強
Triplanar Projection Normal Maps - Shader Graph Basics - Episode 30 を勉強しました。
ここではProjectionに使用したTextureが使用するNormal Mapを正確にProjectする方法を勉強しています。
結果です。
手前がTri-planar Projectionで作成したものです。奥はProjectionではなく普通にTextureをはった場合です。
Projectionで作成したにも関わらず影の付き方が奥の普通にTextureを貼った場合と同じになっています。
前週に勉強したTri-planar Projection Normal Maps - Shader Graph Basics - Episode 30の理屈が全く理解出来なかったので、それを検証しています。
訳わからずやっていたTexture Sampleからの変換部分は単にTangent SpaceからWorld Spaceの変換をしているだけだったと言う事がわかりました。
Tri-planar Projectionの復習とまとめを行っています。
この週もTri-planar Projectionの復習とまとめを行っています。
2.3 三月の勉強
この週もTri-planar Projectionの復習をおこなっていますが、Tri-planar Projection - Shader Graph Basics - Episode 28をもう一回勉強しています。
Tri-planar Projection Improvements - Shader Graph Basics - Episode 29 の復習をしています。
Tri-planar Projection Normal Maps - Shader Graph Basics - Episode 30 の復習をしています。
あんまりにも気合いが入っていて、とてもじゃないが今読む気にはなれません。
2.4 四月の勉強
まだ頑張ってTri-planar Projectionの理論を解明しようとしています。
最終的に、奥のSphereが私が復元したNormal MapのProjectionで、手前のSphereがBen先生が作成したNormal MapのProjectionです。
わたしのは色の変化が一定で境目がはっきり出てしまっています。
あの部分の実装はそう言う意味だったのか。とこの結果を見た時理解しましたが、ここでTri-planar Projectionの理論の解明はGive upしました。
そして今度はBen Cloward先生のToon Shader Paint - Shader Graph Basics - Episode 38 を勉強しています。
こんなのを作成しています。
Ben Cloward先生のToon Shader Ink Outlines - Shader Graph Basics - Episode 39 を勉強しました。
ここではOutlineを追加する3つの方法を勉強しました。
Ben Cloward先生のToon Shader Specular Highlights - Shader Graph Basics - Episode 40 を勉強しています。
Specular lightをToon Shadingに追加する方法について勉強しています。
Unreal CG 氏のToon Shader & Custom Shadow - UE4 Postprocess Tutorial を勉強しています。
これはPostprocessで作成されています。
この週は取りあえず全体をみてどんな実装をしているのかを軽く勉強しています。
2.5 五月の勉強
Toon Shader & Custom Shadow - UE4 Postprocess Tutorial の影の部分を実装しています。
こんな感じになりました。
後、Ben Cloward先生のUV Rotation - Shader Graph Basics - Episode 42も勉強しています。
これはInfinite Hex Grid Tiling Seriesの最初のTutorialです。
Toon Shader & Custom Shadow - UE4 Postprocess Tutorial の続きをやっています。
Characterの影を抜きました。
Outlineを追加しました。
Toon Shader & Custom Shadow - UE4 Postprocess Tutorialの続きをやっています。
Landscape用のMaterialを作成しています。
こんな感じになってました。
Toon Shader & Custom Shadow - UE4 Postprocess Tutorialの続きをやっています。
Foliage用の草のMaterialを作成しています。
更に、Rim Glow Effectを追加しています。
これで完成したんですが、何か投げっぱなしで終わっています。
Ben 先生の Infinite Hex Grid Tiling Series の2番目のTutorialであるMoving, Rotating, and Scaling UVs - Shader Graph Basics - Episode 43を勉強しています。
後、PPLineDrawingとToon Shader & Custom Shadow - UE4 Postprocess Tutorialを組み合わせたりしています。
2.6 六月の勉強
Ben 先生のInfinite Hex Grid Tiling Series の3番目のTutorialであるRandom UV Transforms - Shader Graph Basicsを勉強しています。
そしてPPLineDrawingのOutlineの実装について勉強しています。
Ben Cloward先生のInfinite Hex Grid Tiling Series の4番目のTutorialであるTexture Tile Break-up - Shader Graph Basics - Episode 45を勉強しています。
その後で、PPLineDrawingのOutlineの実装について勉強しています。
Ben Cloward先生のInfinite Hex Grid Tiling Series の5番目のTutorialであるProcedural Hex Grid - Shader Graph Basics - Episode 46を勉強しています。
その後でBasic Post-Processing Effects - Shader Graph Basics - Episode 49 を軽く勉強しています。
PPLineDrawingのOutlineの実装について勉強しています。
ここでPPLineDrawingなどの勉強は別枠でAnime Renderingとして勉強する事に決定しています。
Ben Cloward先生のInfinite Hex Grid Tiling Series の6番目のTutorialであるTexture Tiling Without Repetition - Shader Graph Basics - Episode 47を勉強しています。
2.7 七月の勉強
前週に完成したTexture Tiling Without Repetitionを使用して以下の実験を行っています。
以下の様なTextureが有った場合、
普通に使用すると以下の様なTilingが発生します。
これにTexture Tiling Without Repetitionを使用してTilingがどれくらい隠せるのかを実験しています。
結果です。
Tilingは全く見られなくなりました。
その後で、Ben Cloward先生のInfinite Hex Grid Tiling Series の7番目のTutorialであるHex Grid Normal Tiling - Shader Graph Basics - Episode 48を勉強しています。
これでInfinite Hex Grid Tiling Seriesの勉強が終わりました。
Basic Post-Processing Effects - Shader Graph Basics - Episode 49を勉強しています。
今度はPost-Processingの勉強です。
Fullscreen Masks - Shader Graph Basics - Episode 50を勉強してます。
2.8 八月の勉強
Blur and Sharpen Filter - Shader Graph Basics - Episode 51を勉強しています。
Underwater Post-Process Effect - Shader Graph Basics - Episode 52を勉強しています。
Underwater Post-Process Effect - Shader Graph Basics - Episode 52の続きを勉強しています。
最終結果だけ貼っておきます。
Rain On The Lens Post-Process Effect - Shader Graph Basics - Episode 53 を勉強しています。
後、Stylized Materials Packを検証しています。
こういう影を作成するMaterialです。
Rain On The Lens Post-Process Effect - Shader Graph Basics - Episode 53 の理論で意味が分からない箇所を検証しています。
Stylized Materials PackにPPLineDrawingを追加してみています。
これ凄くない?
こんなのも検証していたんですね。
2.9 九月の勉強
Rain On The Lens Post-Process Effect - Shader Graph Basics - Episode 53の理論で意味が分からない箇所をまだ検証しています。
その後でRain Drips On The Lens Post-Process Effect - Shader Graph Basics - Episode 54を勉強しています。
Rain Drips On The Lens Post-Process Effect - Shader Graph Basics - Episode 54の理論の分からない所を検証しています。
Radial Blur Post Processing - Shader Graph Basics - Episode 55を勉強しています。
2.10 十月の勉強
Bloom & Glow Post Process Effect - Shader Graph Basics - Episode 56を勉強しています。
Bloom & Glow Post Process Effect - Shader Graph Basics - Episode 56の続きを勉強しています。
結局、このPostprocessはUEで実装する方法は分からないまま終わってしまいました。
それはScreen 画面のLODにアクセスする方法がないからです。
でもUEでもScreen画面のLODは作成はしているはずだそうです。ただそれにAccess出来るNodeがないそうです。
これって、VRM4Uで勉強したCustomノードでDirectional Lightの値を得る方法が使えないでしょうかね。
出来そうな気はしています。
Post Process Cartoon Outlines - Shader Graph Basics - Episode 57を勉強しています。
その後でPP_LineDrawingのOutlineの実装方法と比較しています。
Toon Shader Ink Outlines - Shader Graph Basics - Episode 39の復習をしています。
その後でPost Process Action Lines - Shader Graph Basics - Episode 58を勉強しています。
このEffect、Pokémonの最新作でも見ました。
2.11 十一月の勉強
Noiseノードについて調べています。その過程で、Procedural Noise - UE4 Materials 101 - Episode 19を勉強しています。
この週もNoiseノードについて勉強しています。
このTutorial Seriesを勉強しています。
Snowy Tree Trunk Shader - UE4 Materials 101 - Episode 20を勉強しています。
Post Process VHS Filter - Shader Graph Basics - Episode 59の勉強をしています。
ここからVHS Filter SeriesのTutorialの勉強が始まります。
Post Process VHS Filter Part 2 - Shader Graph Basics - Episode 60を勉強しています。
2.12 十二月の勉強
Pixelation Filter - Shader Graph Basics - Episode 61を勉強しています。
Post Process VHS Filter Part 3 - Shader Graph Basics - Episode 62を勉強しています。
2.13 今年の勉強のまとめ
大体何を勉強したのか分かりました。
以下の4つのCategoryについて勉強していました。
- Tri-planar Projection
- Toon Shader
- Infinite Hex Grid Tiling
- Noiseノードについて
- Postprocess
そしてPostprocessに関しては
- Rain Drips On The Lens
- VHS Filter
- Blur関連
- その他
の勉強をしています。
Materialの勉強に関してはBen Cloward先生のTutorialをひたすら勉強し続けた方が成果が出る気がしています。ので慌てずに来年もこのまま勉強を続けます。
Toon Shadingに関しては自作したいのですが、それはAnime Renderingの処でやる事にします。
3.NPCのAIを作成
正直、これ今年に作成したのと驚いたんですが、やっていました。
村人が夜は消えるようにしています。
NPCが歩きを止めて止まった時に伸びをするAnimationを追加しています。
これを追加した事で色んなBugが発生していますが、一個ずつそのBugを直しています。
サイズが同倍でないNPCが伸びをした時に異常に腕が伸びるBugは来週に直すとして終わっています。
今まで4章でやっていたのにいきなり6章に代わっています。
NPCの腕が異常に伸びるBugは色々試したんですが、結局直せなかったので、NPCのサイズを等倍にする事で回避しました。
その後、全てのNPCが夜は消える事が出来る様に実装を変更しました。勿論、歩いてない時に伸びをするAnimationも追加しています。
全てのNPCに話しかけてキチンと会話出来るのか確認しています。
後、夜も徘徊するNPCを作成するためのIdeaを考えています。
Eventが発生した時に会話が変わるSystemについても述べています。
結構色々やっていますね。
Event自体が完成しないと、NPCのセリフも考える元が出来ないので、これ以上の開発はRPGの物語自体が完成してから。と言う事でここで一端終了になっています。
<まとめ>
こんな事をやっていたのすっかり忘れていました。
物語自体は完成しましたが、とてもじゃないがそれを実装する時間や能力はありません。
4.Game Design:ポケモン+HxHの念能力( 戦闘システムの作成)について
これは先に話をまとめておきます。
Gameの作り方が分かってくると、Gameを作る事と面白いGameを作る事は違うと言う事が分かってきました。
と言うか、つまらない要素をいくら組み合わせても面白くならないんです。面白いものは最初の単純な構造の時から面白いんです。
そこで、面白さって何だ!と考える様になりました。
まず、私が唯一、真剣に遊んだGameであるポケモンgoの面白さって、戦闘前の準備をする面白さだったな。と思いました。
強くて優れた技を持ったポケモンを集めるのが単純に面白かったんです。
次に、私が一番好きなマンガであるHxHの面白さって逆に戦闘中の面白さだな。と思いました。
HxHの戦闘は必ず二転三転します。どっちが勝つのか戦闘の途中では全く予測がつかないんです。これがHxHの面白さだと思いました。
ここでポケモンgoのような戦闘前の準備をする面白さを戦略的な面白さ、HxHのような戦闘中の面白さを戦術的な面白さと名付けました。
この2つの面白さを持ったGame を考えたら面白いだろうと単純に考えました。
その後で、そんなに上手く行かない事に直ぐ気が付いたんです。
もし戦闘中に二転三転するようなシステムを作成したら、そりゃ戦闘は面白くなります。
しかし戦闘前の準備はそんなにする必要が無くなってしまうんです。
逆にポケモンのように戦闘前の準備をしっかりする事を重要なシステムにすると、戦闘前の準備は楽しくなるんですが、戦闘が始まる前に勝負がついてしまいます。つまり戦闘が全く面白く無くなってしまうんです。
それで困ってしまったんです。
それでウンウン考えたら思いついたんです。
戦闘中の工夫で2倍位は強くなるシステムだったら、両方の面白さを取り込めるのではないのか。と。
それでどうしたら2倍位は強くなれるように出来るか。考えました。
そこで思いついたのはドラゴンクエストの魔法であるバイキルド?です。これなら2倍位までは強くなれます。
それで頭の中で戦闘を思い描いてみました。
敵が主人公が弱いと思って襲い掛かって来ます。そこで主人公が魔法を使って2倍の強さになります。そして敵をぶちのめします。
うーん。
確かに前よりは戦闘中の変化を楽しめるようにはなりましたが、そんなに面白いかと言えば普通です。
二転三転する感じはないです。
そしたら敵も魔法が使えるようにしたらどうかと考えました。
敵が主人公が弱いと思って襲い掛かって来ます。そこで主人公が魔法を使って2倍の強さに成ります。敵は驚きますが、主人公に金縛りの魔法を掛けます。主人公は動けなくなりました。絶体絶命です。
はい。
これだ。と思いました。これならポケモンのように戦闘前の準備をする面白さとHxHのような戦闘中の面白さを体現できるGame Systemになると思いました。
大体こんな流れになっています。
4.1 今年の進捗をまとめる
もうこの時点でとりあえず実装してみよう。となっていますね。
ぱっと読んだだけだと、この時点でどこまで実装出来ているのか分かりません。
GameのSystemも大分変っていて、Monsterのタイプをジャンケンで代用していています。
実際のGameのSystemまでは完成していませんが、一応最後まで作成しています。
Monsterを召喚する箇所の実装を作成しています。
Drag and DropでMonsterが召喚出来る様にしています。
ここでMonsterの召喚の実装が完成します。
後攻は、先攻が召喚したMonsterを見てから召喚するMonsterを決めれるので、必ずジャンケンに勝てるという、Bugを発見しました。
それを直しています。
召喚したMonsterが攻撃出来るようにしています。
召喚されたMonster達は敵味方関係なく自動で攻撃します。
どのMonsterがどのMonsterを攻撃したとか、全てのMonsterのHPがどれくらいなのかなどが分かるようにWidgetを改良しています。
対戦相手の召喚したMonsterが攻撃出来るようにしています。
Playerが操作する魔術師が戦闘で使用する魔法を選択するPhaseを作成しています。
取りあえず回復魔法だけ使用出来る様にしました。
この週は、この戦闘システムを一寸だけ変更した方が面白いのかどうかを見極める為、このGameをPlayする事にしました。
結論としては、このシステムで行く事になっています。
しかし敵の強さをStage1とかStage2とかに分けて調節するようにする事にしています。
その後で、戦闘力を2倍にする魔法を追加しています。
Stage 1とStage2を作成しています。
Stage 10まで作成しました。
Switch(右→中央)の魔法を実装しています。
これはMonsterの位置を戦闘中に交換する魔法です。
召喚されたMonsterの3d Modelが交換されないBugを直しています。
その後で実際にGameをPlayして確認しています。
あくまでもあまりGameをしない私の感想ですが、結構面白いと書いてありました。
後半のStageに登場するMonsterが弱すぎたのでそれを調整しています。
3回目の挑戦でStage10のMonsterを倒す事が出来ました。
そしたら存在しないStage11に突入するBugが発生しました。
直して終わりです。
ここで、このGameは面白いので磨けば必ず光る。と結論づけています。
今、見直すとここで、このまま製品化を目指した方が良かったです。
どこから直すかを検討しています。
結局、Monsterを召喚するためのWidgetを直す事にしています。
以下のようにしています。
カメラが以下に示した様なへんなRatioで撮影しています。
このBugを直しています。
これから改善する点について検証しています。
ここから迷走が始まります。
UIを直すのに、有名なUIを集めたサイトをみて勉強すると言っています。
今だから言えますが、はっきり言って無駄でした。
Game関連は特にそうかもしれませんが、どのレベルの人がどのレベルの人に対して教えているのかが曖昧なんです。
こんなの勉強する必要は全くなかったです。
というか勉強にすらならなかったです。
UIなんて自分で考えて作成すれば十分なんです。というか自分で考えて作成する以外にないんです。
その考える部分を教えてくれるなら勉強になりますが、そういうサイトは無かったです。
UIの勉強部分は全く役に立たなかったので、UIの勉強をしています。とだけ記録する事にします。
UIの勉強をしています。
UIの勉強をしています。
UIの勉強をしています。
ここでもUIの勉強をしています。
唯一、UIの勉強で学んだ報酬についてここで述べています。
今、見直して分かったんですが、一月の時点で自分で報酬も追加した方が良いと述べています。
つまりこれも必要のない勉強でした。
UIの勉強をしています。
ホントに今見るとバカらしいですが、Main MenuにはLoadボタンがあるからSave Systemを作成する必要があるとか書いています。
これは全くの逆でGameがあってそれを説明するためにUIは存在しているんです。UIにボタンがあるからその機能をGameに追加するんじゃないんです。
別にSave機能なんかなくて、Game Overになったら最初からやり直すGameだっていいんです。
本当にこの辺は馬鹿な事をしてしまいました。
Main Menuを一生懸命作成しています。
こんなのどれでも同じです。
UIはGameの中身を伝えるのが本質なのに、中身のないUIを作成しています。
本当に無駄な事をしてしまいました。
ここでもMain Menuを一生懸命作成しています。
ここでもMain Menuを一生懸命作成しています。
まだMain Menuを一生懸命作成しています。
今度は戦闘画面が始まる前の先攻後攻を決める画面の改善を始めています。
これは今までのUIの勉強と比較すると少しはマシですが、もっとやるべき事がありました。
先攻後攻を決める画面を以下のようにしました。
どちらかのカードを引きます。
先攻後攻が書かれています。
先攻後攻を決めるシステムをGameに組み込みました。
うん。この辺は一寸は仕事しているって感じです。
全部のUIの見た目を改善しています。
今度は最後までClearした時に表示されるUIを直しています。
今度は報酬システムの追加を考えています。
うーん。
しかも発想がせっかく報酬のUIを作成したんだから使用しないのは勿体ない。というNegative発想で動いています。
ここから報酬システムの研究となって報酬を追加するにはどうしたら良いのかと考え始めています。
これ自体は、重要な話かもしれませんが、UIを主に持ってきてしまったので、本末転倒になってしまっています。
既に完成したGameがあるのだからそれを仕上げるのが先です。次のGameで報酬については考えるべきでした。
今度は報酬システム用のLevelを作成すると言う話になってしまいました。
あー。
全部ズレて行ってしまった。
これじゃ、全く別のGameを作成するのと一緒です。そりゃ報酬が有った方が、Gameをやる気にはなるでしょう。しかし既にPlayして面白いんだから、それで完成させるべきなんですよ。
もう完全に別なGameを作成しています。
ここで鬼ごっこしたら楽しいとか書いています。
やっぱり総括は大切ですわ。
何でこれを勉強しているのか、とか何でこれを作成しているのかがはっきりします。
今度はこのLevelに配置したNPCと会話出来る様にDialogue Systemの勉強を始めています。
Dialogue System自体は大切な勉強ですが、それはこのGameの作成には全く関係ない事でした。しかしこの時はもう、当初の目的はすっかり忘れてしまっています。
Dialogue Systemの勉強をしています。
Dialogue Systemの勉強をしています。
Dialogue Systemの勉強をしています。
Dialogue Systemの勉強をしています。
Dialogue Systemの勉強をしています。
4.2 今年の進捗のまとめ
あー。
やってしまいました。本来の目的を忘れて、ブレにブレて全然違う事を次々に初めてしまっています。
これはやってはいけない見本のような失敗です。
しかし恐ろしいのは、今見直すまで、Dialogue Systemの勉強は要らない。と言う事実に気が付かなかった事です。
直前まで、来年はどうやってDialogue Systemを勉強しようか真剣に考えていました。
5月からずっと空回りしています。
本来なら、
- 5月: Levelの改良
- 6月: MonsterのAnimationの追加
- 7月: Effectの追加
- 8月: 音楽の追加
- 9月: UIの改善
- 10月: Bug出しとBugの直し
- 11月: PackagingとBug出し
- 12月: 最終的な調整と製品化
で今の時点で完成していたはずです。
うーん。
やってしまった。
何でこうなったのかを考えるとUIのサイトを見て、うんこをダイヤモンドと勘違いしたからです。
そこから恐ろしい失敗のスパイラルが始まりました。
偽預言者についていってしまった子羊のようです。
二度とこんな失敗はしたくありません。
まあ今回は総括をしたから、間違いに気が付きましたので良かったです。やった内容を記録に残しておくのは大切です。
5.RPGのストーリーを作成する
そうです。RPGには粗筋があります。それを考える必要があって2022-01-10のBlogから既にそれを考え始めています。
ここでは隠れたテーマについて考察しています。
隠れたテーマは「良識に反しているけど世の真実を表していないといけない」と断じています。
ここで2つの結論を出しています。
- もっと身近な話にしないとUserは興味をしめさない。
- 完全オリジナルで作成しても注目を浴びる事は出来ないから、銀河鉄道の夜の続きにした方が良い
結論から言うとこれは完全な失敗でした。
完全オリジナルでも私が作った話は面白いです。私が後から読んでも面白いです。ここは自信を持って自分の才能を信じるべきでした。
後、どうせ真似るならSherlock Holmesとかにすれば良かったです。
この週からPrologueの作成として、小学5年生の少年がおばあちゃんの家に行って...云々という話を紙芝居で説明するPrologueを作成し始めています。
これは結局は没にしてしまうので無駄でした。
Prologueを作成しています。
Prologueの続きを作成しています。
Prologueの続きを作成しています。
Prologueの続きを作成しています。
更に以下のAssetを銀河鉄道として使用出来ないか検討しています。
Prologueの続きを作成しています。
更に電車のAssetを自分で組み立てています。
完成したPrologueがまるでPower pointみたいなので色々工夫しています。
やっとここで作成したPrologueが使用に耐えられない質の低いものである事に気が付きます。
2か月無駄にしました。
でも2か月で気が付けたので、まあ良かったです。
前に作成したPrologueで、赤い魔女が、Playerに金の切符を探してくださいと頼んでいるだけのPrologueで十分という結論になりました。
この後、NPCの生成に関するBugを発見してそれを直しています。
この週は、どうやってStoryを作成するのか悩んで、GameをずっとPlayする事にしています。
これって結構良いIdeaだと思います。
その世界に浸る事で、無意識にその世界観にあった物語が思い付くからです。
GameをPlayしていたら、Bugが沢山見つかってそれを直しています。
もうStoryの事は忘れてBug出しとその直しをずっとやっています。
Bugの直しをしています。
やっとここでBugの直しは別な章を作成してそちらでやる事として、Storyの作成に戻ります。
良かった。
ここで何でSpy x Familyは面白いのかと考察しています。その結果、魅力的なキャラが登場するからと結論づけています。
ここから神懸っているんですが、だったら7つの大罪とか、それに対して12使徒とかを出したらいいじゃないか。と閃きました。
そして今のStoryの粗筋を完成させています。
今のStoryとは細部が変化していますが、今読んでも非常に面白いです。
Storyの推敲をしています。
12使徒の名前や7大天使の名前を調査しています。
推敲の続きをしています。
それぞれの世界や村の名前を考えています。
今までのStoryを整理し直しています。
最初の村のStoryを細かく作成しています。
更にEventを追加してStoryが進むようにしています。
物語で重要な個所の名前には色を含ませる事にしました。赤い帽子の魔女とか、森と泉の青の世界とかです。
序章のあらすじもしっかり決められました。
ここでは第一章のあらすじを考えています。
第4章までのあらすじを書いています。
Story上では主人公と結婚する事に成る琥珀姫のキャラが全く立っていないのでその改善策を考えています。
更にどこでどの情報をUserに教えるのかについても検証しています。
ここまでしっかりと話が出来ているのにまた、何かの権威に頼ろうとして、どこかのサイトの情報を鵜呑みにして真似ています。
でも流石に、昔読書が趣味だっただけ合ってすぐに嘘に気が付きました。
そして今度は繁盛するラーメン屋の話を持ってきて、それを真似ています。
ここでStoryは一応完成と言う事になっています。
ここからはこのStoryをEventと言う形で実装する事になります。
<まとめと感想>
粗筋としては百点満点です。
細かい点は後で直す必要が出て来るでしょうが、これ完成したらかなりの名作に成る事間違いなしです。
Prologueの作成に関しては完全に時間を無駄にした失敗です。
ここは反省する必要があると思いました。
6.RPGのEventの作成
RPGのStoryが完成したので、ここからはEventの作成をおこなっています。
6.1 それぞれの週の作業内容
何から作成すべきなのかまだ良く分かってないのでEventが発生した時のWidgetを作成しています。
何と、その後からセリフのオカシイ所を直し始めて、Event自体を実装するのは、この週からです。
Map1に初めて来た時にEventが発動します。
前週に実装したEventのBug出しをしています。
Eventを完了した時に表示されるWidgetの作成をしています。
3つ実装する方法を考えています。
それぞれの方法で実装した場合の長所と短所を別なProjectに実装して調べています。
Event終了のWidgetを表示する実装を作成しました。
このEventは武器を手に入れた時に表示されるのですが、ここでは武器屋で武器を買った時のみ表示されるように実装されています。
武器を拾った時にEvent完了を知らせるWidgetを表示するための実装を追加しました。
ここでEventの作成は終わっています。
これは作成している途中で、余りにもBugが多いので、全部完成させた後で、Bugを修正するのは不可能と判断し、目標を最初の序章だけ完成させる事に変更したからです。
6.2 Eventまとめ
私の考える優れたRPGと言うのは、優れた物語である必要があります。
それは小説と同じです。
それを一本道だ。と批判する人達がいますが、それが嫌な人はPlayしなければ良いだけです。
小説ではそれぞれの章で、小さな事件が起こります。RPGにおいてそれに対応するのがEventです。
だからEventと言うのはRPGの作成においてとても重要なんです。
しかしUEのTutorialでRPGのEventの作成方法というTutorialは見た事ないです。
UEのTutorial Eventで検索すると、Event DispatcherについてのTutorialはずらっと表示されますが、RPGのEventの作成方法のTutorialは一個も表示されません。
これは、はっきり言えば、UEのTutorialを作成している人達は、一個もGameを作成した事がないから、本当にGameを作成するのにどんな実装が必要なのか知らないからなんです。
やっぱり実際にGameを作成するのは絶対必要です。
本当に必要な実装とそうでない実装について知る事が出来るからです。
ここで、取りあえずPackagingして完成させてしまおう。と言う事になりました。
のでこの後はPackagingについてやる事になりました。
7.Packagingについて
PackagingもGameの製品化については最も重要な部分です。
しかしこの点について詳しい解説をしているUEのTutorialはほとんどありません。
その理由は、
- Tutorialを見る人達はいずれGameを作成するのをあきらめるので、Packagingについて解説する必要があんまりないからなのか、
- そもそもTutorialを作成する人達がPackagingについて知らないのか
のどっちなのかは分かりません。
多分両方の理由でしょう。
7.1それぞれの週の作業内容
ProjectのPackagingについて調べています。
Gameを作成する時は、Assetをそのまま追加しますが、そのうちの90%は使用していません。これを外してPackagingしたいんですが、その方法がわからないので調べています。
Packagingするに当たって今のProjectのCopyを作成しておくことにしました。
Copyするのは簡単ですが、CopyしたProjectには別な名前を指名する必要があります。
その方法について調べています。
C++が使用されているProjectで、ProjectをCopyして別なProject名を付ける方法を調べています。
別なTutorialでC++が使用されているProjectで、ProjectをCopyして別なProject名を付ける方法を勉強しています。
実際にこの方法でCopyして別なProject名を付けてみました。
Errorが生じてそこから先に進みません。
VSからProjectのBuildは出来るんですが、その後に実行を押してUEのEditorを開こうとするとErrorになります。
Errorの原因を探っていますが、分かりませんでした。
Errorの原因を調査しています。
もうProjectの名前の変更は諦めてこのままPackagingする事にしました。
実際にPackagingをしています。
Packagingそのものは成功しました。
ただし、
- Cameraの位置がおかしい時がある。
- 戦闘が始まらない。
などのErrorが発生しました。
うーん。
これは直すのは大変です。
これで終わりです。
7.2 Packagingについてのまとめ
まずC++を含むProjectのPackaging方法がBPだけのPackagingと同じで良いのかが分かりません。
後、Packagingに関しては今の10倍位、気にする必要がありました。
今、ここで気にし始めても遅すぎました。
新しくUE5でRPGを作成する時にもっと気にする事にします。
8.UE5:naniteの勉強
これは特に記録する事はないので勉強した週だけ記録しておきます。
この時はまだ、Windows8.1でもNaniteが動いたんです。
この間もOpen Worldの勉強でちょくちょくNaniteの勉強はしていましたが、ここでDirectX 12を使用しないとNaniteが動かなくなった事を知ります。
残りはOpen Worldの勉強の中で勉強しているのでそっちでまとまる事にします。
<Nanite勉強のまとめと感想>
よく公式のDocumentを読むのが理解する一番の近道みたく言う人がいますが、Naniteに関しては公式のDocumentはNaniteの基礎を理解した人がその知識を広げたり、もっと正確にするために読むものでした。
私はこれを、Naniteを全く知らない状態で読んだので、Naniteを理解するのにえらく遠回りする事になりました。
9.Open Worldの勉強
UE5のWorld Partitionを使用して巨大なOpen Worldの作成方法を勉強する。と言う目的で始めました。
これはやり方は現時点で100%分かっています。
単に分かっているだけじゃなくて、恐らくUE5で使用するに当たって最適なやり方が判明しています。
ただし実際に作成するためにはGaeaの有料版を買う必要があるので、そこで作業が止まっています。流石にOpen Worldの作成だけのためにGaeaを買うのは勿体ないので、無料版でも作成できる1km^2のLandscapeを16枚作成する事で代用するかサイズを400倍にするとかで対応しようかなと考えています。
9.1 それぞれの週の作業内容
初めてOpen Worldについて勉強しています。何もしらないでWorld Machineについて調べたりしています。
World Machineは有料版を買わないと商業利用出来ない事も知らないです。
後、World MachineはTutorialが滅茶苦茶不親切です。
Open Worldの勉強は、もう習慣になってしまって何時頃から始めたのは覚えていなかったんですが、まさかこんなに早い段階で始めていたんですね。驚きです。
World Machineの勉強を始めていますね。
まだこの時はWorld Compositionの勉強とかもしていますね。
なんとLandscape用のMaterialの作成方法について勉強しています。
今なら目瞑っても作成出来ますが、この時はほとんど素人でした。
これ公式のTutorialのやり方で、Foliageの草を配置していますが、このやり方でやるとCollisionしないはずです。
勿論、この時の私はそんな事まで考える余裕はないです。
World Machineの勉強もしていますね。
Layer Blendノードについて勉強しています。
うーん。
十カ月前はまだこのレベルだったのか。
正直、たった十カ月でOpen Worldを作成するために必要な技術を身に付けました。
この成長は凄いです。
World Machineの勉強もしています。
ここで公式のDocumentにある別なTutorialを勉強しています。
このやり方でもFoliageで生成した木はCollisionがありません。
World Machineの勉強もしています。
これ勉強はしているんですが、公式のTutorialが不親切過ぎて全く理解していません。Gaeaとは大違いです。
ここで指定したLayer上にだけFoliageを使用して木を生成するにもかかわらず、生成された木にCollisionを追加する方法を始めて勉強します。
これは値千金の知識になりました。
突然、A Boy and His Kiteを見てWorld Compositionについて勉強しています。
この辺から16km^2のOpen Worldの作成を考え始めていますね。
World Machineの勉強も結構しています。
こうやって見るとWorld MachineとGaeaって結構違いますね。
この時、一辺が16㎞なのか全体で16km^2なのかが、自分の頭の中で整理出来てなくて文章毎に、16㎞っていったり16km^2って言ったりしています。
この時はまだWorld Compositionで作成するつもりになっています。
World Machineの勉強もしていますね。
この時、初めてKlaus氏のTutorialを知ります。ここで私のOpen Worldの勉強は一気に進む事になりました。
更にKlaus氏がGaeaのTutorialも作成してくれていて、World Machineの勉強は止めてGaeaで勉強する事になりました。
まだWorld Compositionにこだわっています。
World Machineの勉強は止めて、Gaeaの勉強に切り替えています。新たにGaeaの勉強の章が出来ています。
ここでSmartPoly氏のTutorialの間違いを発見しています。
後、Height Map一枚のサイズが1009x1009 pixelである必要とかも分かりました。
PluginのLandmassを試しに使用しています。
PluginのLandmassを勉強しています。
更にVirtual Textureについて勉強を始めました。
Virtual Textureについての勉強の続きです。
Virtual Textureの使用方法は今は完全に理解していますが、ここで勉強していたんですね。
Virtual Textureについての勉強の続きです。
Virtual Textureの使用方法については大体理解したのですが、抜けがないか、他のVirtual TextureのTutorialもみて確認しています。
公式のVirtual TextureのTutorialが何をやりたいのか、全く理解出来ないし、これで勉強してVirtual Textureの使用方法が理解出来るとも思えない。と書いています。
Virtual Textureについての勉強の続きです。
Virtual Textureで生じる歪みに対して、ある方法で改善出来ないか試しています。
結果から先に書くと出来ませんでした。
Virtual Textureで生じる歪みに対して、別な方法で改善しようとしています。
赤い丸で覆った部分が追加した部分です。
この週からWorld Partitionについて勉強しようと思ったんですが、何故かUnreal Sensei氏が作成したTutorialを勉強する事にしています。
まあLandscape作成の復習を兼ねてやっているんでしょうね。
Unreal Sensei氏が作成したTutorialの続きをやっています。
Unreal Sensei氏が作成したTutorialの続きをやっています。
ここで建物の作成方法について勉強したかったんですが、その部分は期待外れでした。
ここでOpen Worldの条件について再確認しています。
となっています。
Pointはこの複数枚のHeight Mapを作成する方法と複数枚のHeight MapをImportする方法を調べる必要が出て来た事です。
出来ちゃいました。
この辺は、何回もテストして試す必要がありそうです。
先週、作成したOpen WorldにWorld Partitionが本当に効いているのかを確認しています。
結論としては効いていました。
予定した大きさのOpen Worldの作成方法は判明したので、以下の内容を更に勉強する事にしています。
まずNaniteから勉強する事にしました。
ここで、NaniteがDirectX 12でしか動かなくなっている事を知ります。
それで建物の作成を勉強する事にしました。
Assetを見てどれを使用するか決めています。
以下の建物を作成しました。
ここでも結構危なくて、建物のTutorialを探しています。
最終的に自分で勝手に組み立てていますが、それが良かったです。
建物のTutorialなんて、UIのTutorialと同じでそんなものはないんです。あってもインチキです。
今年、私が痛い思いをして学んだ事は、Game製作のTutorialには嘘言っているヤツがそれなりにいる。って事です。
特にUIのデザインとか、建物の作成のような理論があってないようなものについてはかなりいい加減で、自分で勝手にやった方が断然上手く行きます。
建物は暖炉を追加して炎のParticleを追加してみました。
ここで新しいPCで作成し直す事にします。
新しいPCにUE5を入れてそこで作成し直しました。
夜に成っても火の光で明るいように、Lightを追加して調節しました。
BP上で新しく建物を作成する事にしました。
建物の続きを作成しています。
更にNaniteの勉強も復活させました。
階段に登れなくなるBugを直しました。
Naniteの勉強もしています。
明かりを追加しました。
NaniteはFoliageで使用出来るのか試しています。
Eventでドアが開くようします。
この週はTutorialを探して終わりました。
LandscapeをNaniteに出来るのか調べています。結論は出来ないです。
ドアの開閉を実装しました。
建物の回りに植物を植えてどんな感じか確認しました。
NaniteはCollisionを追加する方法を勉強しました。
<Open Worldのまとめと感想>
Open Worldの勉強は予定以上の進歩を修めました。
これは勉強に使用したTutorialの質が抜群に良かったからです。UIの勉強で残残な目にあったCaseとは真逆でした。Garbage In Garbage Outという言葉を久しぶりに思い出しました。
Gaeaの勉強が一段落して、好きなTerrainを自由に作成出来る様になったら、有料版を買って16㎞^2のLandscapeを作成します。
建物の作成は思っていたより時間が取られました。でも建物の作成に何が必要なのか分かったのでやってよかったです。
後、Houdiniで建物を作成する方法を勉強した方が良い気がしています。いや勉強までは行かなくても、どんな建物がどれくらいの時間で作成出来るのか位は知っておくべきだと思いました。
UE5のデモで使用されているNYCの建物はHoudiniを使用して2週間で完成させたという話を聞いた事があります。
10.雪山の作成
これは、先程のOpen Worldの中で勉強していたんですが、いつの間にか別な章としてやる事になっていました。
この辺はまだOpen Worldの勉強と同じような事をしています。
雪山のLandscape用のMaterialを検証しています。
Assetにあった雪山用のMaterialを使用して取りあえずLandscapeを作成しています。
雪山用のMaterialにMacro Variationを追加しました。
Distance Blendを追加しました。
Tilingが消えました。
複数のTextureを混ぜてMaterialに変化をつける方法を実装しています。
崖の部分のMaterialの作成をしています。
更にFoliageで雪玉などを追加しました。
Gaeaで作成したLandscapeで作り直しています。
結果です。
雪のEffectを追加しています。
足跡のEffectの追加の方法について調べています。
足跡のEffectの追加するためのTutorialを勉強しています。
足跡のEffectの追加するためのTutorialを実装した結果です。
これは足跡は付きましたが、雪が凹んだりはしていません。
歩いたときに、雪を凹ませるTutorialを探しています。
以下の実装を完成させました。
以下の様な実装も作成してみました。
正直、これだけ出来れば十分でしょう。
前の週の続きです。
曇りの空を作成するための方法について調べています。
以下のようには出来ましたが、それ以上の雲を追加する方法は分からなかったです。
ここで空の作成方法をしっかり理解する必要があると空の作成方法の勉強を始めています。
まあ、雪山の作成方法は大体理解したので、それも良いでしょう。
Volumetric Cloudで空に雲を追加した方が良いかもしれないと結論づけていました。
Volumetric CloudのMaterialの作成方法について勉強しています。
ここから2022-12-12までずっとVolumetric Cloudの勉強になります。Volumetric Cloudの勉強についてはここでまとめ直す必要を感じませんので、Skipします。
<雪山の作成に関するまとめと感想>
勉強内容とその成果に関しては悪くないです。Volumetric Cloudの勉強はもう少し掛かるので雪山は別に作成する事にした方が良いかもしれません。
11.Anime Renderingの勉強
これがまあUEの勉強している最終目標なんですが、UEでAnime風のRenderingを実装したいわけです。
そのための勉強を少しだけ始めました。
取りあえず以下の3つの勉強を始めました。
これ2022-12-12までほとんど同じ内容でずっと勉強しているのでここに一つ一つの内容を上げるのは止めます。
<Anime Renderingの勉強のまとめ>
アニメ風のRenderingは日本が世界のTopを走っている分野ですが、そのやり方がNet上で紹介された事はほとんどないです。
まあ日本の会社にしたら何で、会社の技術を公開しなければならないのか、と思っていると思います。それはそれで正しいので、まあ仕方ないです。
UEの勉強を始めたばかりの時は、アニメ風のRenderingのやり方を英語圏に教えたら億万長者だ。と思っていましたが、日本語で探してもアニメ風のRenderingのやり方を教えている所はどこにもなかったです。
今回、学んだことを簡単にまとめますと、
- PostprocessによるOutlineの形成にはScene DepthとWorld Normalを使用します。
- Custom Nodeを使用すれば、MaterialでDirectional Lightの情報を得る事が出来ます。
- 法線転写について
この3つだけです。
これは、コツコツ自分で勉強していくしかありませんね。
12. Gaeaの勉強
Gaeaの勉強は、最初はOpen Worldの作成から始まったんですが、かなり成果の見られた部分です。
最初はWorld MachineでLandscapeを作成しようとWorld Machineの勉強をしていました。
途中でGaeaの方が良いTutorialがあるのでGaeaに変更しました。
そこから爆速でLandscape作成ソフトの使用方法を理解するようになり、現在にいたります。
12.1 World Machineの勉強
この週でWorld MachineのようなTerrainを専用で作成するSoftが、Photo-RealisticなLandscapeの作成に絶対必要である事を知ります。
一応、名前だけは前から知っていたんですが、そんなに違いはないだろうと、あまり気に留めていませんでした。
World MachineをInstallしています。
Qtを使用していて動的にLinkしています。まるで素人が作成したSoftみたい。と書いています。
これはGaeaを見た時も同じ印象を受けました。
World MachineのUser Guideを勉強しています。
User Guideの勉強の続きをしています。
User Guideの勉強の続きをしています。
ここでUser Guideは有料版の説明しかしていなくて、私が使用している無料版には無い機能の説明を始めます。
ここで、訳わからなくなりました。
ここでWorld Machineの勉強は止めようか迷っています。
が続ける事にしました。
User Guideの勉強の続きを勉強しています。
以下の様なTerrainを作成しています。
今、こうやって見直すとWorld MachineとGaeaのTerrainの作成方法って全然違いますね。
今まで勉強した内容の復習をしています。
12.2 Gaeaの勉強
Gaeaの無料版は商業利用して良い事をしり、Gaeaの勉強に切り替える事にします。
Klaus氏のTutorialで勉強していますが、このTutorialは何を言っているのか良く分からないと不満を言っています。
最終的にKlaus氏のTutorialのお陰で1009x1009 pixelのHeight Mapを複数使用した16㎞^2のLandscapeの作成方法を理解する事が出来るんですが、ここでは文句ブータレています。
ここから2022-12-12までずっとGaeaの勉強をしています。
12.3 Gaeaの勉強のまとめと感想
Gaeaの使い方はまだ半分ぐらいしか理解していないですが、半分も理解したらそれなりのTerrainが作成出来る事が分かりました。
このままGaeaの使用方法を覚えてGaeaでLandscapeを作成し続けるのが一つの選択です。
もう一つの選択はHoudiniの勉強をする事です。
Open Worldの勉強で建物を作成しましたが、結構手間暇が掛かりました。
Epic Game社の人達はNYCのデモを作成するにあたり。Houdiniで2週間でNYCの建物を全部生成したらしいです。
それは勉強した方が特な気がします。
勉強しないまでもHoudiniがどんな事が出来るのかは知っておくべきだと思いました。
13 その他
その他にやった事としてBlenderの勉強と制作中のRPGのBugの直しがあります。
Blenderの勉強に関しては、まあ少しはObjectが作成出来る様になったぐらいです。ので特別にまとめる事もないと思い省略しました。
RPGのBug出しは、これはBugを見つけたら直す。という物で何か理論がある訳では無いので、これも省略しました。
14.DirectX 12の勉強
今年はこれはまあ試しでやっています。
実際まだ、Windowの作成までしかやっていません。DirectX 12の勉強は始まっていない状態です。
来年からは本格的にやるようにします。
15.まとめと感想
今年は以下の内容について勉強しました。
- NiagaraとMaterialの勉強
- RPGの作成
- NPCのAIの改良
- Eventの作成
- Storyの作成
- Packagingについて
- その他(Bugの直し)
- 戦闘システムの作成
- Open Worldの作成
- Gaeaの勉強
- 雪山の作成
- Volumetric Cloudの勉強
- Naniteの勉強
- 建物の作成
- Anime Renderingの勉強
- DirectX 12の勉強
MaterialとNiagaraの勉強は筋トレみたいなものなので、そう言う意味では効果はきちんと出ています。来年もこれは続けます。
RPGの作成はもう3年位続けていますが、一向に終わる気配が見えません。
UE4.24 で作り始めたんですが、UE5になってしまいまいした。
これはまだGameの仕組みがどうなっているのか分かってない時に、手探りの状態で始めました。
以下の教科書に書かれている内容をそのまま作成して、その足りない部分を追加して完成させる予定でした。
しかし足しても足しても足りない部分が出て来ます。
更にPackagingを試したところ、沢山のBugが存在する事が判明しました。
色々考えましたが、一端、この作業は中止する事にします。このままズルズルやっていても何の益も生み出しません。
そしてUE5で一から作成し直す事にします。
まずGaeaでTerrainを作成してLandscapeだけのGameを完成させます。
何もする事は無いです。
単にLandscape内を移動するだけのGameです。
その代り、Landscapeに関してはAAA Gameと同じ位の質の高いものを作成します。Gaeaと今までのLandscapeのMaterialの勉強を活用すれば、それは可能なはずです。
来年はこれをまず完成させます。
PokémonとHxHの面白さを併せ持つ戦闘システムの作成は、4月から迷走を始めて今に至ってしまった事が判明しました。これも来年完成させます。
Anime Renderingの勉強は取りあえず休止します。優先順位の関係で結果が早く出るものを来年は優先したいですので。
DirectX 12の勉強はまだ始めたばっかりで今止めるわけにはいきません。継続します。
となると来年のUEの勉強の計画は
の4本立てで行く事になりました。
もう少し休みの間に構想を練りますが基本はこれで行きます。
年末、年始はお休みします。ので次のblogは1月15日(予定)になります。
参照(Reference)
[1] Fortnite Video Game Maker Epic Games to Pay More Than Half a Billion Dollars over FTC Allegations of Privacy Violations and Unwanted Charges. (2022, December 19). Federal Trade Commission. https://www.ftc.gov/news-events/news/press-releases/2022/12/fortnite-video-game-maker-epic-games-pay-more-half-billion-dollars-over-ftc-allegations