KBTIT_1
(KBTIT_)
1
Unreal Engineのバージョン5.0.3でTPSのサンプルを作成。
そして「BP_ThirdPersonCharacter」のブループリントを開くと、以下のような処理があります(他にもプレイヤーの向きを変える、ジャンプする処理があるようですが、この質問とは関係ないので省略)
2種のインプットから入力を受け取り、AddMovementInputが呼ばれ、キャラクターが動くようです。
試しにインプットを削除したり、nodeを切断するとキャラクターが動かなくなったのでその点は間違いないかと思うのですが、
問題はAddMovementInputで、これをダブルクリックすると「C++Symbleを読み込み中」とUEエディタの右下に表示されるのですが、
これはキャラクターが動くのはC++で定義されており、ブループリント内で処理が完結していない、ということなのでしょうか?
T_Sumisaki
(T_Sumisaki)
2
問題はAddMovementInputで、これをダブルクリックすると「C++Symbleを読み込み中」とUEエディタの右下に表示されるのですが、
これはキャラクターが動くのはC++で定義されており、ブループリント内で処理が完結していない、ということなのでしょうか?
C++で定義されている、という意味ではその通りです
気にしているところがいまいち掴めませんが、UnrealEngineのBlueprintシステムは、C++で構築されたプログラムの上に成り立っています
最終的な挙動を実現しているのはC++で実装されたフレームワークの部分です
ゲームを構成するロジック部分はBPのみで完結できます
これは、フレームワークのルールを理解すれば、エンジンの内部挙動を気にすることなくゲームを作ることが可能である、という意味です
C++を使う(あるいは、エンジンの内部挙動まで手を入れる)予定がなければ、「このノードはこういう動きをする」程度の理解で問題ありません
UnrealEngineの使い方ではなく、UnrealEngineの内部挙動に興味があるのであれば、ぜひソースコードを追ってみてください
1 Like
KBTIT_1
(KBTIT_)
3
なるほど。ありがとうございます。
気になっていたのは、受け取った入力を元にこれ(BP_ThirdPersonCharacter)自体の座標を変更するような処理があると思っていたのですが、
その処理がBPで記述されていたかったため、少しでも複雑な処理をやろうとすると、結局C++に触れなければならないのか。という点でした。
しかし、「ゲームを構成するロジック部分はBPのみで完結できます」とのことであれば、その懸念がない様で安心しました。