読者です 読者をやめる 読者になる 読者になる

Unity AssetStoreまとめ

アセットストア日替わりタイムセールの記事を書いていきます。

FlowCanvas Visual Scripting プログラミング出来なくても「目で見て組み立てる」ビジュアルスクリプティング

f:id:assetsale:20160623230657j:plain f:id:assetsale:20160623230716j:plain

今日のアセット

FlowCanvas Visual Scripting

$65 => $40    38%OFF

 

敵のキャラクターのAIロジックを組み立る、大人気アセット「NodeCanvas」の作者が作った2015年4月リリースの準新作な「FlowCanvas Visual Scripting


 

まず、「ビジュアルスクリプティング(プログラミング)」とは?

 

ビジュアルプログラミング言語 - Wikipedia

ビジュアルプログラミング言語(英: visual programming language)とは、プログラムをテキストで記述するのではなく、視覚的なオブジェクトでプログラミングするプログラミング言語である。グラフィカルプログラミング言語とも言う。視覚表現でプログラミングが可能で、空間上でテキストやグラフィックシンボルを配置することでプログラムが形成される。

 

UnityはC#かUnityJavaを記述してコードを作成しますが、「ビジュアルプログラミング」では、機能別のアイコンをラインで繋げてゲームを組み立てます。

プロセスやアルゴリズムの「フローチャート」のようなイメージです。

 

私は他のアセットになりますが、敵のAI周りで同種のアセットを活用してます。

 

エディタ画面はこんな感じ

f:id:assetsale:20160622232505j:plain

 

FlowCanvas Visual Scriptingは「NodeCanvas」の開発経験を生かしリリース日から本日まで評価数44と勢いがあります。

同じ作者がリリースする、AI周りに強い「NodeCanvas」、ゲーム全体は「FlowCanvas Visual Scripting」でシームレスな合わせ技も可能だ!

 

アセット説明の「目玉機能」をまずは見てみましょう。

 

● 必要な機能を完備した、直感的なビジュアルノードエディターでの作業!
(取り消し/やり直し、ズームイン/ズームアウト、コピー/ペースト、複数選択、複製、コメント、グループ、JSONのインポート/エクスポートなど)
● 実行時にフローの処理と引数の転送を視覚的にデバッグ可能!
● 視覚的なスクリプティングを通してカスタマイズされたマクロノードを作成し、好きな場所で再利用したり他人と共有したりできます。
● 実行時にFlowScriptsをリアルタイムで変更できます。
● 最初から全ての変数を使用できます。
(クラス、構造体、列挙型、リスト、インターフェースなど…)
● 自動的に生成されるノードを、あらゆるUnity機能、自作コードや、サードパーティー製APIなどにお好みで使用できます。
● スマートで自動化された値の変換・キャストによって表現製の高いゲーム開発を進めることができます。
● ポートタイプを判別するコンテキストメニューによりノードをフィルタリングできます。
● UNETを利用して変数をネットワーク上で同期できます。
● Generic(T)ノードに対応したカスタムノードを簡単に作成・拡張できます!
● シームレスに統合されるNodeCanvas BehaviourTreesとFSMを活用できます!
● 他に類を見ない高パフォーマンス!アロケーションを行いません。
● 完全なC#ソースコードが付属!!

 

カスタムノードが作れるのは基本ですが、重要なポイントですね。

これさえあれば、自前スクリプトを追加してサッと呼び出せるのでとても便利♪

サードバーティー製のアセットでも自分で作れば対応させられます。

 

サンプル画像のスクリプトについて

 

ここからはサンプル画像の動作がどうなってるか、ノードを追いながら書き出しました。(間違ってたらごめんなさい)

f:id:assetsale:20160622232505j:plain

解説

└ボタン FIRE1を押した時にコンソールに"Hello World!"と表示するロジック。

1.左上のボタン「BUTTON FIRE1」がトリガー(スタートポイント)です。

このボタンを「Down」(おそらく Downは1度だけで、Pressedは押し続けている間)した時に、「Switch Condition」のInへ進む。

2.『Switch Condition』で値の判定。条件式(Condition)で$MyVariableの値が1であればTrueの『Log Text』へ進む。

3.『Log Text』コンソールに"Hello World!"と表示する。

 

f:id:assetsale:20160622232508j:plain

解説

└マウスでオブジェクトをクリックしてピックアップし、そのポイントへ移動するロジック

1.左側の『MOUSE PICK EVENT』がトリガーで、クリックイベントが走れば『Move To』へ行きます。「MOUSE PICK EVENT>Pick Info」→には『Extract Raycast Hit』への参照が走ります。

2.『Extract Raycast Hit』マウスクリックしたポイントとコリジョンが当たるか判定して、存在していればPointの値が右側の「Move To > Destination」に入ります。

3.「1」の続きで「Move To>Destination」はおそらくデフォルトは空。「2」の判定で何か入れば移動します。Speed値は既にある変数で右上に表示された「5」の値(速度)で移動します。

 

f:id:assetsale:20160623025321j:plain

解説

└ジョイスティックの入力でキャラ等を移動させるマクロ

1.左の『↓』アイコンがジョイスティックのキー割り当てらしきマクロ。

2.『Input.GetAxis』が「↓>XAxisName」と「↓>ZAxisName」を受け取り、『New Vector3>X,Z』へ代入します。(Yは高さなので入れない)「Value」で出力して『*』のAにセット。

3.一旦『↓』まで戻って、「Speed」これはマクロ(画面右下)に設定されたSpeedの変数の値。『*』のAに代入

4.画面中央の『*』では「Speed」とTime.deltaTimeを掛けることで、「Speed」が1秒あたりに動く値になります。(処理速度に影響されない)

5.画面少し右の『*』では「1」の入力から得たVector3の値と「Speed」を掛けて移動するベクトルになり『↑ >Movement』マクロへ値が送られます。

 

 

こんな人にオススメ

・Unreal Engineのブループリントに近い機能が欲しい

・Unityの超人気アセット「Playmaker」を試したけど、他も試したい

・デザイナーで個人、またはチーム開発

・プログラマーとデザイナーの共同開発

・Unityのプログラミングの勉強がしたい

 

 

40ドルの計算結果 (1ドル 105.6660 円)
40ドル は、 4,226円

定価65ドルなら、6,868円

 

 

アセットストアのレイアウトが変わった!

 

今日から新しいレイアウトになりましたね!!

ストアを毎日見てるので、新レイアウトの登場には驚きです。

 

★☆アセットストアの思い出☆★
 

2016年6月23日〜

f:id:assetsale:20160623230657j:plain

画面左側は黒背景で、緑色の文字で割引を大きく強調!

縦に長くなったお陰で、アセット説明文が読みやすくなりましたね。

 

2015年6月10日〜

f:id:assetsale:20150610225000j:plain

Big Nature Pack リアル系の山小屋3Dモデル 2015/06/10 - Unity AssetStoreまとめ

 

 右下が「24:HOUR SALE」に変わった日。去年の6月で今年も6月。これは一体・・・。

f:id:assetsale:20150610230700j:plain

 

ブログ初期の2015年3月16日

f:id:assetsale:20150325235300j:plain

右下はシンプルでしたね〜懐かしい♪

この頃は「バージョンやサイズ、公式サイト」はアセット紹介のサムネイルより上にあったんですよね。

Particle Playground 標準のShurikenが化ける最強の拡張エディタ - Unity AssetStoreまとめ