UE4の勉強記録

UE4の勉強の記録です。個人用です。

10章5節 コンディションのためにデコレイターを使う

<前文>

f:id:kazuhironagai77:20180902113251p:plain

で勉強しています。この章は完全に詐欺です。この章の勉強を始める前から薄々気が付いていましたが勉強を進めるうえで完全に確信しました。全くUnrealC++についての解説がありません。この本でUnrealC++を勉強している他の人に私ははっきり言えます。この章はスキップしていいです。私がこの章を勉強している理由は既にこの教科書でUnrealC++を勉強する他の人に10章が勉強するに値する何かが一個でもあった場合それを伝えるためだけになりました。

<本文>

<目的>

「10章5節 コンディションのためにデコレイターを使う」を勉強します。

<方法>

Step.0

前回使用したプロジェクトを使います。

Step.1

f:id:kazuhironagai77:20180918144802p:plain

まず、既にあるビヘイバーツリー、BehaviorTree_FFA_MelleAttackerを開きNew Decoratorをクリックして新しいデコレイターを作成しました。

f:id:kazuhironagai77:20180918144828p:plain

「BTDecorator_BlueprintBaseを基にそれを行います。」とありますが、BTDecorator_BlueprintBaseが何なのかが分かりません。取りあえずそこは無視します。

出来たデコレイターを開いて見ると、BTDecorator_BlueprintBase_Newと成っていました。BTDecorator_BlueprintBaseを基にこのデコレイターは作成されたようです。

f:id:kazuhironagai77:20180918144850p:plain

Step.2

f:id:kazuhironagai77:20180918144913p:plain

うーん。具体的に何をすればいいのか良く分かりません。取りあえずPerformConditionCheck関数を調べて見ましょう。このサイトにいかの記事を見つけました。

f:id:kazuhironagai77:20180918144930p:plain

何だか、可笑しな事になって来ました。デコレイターについて基本的な事を知らない私がここでこのレシピについて批評するのは避けるべきかもしれません。ただこのレシピを勉強するのはここで止めておきましょう。

<考察>

ウーン。どうしましょうか?このレシピでは、レシピの再現すら出来ないと言う事態になってしまいました。料理の本を買ってその中のレシピで再現出来ないものが載っている感じです。もうはっきりと切る時が来たと感じました。10章の勉強はここで終わりにします。10章とはここでお別れです。デコレイターについては、UE4C++とは別に勉強しなければならない項目でしょう。別の優れた教科書に出会えた時に改めて勉強しましょう。

10章に対するまとめ>

まず、10章には「UnrealC++についてではなく単にブループリントの使い方が載っているだけではないのか?」に対する解答ですが、残念ながらその通りでした。これは詐欺ですね。完全に読者を騙しています。ブループリントの使い方を勉強するためなら何もこの本を買う必要はありません。他にも沢山のUnrealの教科書やチュートリアルがあります。読む必要はありませんね。

その次に、「UnrealC++についての内容ではないがブループリントの教科書としてはこの章は読む価値があるのでは?」に対する解答ですが、読む価値はなかったです。ましては、色々推測してレシピを再現する価値は全くないです。載っている内容は、極めて一般的な内容です。さらにそれらに対する解説や説明も十分ではなく、ブループリントの教科書としても不十分でした。

この章は作者が違うような気がしますが、推測の域を出ませんし考えるのは止めておきます。駄目なものは駄目ですし。ただ一言、言える事は、この章の内容は大きくこの本の評価を下げる原因になりました。

10章は勉強する価値があるのか?>

10章を勉強する前から10章と11章はunrealC++についてのではなく、ただのブループリントについてではないのか?と思っていましたが、それでも10章の勉強をしてみました。結果的には10章の途中で止める事となりましたが、それでも私なりにかなりの労力を使ってこの章を勉強しました。その最大の理由は、ひょっとするとこの本に載っているくらいなので、UnrealC++ではなくても何か勉強しておかないと不便が生じる大切な内容があるのではないかと考えたからでした。つまり、10章はUnrealC++についての内容ではないが、勉強する価値がある。だった場合、大切な情報を得る機会を失ってしまう可能性があると考えたからでした。

しかし、10章にはそれ以前にもっと大きな問題がありました。

「「練習があなたを完璧にする。」は間違い。」は、(少なくとも優秀な人からは、)たまに聞く言葉です。練習がもたらすのは習慣であり、正しい習慣ならそれはあなたを正しくするが、間違った習慣ならあなたをもっと間違えた方向に導いてしまうからです。スポーツや音楽で練習を沢山したら下手になった経験を持つ人は沢山いるでしょう。それを指す格言めいたものです。この言葉の意味は正しい練習をしないと努力は無駄になるだけでなくあなたにマイナスの影響を与えると言う事です。

まさしく、これが私に確実に起きてしまいました。今までの1章から9章までの勉強で身についた習慣は、UnrealC++を理解する事に関して正しい方法に導いてくれましたが、10章の勉強は私を間違った方向にかなり強く引っ張ってくれました。10章を勉強する前は、勉強しなければ0、勉強をすれば少なくともx>0の何かを得られると考えていた私ですが、勉強をしたためにx<0のモノを得る結果に成ってしまいました。

私の10章に関する結論は、「10章は勉強してはいけない!」となりました。

11章は勉強しません>

次の週からは12章を勉強します。