【輪講】ブループリントクラスと変数/関数について

今回は輪講について私が研究した事を書いていきます。

C++を理解していてもこれがブループリントになるとわけわからん!って人多くないですか?
私もそうでした。

しかし理解してからはなるほど!って思う事が多いです。

UnrealEngine4でブループリントを使うにはどれがクラスでどれが関数なのか、
まず把握した方がいいと思います。

今回はみんなが使い慣れているcocos2d-xのプログラムと見比べながら解説していきます!

まずはブループリントクラスの作成!

Content内で右クリック→Blueprint Class→親クラスを選択

無題1無題2

ここで選択したクラスによって使用出来る関数(以下ノード)が変わります。
いわゆる継承です。

作成したブループリントを見てみましょう。
右上にParent Class 〇〇とあるはずです!

無題3

これをcocos2d-xで見ると、大体みんながよく使うのは『Layer』『Node』辺りでしょうか。

class ThirdPersonCharacter : public Character
{
  ~略~
}

こんな感じになります。

ある程度はUnrealEngine側で用意しているものを使っていけば出来ますが、
例えばデザインパターンを取り入れたい時には、ブループリントクラス作成時に自分の作成したクラスを選択するなどしましょう。

次に関数の作成です。

その前にまずは変数の説明をします。

無題4

Variablesの『+』マークをクリックして変数を作成します。

無題5

・Variable Name→変数名
・Variable Type→変数の型(左側のドロップダウンで型指定、右側にある9個に区切られた四角マークをクリックすると配列になる)
・Editable→インスタンス上で変数がパブリックで編集可能かどうか
・Tooltip→コメントみたいなもの
・Expose on Spawn→SpawnActorノードにピンが追加される
・Private→プライベートにする
・Expose to Matinee→マチネに公開する
・Category→ラベル毎に変数を設定する事が出来る
・Replication→ネットワーク上で複製するか否かを指定する

Default Valueでデフォルト値を設定出来ます。

例えばPrivateにチェックを入れてint型のScoreという変数を作成するとします。

cocos2d-xというかC++ではこうなります。

~略~
private:
    int Score;
~略~

次に関数の使い方を説明します。

無題6

Functionsの『+』マークをクリックします。

無題7

Description→関数の説明
Category→カテゴリ
Keywords→キーワード
Compact Node Title→演算子のオーバーロードのような使い方が出来る例『+=』といれる
Access Specifier→Public、Protected、Privateを設定する
Pure→チェックを付けると純粋関数になる
Const→チェックを付けるとconst関数になる

Inputsで引数、Outputsで戻り値の設定が出来ます。
Pass-by-Referenceにチェックを入れると参照渡しになります。

例としてスコアのGet関数を作ってみましょう!

無題8

cocos2d-xで書くと、

int GetScore2() const { return Score };

となります。

基本的な説明となりますが以上となります。

各親クラスを継承したクラスで何のノードが使えるかの説明は、
ノードの量が膨大すぎて説明出来ませんので各自で調べながらゲームを作ってみましょう!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です