今日の新作アセット
- Arbor 3: FSM & BT Graph Editor
- 日本作家さんによる、和製ビジュアルスクリプティングの新型!
- キャラクターの人工知能やシーン遷移が作りやすくなり、動画と日本語で丁寧に解説されたドキュメントが頼もしい。
- $37.80 【リリース日】2018年3月9日
お知らせ
今回は「Arbor 3の無料試用版を試してみた」特集記事です!
Arborの知識ほぼゼロの状態からスタートして即興ラーニングで覚えました。
イベント情報
Unity Plusに契約で3大特典イベントでしっかり日本語翻訳されたページを発見!
どうやらPlusに契約した方は、20%OFFの特典が1年間継続するようなコメントが・・・。
これ本当!?凄すぎる。
--------------
---------------
1年以内に公式セールと被るような状況になったら、20%OFF+??%OFFで激安になりそう。
Arbor 3: FSM & BT Graph Editor
エディタ拡張/ビジュアルスクリプティング
$37.80 【リリース日】2018年3月9日
アップグレード $16.20
日本作家さんによる、おそらく唯一のビジュアルスクリプティング。
Arbor 2から3へメジャーアップグレードした、新作アセットです。
Arbor 3.0.0 リリースhttps://t.co/VmZEBWIMOl
— ケットシーウェア (@caitsithware) 2018年3月9日
ビヘイビアツリーやグラフの階層化などに対応したアップグレードバージョンをリリースしました。#unity3d #assetstore #Arbor3 pic.twitter.com/2FQ503XmIu
v3から「ビヘイビアツリー」と「グラフの階層化」に対応したのが大きな変化です。
ビヘイビアツリー
ゲームのキャラクターの人工知能によく使われるタイプのツリー型のノード
画面の一部のみで分かりづらいですが、左から右の順に処理されます。
VSの大人気アセット「Behavior Designer($86.40)」がこのタイプです。
VS:ビジュアルスクリプティングの省略
一般的なプログラミングでもシーケンス制御でAIやバトルの流れが書かれます。
グラフの階層化
お馴染みのPlaymakerと同じFSMに「階層構造」が付きました。
こちらは「New State」から始まって、矢印の方向へ進むフローチャートに近い内容。
アクションステート、演算ノード、常駐ステート、グループの作成。
「Arbor 2」時代はこのFSMのみだったそうです。
階層構造について
↓(例)ビヘイビアツリーの親に、ステートマシンの子が付いた状態。
行き来も非常に手軽です。
エディタ画面の変化
以前よりスタイリッシュなGUIになりました。
Arbor 3の注目ポイント
Arbor 3の一番の安心ポイントが「日本語対応したエディタ」であることです。
例えば「このアクションはどのような効果があるのだろうか?」と疑問があれば、
「?」アイコンをクリック。
すると、わかりやすく解説された日本語サイトにジャンプできます。
↓ジャンプしてみると・・・
出典:OnTriggerEnterTransition — Arbor リファレンス 3.0.1 ドキュメント
パラメータの挙動がわかりやすく解説されたリファレンスが本当に頼もしい。
この機能めちゃくちゃ便利。
無料お試し版をやってみました
ここからが本題です。無料試用版を使ってみました。
ダウンロードサイトはコチラ↓
購入前にガッツリ試せるのはありがたいですね。
ケットシーウェアさんに感謝です。
試用版の制限内容
1.DLL
コアの処理はDLL化しているため編集できません。
2.実行時の制限
ゲーム開始後2分経過で状態遷移が無効化。
ゲーム画面に「Arbor2 Trial」の表示。
(Unityエディタ上での実行は制限なくご利用いただけます)
3.Arbor Editorウィンドウ
Open Asset Storeボタン表示。
一番重要なのが「ゲーム開始後2分経過で状態遷移が無効化」です。
試用していて「あれ?動かないぞ」と思ったら2分経過も疑うと良いでしょう。
サンプルシーンを試そう
1〜12までの大ボリューム!
マウスをシンプルな
Example 1
キー、マウス操作などインプット系、タイマー、Spawnなど、
インプットとアウトプットに関する基本的なサンプル。
Example 2(ParameterContainer)
パラメータを保管するParameter Containerの数値を制御するサンプル。
プログラミングの「変数」に関する制御。グローバル変数もあります。
Example 3(Animator)
画面クリックするとAnimatorにパラメータを渡して制御することができます。
Example 5(Agent)
NavMeshAgentでキャラクターを行動させるAgentのサンプル。
- 逃げる
- 追いかける
- 指定位置の周辺で逃げる
- 指定位置の周辺で追う
- 指定位置の周辺を巡回
- ウェイポイント(行き先が複数)を巡回
※FSMのみで動作しています。
Example 7(Coin Pusher)
「コインプッシャー」のサンプル。
左右に移動するメダルの発射口と、スペースキーでメダルを発射。
メダルのインスタンスが生成されて、下部のCubeまで落ちるとカウントされる。
※FSMのみで動作しています。
ここからが本題の「ビヘイビアツリー」
Example 12(BT Agent)
水色がプレイヤーで操作しているキャラクターです。
赤色に近づくと、「!」マークが表示されて見つかります。
「見つかりモード中はプレイヤーをひたすら追いかける」
距離が離れると見失って「?」が表示され、通常のパトロールモードに戻ります。
これを今までのFSMで組み立てると、スパゲティみたいにゴチャゴチャしてしまい、
どこで何が起きているか管理が難しいのです。
「!」や「?」が状態を表していて、状態毎に「〇〇になったら」が作れるのが、
ビヘイビアツリーの特徴です。
ビヘイビアツリーの内容
全貌を画像1枚にすると小さくて分かりづらいので動画にしました。
ノードの数値に注目!
番号順に制御される、とてもわかりやすい便利な目印です。
最上部のrootからスタートして、左から右へ順に制御されます。
例えばキャラクターとの距離が近くて条件に当てはまっていれば下へ進み、外れれば左から順にやり直しの流れになる状態遷移図です。
実行中のエディタ
黄色のになっているノードが、条件が成立していて今処理されている部分です。
リアルタイムにチカチカ変化するので、とてもわかりやすいです。
画面左には、番号順のリストが表示されいて、
どこが処理されているのか一目でチェックできます。
サンプルシーンに手を加えてみた
お待たせしました!ここからが「触ってみた編」です。
完成はこんな感じ。
敵に棒のようなモノを持たせて、プレイヤーにペシペシ攻撃してくる追加要素を作りました。
サンプルシーンでは接近したらループして止まってしまいますが、
攻撃可能範囲に入ったら、子の階層にあるFSMにお任せして攻撃モードに入ります。
プレイヤーに攻撃するFSM
Look at Game Objectでプレイヤーの方向を向いて、
Calc Animator Parameterで攻撃アニメを行います。
LookAtをキレイに動作させる方法が最初わからなくて、
普通に作ったらカクカクして気になる挙動でした。
攻撃モード中は常にプレイヤーの方向を向くだけで良かったので、
今思えば「常駐ステート」を使えばもっとシンプルに作れたかも・・・と思えた。
ここでのポイントは、Time Transitionの下に持って行くことと、
Apply Late Updateにチェックを入れることです。
余計だったノード
TweenでRotationかけてみたりしましたが、完全に不要でした。
↑かなり適当に組んだだけなので正常に作動しません。
プレイヤーのダメージ表現
プレイヤーはコライダーに衝突して、
マテリアルの色を変化させるアニメーションを再生しただけのもの。
完成までに感じた事
ビヘイビアツリーにアクションが全然無くて、これってどうやって作るんだろう?と悩んだ結果、細かいことはFSMで処理できることに気付く。
そこからLookAtで小一時間悩んで日本語ドキュメントに助けられて、
知識ゼロから1時間程度で実装することが出来ました。
このアセットはC#で拡張できることが特徴ですので、
プログラミング出来る方ならもっと自由度高く便利にカスタマイズできます。
これからArbor 3: FSM & BT Graph Editorを活用される方のヒントになれば幸いです。
サンプル画像
画像8枚 16秒で一周します。
アセット説明
このアセットは同時に利用する人数分のライセンスが必要です
Unity 5.4.0 以降のバージョンが必要Arborはシンプルかつ強力なステートマシンとビヘイビアツリーのグラフエディタです。
プログラマは自由にステートの挙動をコーディングできます。
デザイナーは挙動を組み合わせて直感的にゲームが作れます。
特徴:
・FSM & BTベースのビジュアルスクリプティング。
- 直感的に操作できるシンプルなエディタ
・MonoBehaviourと同様に拡張できるスクリプトに対応。
・ゲームロジックにあわせて自由に挙動をコーディングできます。
・ひとつのステートに複数のスクリプトを割り当て可能。
・演算ノードでノンスクリプトによる演算が可能。
・100個以上の組み込みBehaviour
・ソースコードは全てC#です。全てのソースコードが含まれています。
・日本語サポート可能
ドキュメント | チュートリアル | フォーラム | 無料試用版
パブリッシャーのアセット(記録用)
オマケ
Unity Plusに契約で3大特典イベント中の「Bolt($75.60)」と同じ開発スタイルだと思います。
(アンリアルエンジンのブループリントに近いかも)
Arbor 3の価格はかなりお手頃♫
Boltについての記事はこちら
【過去ログ】作者セール&注目アセット