「HUD」型のエフェクトです。

HUDとは、「ドラゴンボールのスカウターみたいなアレ」を指す専門用語です。
スカウターでなくスカウター上の情報、つまり「コンピュータゲームのヒットポイントゲージ」みたいな、「実際にその場所には存在しないけど、お約束的に画面上に張り付いた文字や画像情報」みたいなニュアンスで使われているかと思います。

HUDカテゴリのエフェクトでは、
-デジタルガジェットっぽく、''アンチエリアスを意図的に外している(=くっきり+ぎざぎざ)''
-''「ZGameEditor VisualizerのPreview画面」でのマウス操作''が用意されている

といった傾向があるようです(Experimentalなのもあるし全部じゃないです)。

''Preview画面での操作''は、おおむね、

|右クリック&ホールド|pivot pointと描画範囲表示。|
|pivot pointで左クリック&ホールド+ドラッグ|pivot point移動。|

というのが基本です(中にはかなり複雑怪奇な操作のものもある)。
演奏時のリアルタイムプレビュー中に使うのは仕様的に厳しいと思いますが、以前のZGEVizのストイックさ(BitPadZエフェクトとか!)と比較してかなり意欲的な操作系で、作りこみ時には威力を発揮するかと思います。いずれは、他のエフェクトにも適用が広がったりする(あるいはXInputデバイスでFL Chanを躍らせたりできたり)ようになっていくのかもしれません。
''pivot point''は「回転の中心」みたいな意味です。各エフェクトで若干意味が違うようですが「Anchor」ドロップリストがあるエフェクトの場合Rotationスライダで回転させるときの回転軸の中心を選んだりできます。「Is selectable」トグルがある場合「右クリックしてもpivot point(赤いまるいやつ)を表示させない設定」が可能ですが、その場合でも描画範囲のガイド(赤い四角いやつ)は表示されるようです。

端的には「PC用の3Dシューティングゲームの画面のカスタマイズ」というイメージで、それこそがこのHUDカテゴリの名前の由来かなと思います。

''おまけ1'':HUDは本来「Head-Up Display」の略語らしいんですが、厳密な定義が存在するのかはかなり疑問があります。字義通りには「HMD(Head Mounted Display)と同等の頭部装着のハードウェア」、もしくは「水平面の操作パネルから見上げる位置に垂直に設置されている表示デバイス」を指す用語だったんではないかとも思います。
演説用プロンプター系デバイスやらレビ照準器やらDATサイトやらダライアスの3画面筐体やら、もっと言えば「ホワイトボードを透明にしたような事務用品に書き込んだ文字」とか「フロントガラスにぶら下がってるRagdoll」とか「PCモニタに張り付けたポストイット」が「HUDか」と言われたら「絶対違う」と、個人的には思っているんですが、HUDという言葉はどうも特に車載用投影機器として普及した影響でそういう意味、つまり後者での使われ方が主流となっているようです。「誰が、いつ」口にしたかで、意味や範囲が変わってくる言葉のような気もしています。
私の理解では、HUDはAR(augumented reality)とかMR(mixed reality)とかいった言葉が全く存在しなくて「ドラゴンボールのスカウターみたいなアレ」という以外の表現がなかった時代からある用語です。
まとめると、「ドラゴンボールのスカウターみたいなアレ」と表現するのが必要充分な気がします。なお、数値の表示はなぜか4桁しか対応していないため、サイヤ人等は測定不能のようです。

''おまけ2'':改造とか画像リソースを追加しようとかいう人以外は関係ない話ですが、HUDカテゴリのエフェクトはすべてRado1氏の手によるもので、ZgeNanoという独自開発のベクタ描画用DLL( .zgeprojファイルを開くとライブラリに関するURL等が書いてあります )を利用しているようです。ZgeNanoは「OpengL上でsvgを扱う」ライブラリのようで、HUDエフェクトが利用する画像リソースにはinkscapeで書かれたと思われるSVGファイルもあるようです。HUDカテゴリ全般で利用されているようなので、SVG方面になじみがある人は「OpenGLで3次元座標がーといった他のエフェクト」よりむしろ楽に扱えたりするのかも知れません。

