学習ノート

学習者ゆえ、記事の内容は間違っていることもあります。ご了承ください。

視聴メモ「Blueprintをさわってみよう」(1)

今回のメモの範囲(Start ~ 1:15:10)


www.youtube.com

UE4(4.25.0)の初心者向け動画を視聴して、UE5(5.0.0早期アクセス)の学習をします

※ 全内容のメモではありません 学習者は元動画の視聴を強くお勧めします

※ 略記 UE = Unreal Engine , BP = Blueprint

 Agenda

 

1. Blueprntとは?

UEの代表的な機能である「ビジュアル スクリプティング システム」

UEはノードベースで実現

 

UEは非エンジニアでもモノ作りができる環境の実現を目指している

非エンジニアがエンジニアの手を借りずプロトタイプを作る

開発全体のスピードが上がる

 

このような経緯があるので、BPは見た目から難しく受け取られがちだが

実は文字ベースのプログラミングよりとっつきやすい

 

2. Blueprintの機能

Blueprint = アルゴリズム + パーツの組み合わせ

BPがベースになってレベルに配置するアクタが作られる

# Javaで例えるとBPがクラス、アクタがインスタンスのイメージかな

2.1. パーツの組み合わせ

UEではパーツのことをComponent(コンポーネント)と呼ぶ

UEでは3DCGのモデルのことをMesh(メッシュ)と呼ぶ

 

コンテンツブラウザからBPをダブルクリックして開く

コンポーネントパネルの追加ボタンをクリックすると

追加可能なコンポーネントの一覧が表示される

 

# 実作業

球形(Sphere)のMeshをThirdPersonCharacterに追加

SphereコンポーネントをMesh(CharacterMesh0)にドラッグ&ドロップして親子付け

Sphereコンポーネントの詳細パネルで

親ソケットを「head」、トランスフォームの位置、回転を「0.0」に設定

コンパイルしてプレイすると球形がグレイマンの頭に固定して追随する

⇒キャラクターに剣とか盾とかの装備を付けるのに使える

⇒Meshコンポーネントどうしを親子付けして親ソケットを設定

 

Character Movementコンポーネントはキャラクターの動きを管理する

走ったり、ジャンプしたりできるのはこのコンポーネントのおかげ

動きのアニメーションは管理外 他のシステムで管理している

 

コンポーネントはプロパティを持つ

詳細パネルからプロパティ値を変更することで、コンポーネントの挙動を調整できる

変更したプロパティは右側に矢印が付く

矢印をクリックするとデフォルト値に戻すことができる

 

レベルに配置したアクタを選択して個別にBPの値を変更できる

ひな形のBPアセットの値を変更する(デフォルト値の変更)すると

レベルに配置した全てのアクタ(インスタンス)の設定も変更される

ただしデフォルト値の変更は各アクタで個別に変更したプロパティには反映されない

 

逆に個別のアクタの設定をひな形のBPのデフォルト値にしたい場合は

詳細パネルの「このアクタのブループリントを編集」アイコンをクリックし

インスタンス変更をブループリントに適用」を選択

 

2.2. アルゴリズム

アルゴリズムの基本は、どんな時に、どんな処理を、どんな順番で実行するか

イベントグラフからアルゴリズムの編集が可能(ノードベース)

 

2.2.1. ノードの操作

イベントグラフでノードベースのプログラミンができる

イベントグラフを閉じてしまった場合は下記を選択して開くことができる

マイブループリント -> グラフ -> イベントグラフ ※通常の「ウィンドウ」からではないので注意

 

イベントグラフへのノード配置は右クリックして検索窓から目的のものを選択する

検索窓には配置してもエラーにならないノードが表示される

 

ノード同士をつなぐ線はリンク

ノード同士をつなぐポイントはピン

 

ノード同士は左クリックで線を引くようにしてピンをつなぐことでリンクできる

リンクはピンを右クリックして「すべてのピンリンクを削除」を選択するか

altキーを押しながらリンクをクリックすることで削除できる

リンクを削除して切り離されたノードを放置しておいても問題ない

  

イベントグラフ内のノードはctrl + Fで検索可能

 

2.2.2. ノードの整理

イベントグラフは複数枚用意することができる

マイブループリント -> グラフ -> +アイコン(新規グラフ)

 

ノードを複数選択して折りたたむことができる

ノードを複数選択 -> 右クリック -> ノードを折りたたむ

 

折りたたんだノードをダブルクリックすると折りたたんだ部分が

別のイベントグラフに表示される

 

折りたたんだノードを元に戻すこともできる

折りたたんだノードを選択 -> 右クリック -> ノードを展開する

 

関連するノードをひとまとめにしている白い背景のようなものはコメント

ノードと同様、イベントグラフを右クリックして「comment」で検索し

「Commentを追加」を選択する

 

コメントのショートカットはcキー

複数ノード選択した状態で利用すると便利

 

2.3. Unreal C++

従来のC++をUE向けに拡張したもの C++14ベース(17もサポート)

BPとの連携やエンジンのコア部分へのアクセス

 

非エンジニアにはハードルが高い

BPと比較すると試行錯誤の速さが落ちる

 

2.4. BlueprintとUnreal C++の使い分け

初心者はまずはBlueprintを使って慣れることが最重要

 

 Bluprint

  • 非エンジニアが触る部分
  • 試行錯誤の速さが求められる部分

 

 Unreal C++

 

BPの中身はC++なので、BPに慣れてくるとC++のイメージもついてくる

ただしUnreal C++の習得は必須ではない

 

BPとUnreal C++でプログラムの実行速度に差がでるケースもあるが

実際にパフォーマンスに影響あるケースで多いのはアルゴリズムの問題

BPのアルゴリズムを修正することでパフォーマンスが改善することが多い

「BP=遅い」というのは間違った認識