**HUD
|LEFT:160|LEFT:12|LEFT:12|LEFT:12||c
|BGCOLOR(#9cc):エフェクト名|BGCOLOR(#9cc):音|BGCOLOR(#9cc):絵|BGCOLOR(#9cc):物|BGCOLOR(#9cc):概要|
|BGCOLOR(#c99):エフェクト名|BGCOLOR(#f99):音|BGCOLOR(#fcc):絵|BGCOLOR(#f99):物|BGCOLOR(#fcc):概要|c
|>|>|>|>|BGCOLOR(#333):|
|[[HUD 3D>#HUD3D]]|―|◎|?|「左のレイヤーの出力」または「IMAGE SRC」から二次元の画像を受け取って、様々な三次元的効果を与えます。|
|[[HUD Callout Line>#HUDCalloutLine]]|―|―|―|「コールアウトライン」を表示します。|
|[[HUD Free Line>#HUDFreeLine]]|―|―|―|「折れ線」を表示します。|
|[[HUD Graph Linear>#HUDGraphLinear]]|◎|―|―|シンプルな直線的ピークエフェクトです。|
|[[HUD Graph Polar>#HUDGraphPolar]]|◎|―|―|シンプルな円形ピークエフェクトです。|
|[[HUD Grid>#HUDGrid]]|―|―|―|謎のモザイク映像が表示されます。|
|[[HUD Image>#HUDImage]]|―|◎|―|「左のレイヤーの出力」または「IMAGE SRC」から二次元の画像を受け取って、二次元的な基本操作を可能にします。|
|[[HUD Mesh>#HUDMesh]]|―|―|○|メッシュ(3Dモデル)を表示します。|
|[[HUD Meter Bar>#HUDMeterBar]]|◎|○|―|非常にシンプルな、モノラルのレベルメーターです。|
|[[HUD Meter Linear>#HUDMeterLinear]]|―|―|―|音に反応しない、シンプルな直線的メーターです。|
|[[HUD Meter Radial>#HUDMeterRadial]]|―|―|―|音に反応しない、シンプルな円形メーターです。|
|[[HUD Prefab>#HUDPrefab]]|―|―|―|定義済みの「UI向けモノクロアニメーション」を表示します。|
|[[HUD Text>#HUDText]]|―|―|―|テキストを無駄にかっこよく表示します。|

&aname(HUD3D);
**HUD 3D
「左のレイヤーの出力」または「IMAGE SRC」から二次元の画像を受け取って、様々な三次元的効果を与えます。

「自在に使う」のはかなり難しいですが、意味が分かると「何となくかっこよく使える」と思います。

''In sourceを選ぶ''
一番最初に、スライダ類の一番下にある「In source」ドロップリストで入力ソースを選ぶ必要があります。
"Post-effect"を選択すると「左のレイヤの出力」を映像入力ソースとします。
"IMAGE SRC"を選択すると、画面の上の方にあるIMAGE SRCドロップリストで選択した映像ソースを入力とします。IMAGE SRCを利用する場合は、Add content->Imagesで指定しておくか、他のレイヤでTO BUFFERを指定しておく必要があります。

HUD 3Dにおいて「''入力ソースはあくまで二次元の画像である''」という点さえ意識していれば、あとは何となくカンで使えるかなと思います。

''Layers''スライダ
たくさん並んだスライダの中央付近にある''Layers''スライダは、元となる二次元画像を「分身」させます(用語的には、ZGEVizのレイヤとは全く関係ないです)。
''Layers''スライダ以下に並ぶLayer何とかいうスライダは、この「分身」の挙動を決定するものです。
というあたりまで理解していればあとは気分で使えるかなと思います。

Z bufferは多分Layer(分身)同士が重なるようにたくさん描いた場合に、「内部的な描画順」で描くか、「手前にはずのあるもの」を描くか、とかいった意味かなと思いますが、ZGEViz的には「かっこよさが正義」なので、「目で判断しましょう」が正解かなと思います。

余談ですが、個人的にはこのエフェクトが「HUDカテゴリ」に分類されるべきなのかは疑問がなくもないです。

&aname(HUDCalloutLine);
**HUD Callout Line
Callout Lineを表示します。
Callout Lineがフツウに使われてる言葉かは知りませんが、Googleで検索した感じだと「漫画の吹き出しのとんがったとこを長い線として描いたもの」みたいなニュアンスで、「イマドキの3DゲームのHUDの文脈」でおなじみの概念なので、使用例の画像を見たら「ああアレね」と思うんじゃないかと思います。

FL20.1.1時点ではHelpに''Experimental''(とりあえず実装してみた!=将来的に仕様かわるかも!)とか書かれてるので一応注意しておくといいかも知れません。

しばらく触っているとわかると思いますが、

Start=線の始点=孫悟空に重ねる部分。
End=線の終点=背景の空とかに引っ張り出す部分。
Caption=Endにくっついた長方形=説明文(戦闘力とか)が描かれる部分。

というニュアンスのようです。

ただ、(FL20.1.1時点では)''HUD Callout Lineエフェクト自体には「説明文」を描く機能はついていない''ようなので、Captionを出したければ他の手段で補う必要があります。仕様的には「HUD Text」エフェクトを「Caption lengthとCaption widthで適切に広げた画面領域に」、「手作業で上手に重ねて使う」のが無難かなと思います。試してませんが。

''Preview画面での操作''に対応しています。

&aname(HUDFreeLine);
**HUD Free Line
「折れ線」を表示します。
''特記事項:このエフェクトはとても使いにくいです!''

FL20.1.1時点ではHelpに''Experimental''(とりあえず実装してみた!=将来的に仕様かわるかも!)とか書かれてるので注意しておくといいかも知れません。

基本状態では、直線(線分)が表示されます。
-Start=線分の始点
-End=線分の終点

というところまでは、ちょっと触ればわかると思います。
HUD Free Lineエフェクトの本領は「この先」にあるようです。
「この先」は画面だけ見ていても絶対にわかりません。

''Preview画面での操作''に対応しています。
対応しているのですが、性質上、特殊な、というか超絶変態的操作系になっています。

ヘルプによると、
-マウス右クリック&ホールドでコントロールポイント表示
-コントロールポイント表示中に、「コントロールポイント上でマウス左クリック&ホールド」でドラッグによる「線分の」移動
-コントロールポイント表示中に、「コントロールポイント上でマウス左クリック&ホールド+Insertキー」で線分の終端に線分を1セグメント追加
-コントロールポイント表示中に、「コントロールポイント上でマウス左クリック&ホールド+Deleteキー」で線分の終端に追加した線分1セグメントの削除

だそうです。''追加していった線分に対してはマウス操作はできない''ようですが、

Segmentスライダ=折れ線を構成する各線分の選択
Typeスライダ=線の角の装飾
Lengthスライダ=長さの調整
Angleスライダ=角度の調整

と、およそ一通りのことはできるようです。頭が話について行ければ!

''おまけ'':ポインティングデバイスの種類や同時接続数、MIDIのルーティングとかその制御手法次第で自在に操ることができるポテンシャルはあると思いますが、ちょっと私には厳しそうです。「そこまでして使いたいエフェクトなのか」とか「Experimentalだしこのエフェクトに特化したノウハウを蓄積しても報われないんではないか」とかとか。「少ないコントロールで無限の関節自由度が持てる」理屈ではあるので、突き詰めていくと「ZGEVizでボーン入りメッシュを動かす基礎技術」とかいうところに繋がるようなこともあるのかも知れません。知れませんが。

&aname(HUDGraphLinear);
**HUD Graph Linear
シンプルな、直線的な「ピークエフェクト」です。
エフェクトに入力された音の周波数に対する音量が棒グラフのように表示されます。

「Peak Effectsカテゴリ」に類似のエフェクトが多数ありますが、このHUD Graph Linearエフェクトの特徴は「''Preview画面での操作''」に対応している点かと思います。

''Preview画面での操作''に対応しています。

音がないとただの直線なので、調整する際には音を出しながらいじるのがよいと思います。

&aname(HUDGraphPolar);
**HUD Graph Polar
シンプルな、円形の「ピークエフェクト」です。
エフェクトに入力された音の周波数に対する音量が円周上の棒グラフ(?)のように表示されます。

「Peak Effectsカテゴリ」に類似のエフェクトが多数ありますが、このHUD Graph Polarエフェクトの特徴は「''Preview画面での操作''」に対応している点かと思います。

''Preview画面での操作''に対応しています。

音がないとただの円なので、調整する際には音を出しながらいじるのがよいと思います。

&aname(HUDGrid);
**HUD Grid
謎のモザイク映像が表示されます。
音や映像には全く反応せず、スライダで制御します。

標準状態が地味地味ですが、スライダの使い方次第でかっこよく使えるかと思います。

Velocityスライダを右へ振っていくと全ての効果が時間変化するようです(velocityは「速度」です。日本語の文脈では「MIDIのvelとは全く関係ない」と考えてもいいです)。
その他のスライダは各々独立して視覚効果に直結してるので触ってればわかると思います。

''Preview画面での操作''に対応しています。

&aname(HUDImage);
**HUD Image
「左のレイヤーの出力」または「IMAGE SRC」から二次元の画像を受け取って、二次元的な基本操作を可能にします。

「このエフェクトはこう使え」というのが言いにくいのですが、ポテンシャルは高いエフェクトと思います。

さしあたって「融通の利きにくいデータソース(Add content->Add FL Windowの出力とか)」を「''画面左上に縮小表示させて回転させる''」とかいうことが「''簡単に''」できます。特に「回転軸の中心を変更する」ことが手軽にできる点はポイントが高いです。

従来からある「Image」エフェクト等の組み合わせでも似たことは可能ですが、「左のレイヤの出力がTO BUFFERを介する必要もなく利用できる」とか、全体に扱いやすくなっていると思います。

''Preview画面での操作''に対応しています。
操作条件付きとはいえマウス操作可能になった点は、このエフェクトでは特に有効なのではないかと思います。

&aname(HUDMesh);
**HUD Mesh
MESHドロップリストで指定されたメッシュ(3Dモデル)を表示します。

「Add content->Meshes」であらかじめ設定しておいたファイルを「Mesh」ドロップリストで指定して利用します。

全体の色調や光源の色調が指定できるほか、シェーディング方法(ワイヤフレームにしたりとか)が選べたりします。
Spinningスライダで勝手に回転させられる点は「3DゲームのHUDっぽさ」を出すのに便利かと思います。

「''そのまま使う''」のでもかっこいいといえばかっこいいのですが、HUDカテゴリに分類されていることも考えると「''RGB Shiftエフェクトとかの各種Posteffectをかけて、HUD Imageエフェクトへの入力にして画面の一部の矩形領域に使う''」のが自然かなと思います。

''サポートフォーマット''
デフォルトではメッシュのファイル形式は.zgeMeshとなっているようで、FL Studio20.1.1時点で添付されているメッシュはすべてこの形式になっているようです。
以前使われていた.3dsのほか、.obj形式の3Dモデルが利用できるようです(試してません。対応フォーマットでも全てのモデルの全情報に対応しているということはないんじゃないかと思います)。
FL20.xでWith colors、Auto scaleとかいうトグルが新設されたようなので、無茶なスケールのものをそれなりに表示するとか元モデルの色指定を活かしたりとかが簡単になっているかも知れません(試してません)。
一般に「3Dモデルを扱う」という観点ではあまり融通が利くわけでもないようなので、外部からメッシュを持ってくる場合はなにがしかの事前処理が必要になりそうな気はします。

&aname(HUDMeterBar);
**HUD Meter Bar
非常にシンプルな、モノラルのレベルメーターです。

色やサイズ、背景画像を指定することができます。

''Preview画面での操作''に対応しています。

&aname(HUDMeterLinear);
**HUD Meter Linear
音に反応しない、シンプルな直線型メーターです。

Windowsソフトのインストールとかの「進捗度メーター」を手動にしたもの、みたいに考えればいいと思います。

|Alpha,Hue,Saturation,Lightness|数字の色|
|Alpha2,Hue2,Saturation2,Lightness2|メーター部の色|

Valueが現在の値です。
「バカなっ!!!戦闘力があがっていく!!!」といった表現で補助的に使うエフェクトと考えればだいたい合ってると思います。

''Preview画面での操作''に対応しています。

&aname(HUDMeterRadial);
**HUD Meter Radial
音に反応しない、シンプルな円形のメーターです。

|Alpha,Hue,Saturation,Lightness|数字の色|
|Alpha2,Hue2,Saturation2,Lightness2|メーター部の色|

Valueが現在の値です。
これも「バカなっ!!!戦闘力があがっていく!!!」といった表現で補助的に使うエフェクトと考えればだいたい合ってると思います。

''Preview画面での操作''に対応しています。

&aname(HUDPrefab);
**HUD Prefab
定義済みの「UI向けモノクロアニメーション」を表示します。

「Shape」セレクタで画像を選択します。すごい大量の画像リソースがあります。
画像の色、位置、拡大率の指定、反転などができます。

「Buildup from, Buildup to」スライダで「パーツに分かれている部分部分がじわじわぺかぺかと段階的に表示されたり」とかいう調整ができます。

「HUDという特定用途」において「扱いやすく使いでがあるエフェクト」かなと思います。

''Preview画面での操作''に対応しています。

''独自の画像リソースは使えるか''
「独自の画像リソースを作りたい」といった話題がフォーラムで出ていたようです( https://forum.image-line.com/viewtopic.php?f=1700&t=236684 )が、公式にどういう反応があったかは追跡していません。
ざっと見た感じだと「基本的には.ilvというバイナリ形式データを使っている(=聞いたことない形式+わざわざバイナリ形式にしている=ユーザー独自に作るようなエコサイクルは現状では想定してない=仮に今独自に作れてもそれが将来にわたって使える保証もない)」という印象を受けます。
HUD Prefabデフォルトで選択されている画像リソースの「/ZGameEditor Visualizer/Effects/HUD/prefabs/@none.svg」は、.ilvではなく「Incscapeで作られた概ね標準に即したSVGファイル」と思われるので、そのあたりと"HUD Prefab.zgeproj"本体のソースを観察すると、何か得られるかも知れません(個人的には、基礎知識が不足しているのでHackするのはちょっとおっくうです)。
数十分の観察では「SVG中に複数のパスないしグループがあった場合、ファイル中の上から順番に一つずつ表示する(≒特別な仕組みはない)」みたいな仕組みかなと思います。多分にあてずっぽうですが。

結論から言えば「''できる''」
のですが「基本的には.ilvというバイナリ形式データを使っている(=聞いたことない形式+わざわざバイナリ形式にしている=ユーザー独自に作るようなエコサイクルは現状では想定してない=仕様固めてないし、仮に今独自に作れてもそれが将来にわたって使える保証もない)」という印象を受けます。
HUD Prefabデフォルトで選択されている画像リソースの「/ZGameEditor Visualizer/Effects/HUD/prefabs/@none.svg」は、.ilvではなく「Incscapeで作られた概ね標準に即したSVGファイル」のようです。一時間ほどの観察では
-「SVGでさえあれば原則利用可能」
-「アニメーションは、全体の透明度を変化するのが基本」
-「SVG中に複数のパスないしグループがあった場合、ファイル中の上から順番に一つずつ透明度が変化する」

みたいな仕組みのようです。ただ、「tspanで書かれた文字(Scratch3.xで文字を文字として書いた場合はこれになる)は使えなさそう」など、あらゆる仕様が期待通りに動くわけではないので、何が利用可能か、もっと実験が要りそうです。

&aname(HUDText);
**HUD Text
テキストを「無駄にかっこよく」表示します。

表示するテキストはAdd content->Textで、「改行記号で区切ったテキスト」をあらかじめ記述しておきます。

「Text line」スライダで「表示する行を選択する」のが基本ですが、Append numセレクタ, Numberスライダ, Place valueスライダでテキストに数字を組み合わせる仕組みがあります。このあたりは使ってれば何となくわかると思います。

「Buildup from, Buildup to, Rnd amount, Rnd speed, Rnd type」スライダは「なんかグリッチにテキストが表示される!」という「すごいハッカー風演出」のためだけにあります。

''日本語は利用できません''
英数字のみであればちょっとしたハックで任意のTrueTypeフォント(.ttf)が利用可能と推測されます(試してません)。FL20.1.1現在では、内部処理的に日本語を利用可能にするのは難しそうです。

''Preview画面での操作''に対応しています。

**関連項目
【ZGameEditor Visualizerのエフェクト】

トップ差分 バックアップ リロード  一覧 単語検索 最終更新 ヘルプ最終更新のRSS