==============================
目次
==============================
- HachiViewerPlus 3.0
- 基本の操作
- Icon Menu
- Home Menu
- Quick Menu
- ドラッグ&ドロップ
- ショートカット
- Hachi4.0連携
- HachiViewerコマンド
- 前景画像/動画の操作
- ボイスコマンド/ボイスチェンジ
- Youtubeコメント取得
- その他機能
- 各種設定ファイル/フォルダ
- ちょっと宣伝
- 利用規約
==============================
HachiViewerPlus 3.0
==============================
本ソフトは多機能VRMビューワです。下記のような主たる機能があります。
● VRMモデルの表示
VRMファイルをD&Dすることでモデルを表示。
● VRMモデルポーズ編集
ポーズ及び表情の編集ができます。
(※実験的機能)まだいろいろ未実装な部分や不具合が多いです。
● ScenarioFactory再生機能
テキストに書かれた文章やコマンドをノベルゲーム風に再生します。
● 字幕付き音声ファイル読み上げ機能
Hachi4で生成された字幕+音声ファイルを順次再生します。
● Youtubeコメント取得
Youtubeのコメントを取得して表示します。
● マイク音声口パク機能
マイクから取得した音声をもとにモデルに口パクさせます。
■ インストール/アンインストール
インストール作業は必要ありません。
アンインストールはHachiViewerPlusのフォルダごと削除してください。
■ 起動
HachiViewerPlus.exe を実行します。
※利用にはインターネット接続環境が必要になります。
==============================
基本の操作
==============================
以下の操作を行うことができます。
[1] GUI表示
マウスの中ボタン若しくは[V]キーでGUI表示を切り替えます。
※直接コマンド入力中は機能しません。
[2] モデル表示
以下のいずれかの方法でモデルを表示することができます。
方法1:画面右上にある3つのキャラクタアイコンをクリック
方法2:MAIN MENU /《モデル追加》ボタンで表示される一覧から選択
方法3:VRMファイルをドラッグ&ドロップ
方法4:シナリオコマンドを使ったモデル表示
※単色以外のステージ上で[Shift]+[右クリック]しておくと、その位置にモデル生成されます。
[3] 操作対象の選択
・ハンドル非表示の時、画面内モデルをクリックすると操作対象になります。
・ハンドル表示の時、モデルのハンドルを操作すると操作対象になります。
・シナリオコマンドの"$focus=[数値]/モデル名"で操作対象を指定できます。
[4] マウス操作:カメラ移動・回転・ズーム
≪通常カメラ≫
左ボタン+[Shift]ドラッグでカメラ移動。
右ボタンを押しながらドラッグで回転。
ホイール回転でズーム。
中ボタンクリックでGUIの表示ON/OFF
≪ファーストパーソンカメラ≫
[WASD]で移動、[Space]でジャンプ
カメラの向きはマウスで操作します。
[5] リセット
[Alt]+[F12]でアプリケーション全体をリセットします。
[6] 各種パネル操作
・アプリ内ウィンドウはタイトルバーをドラッグして移動できます。
・[CTRL]を押しながらタイトルバーをクリックするとウィンドウを閉じます。
・[SHIFT]を押しながらタイトルバーをクリックでウィンドウサイズを変更します。
==============================
Icon Menu
==============================
GUI表示時([V]で切替)、画面上部のアイコンボタンの機能
(左から)
■ [カメラ切替]
通常カメラとファーストパーソンの切替
■ [画像ドラッグ切替]
画面上の画像/動画をドラッグ移動のオン・オフを切り替えます。
■ [ハンドル切替]
モデルに表示するハンドルの表示を切り替えます。
※ハンドル種別(移動・回転・拡縮)の切り替えは[C]キーで行います。
※ハンドル表示中はモデルクリックによる対象選択ができなくなります。
■ [モデル追加]
組み込みモデルのパネルが表示されます。
※1 [CTRL]を押しながらクリックするとファイルからVRMモデルを読み込めます。
※2 読み込むファイル名が特定の文字から始まっているPNG画像の場合、
VRoidの各種テクスチャとして読み込むことができます。詳細は後述のドラッグ&ドロップをご参照ください。
■ [全消去]
現在表示されているモデルや背景等をリセットします。
■ [字幕クリア]
字幕とバックログの文字をクリアします。
■ [字幕パネル表示]
字幕やバックログを調整するパネルの表示切替
[CTRL]を押しながらクリックするとテキストパネルの表示切替。
■ [モーションパネル]
モーションを選択するパネルの表示。
[CTRL]を押しながらクリックするとコマンドパネルの表示切替。
■ [エフェクト]
画面エフェクトを設定するパネルを表示します。
■ [ポーズ編集]
ポーズ編集パネルの表示切替
※[Shift + Poseボタン]でも行えます。
※Ctrlを押しながら[SAVE]をクリックするとモデルの位置情報も保存されます。
■ [顔編集]
表情編集パネルの表示切替
※[Shift + Faceボタン]でも行えます。
■ [指ポーズ編集]
指編集パネルの表示切替
■ [シナリオ再生]
[F4]もしくは[SenarioFactory]クリックでシナリオファクトリーのシナリオを再生します。
シナリオファクトリーで生成されたHachiViewer用のZIPをドラッグ&ドロップすることで、
シナリオファイルを置き換えることができます。
※セリフ枠表示時の[Auto]ボタンは、シナリオ再生時の自動送りオン・オフ
[CTRL]を押しながらクリックでシナリオエディタを表示します。
■ [PLAY HACHI4]
Hachi4で出力された音声データを再生します。
※[F5]でも行えます。
■ [ローカルメニュー]
ローカルメニューの表示切替。
■ [GUIオフ]
GUIを非表示にします。
[CTRL]を押しながらクリックで時計表示切替。
==============================
HOME Menu
==============================
■ 顔ボタン
モデルを表示します。
[CTRL]を押下しながらクリックすると同系モデルをすべて消去します。
■ 顔ボタンの右にあるボタン
全消去。
■ 矢印ボタン/回転ボタン
操作対象モデルの移動と回転。移動/回転ボタンをクリックする際、
[Shift]キーを押しながらクリックすると変化量が大きくなります。
[Ctrl]キーを押しながらクリックすると方向等が変化します。
■ [Pose][Motion][Face]ボタン
ポーズ/モーション/表情を切り替えます。
[Ctrl]キーを押しながらクリックすると編集パネルが開きます。
■ [Pose][Motion][Face]の右にあるボタン
表情をリセットします。
■ [+][ー]
操作対象モデルのスケールを変更します。
■ [≪][≫]ボタン
モデルが複数表示されている場合、操作対象モデルを切り替えます。
■ [吹き出し]ボタン
字幕表示切替。
■ [Item]ボタン
操作対象モデルに付属しているアイテムの全非表示。
■ [目閉じ]ボタン
まばたきのオン・オフ
■ [目開き]ボタン
カメラ視線のオン・オフ
■ [Youtube]ボタン
Youtubeのコメントを取得します。※取得にはAPIキー設定が必要です。(下記参照)
■ [ハンドマイク]ボタン
ボイスコマンド(音声認識)をオンにします。
※ボイスコマンドはStreamingAssetsフォルダにある《reaction_voice.txt》に記述します。
■ [カメラ]ボタン
スクリーンショット撮影。
■ [フォルダ]ボタン
各種フォルダやテキストを開くフォルダパネルの表示切替。
■ [Twitter]ボタン
現在の画面のスクリーンショットをツイートします。(ツイート画面が開きます。)
■ [マイク]ボタン
マイク音声に合わせて口パクします。
■ ホームボタン
ステージの切り替え
==============================
Quick Menu
==============================
[Q]キーQuickMenuの表示切替ができます。以下のメニューが用意されています。
※直前にShift/Control/Tabキーを押しているとショートカットモードに入ってしまいます。
その場合は[ESC]でキャンセルしてから[Q]を押してください。
※タイトル部分を[Shift|Alt]+クリックでメニューのサイズが切り替わります。
■ [Drag ON/OFF]
画面上の画像/動画をドラッグ移動のオン・オフを切り替えます。
■ [Handle ON/OFF]
モデルに表示するハンドルの表示を切り替えます。
※ハンドル種別(移動・回転・拡縮)の切り替えは[C]キーで行います。
※ハンドル表示中はモデルクリックによる対象選択ができなくなります。
■ [CHARACTER]
キャラクタパネルの表示切替
■ [CLEAR ALL]
現在表示されているモデルや背景等をリセットします。
■ [CLEAR TEXT]
字幕とバックログの文字をクリアします。
■ [SUBTITLE]
字幕の表示切替
■ [SAVE/LOAD]
セーブ・ロードボタンの表示切替
■ [INPUT COMMAND]
シナリオコマンド入力の表示切替
※[Shift + Space]でも行えます。
■ [PLAY HACHI4]
Hachi4で出力された音声データを再生します。
※[F5]でも行えます。
■ [EFFECT]
画面エフェクトを設定するパネルを表示します。
■ [FACE EDITOR]
表情編集パネルの表示切替
※[Shift + Faceボタン]でも行えます。
■ [POSE EDITOR]
ポーズ編集パネルの表示切替
※[Shift + Poseボタン]でも行えます。
■ [FINGER EDITOR]
指編集パネルの表示切替
■ [SETTING]
設定情報パネルの表示切替
==============================
ドラッグ&ドロップ
==============================
■ PNGファイル
・ファイル名が"Body_xxxx.png"の場合、VRoidの肌テクスチャを変更します。
・ファイル名が"Face_xxxx.png"の場合、VRoidの顔テクスチャを変更します。
・ファイル名が"Mouth_xxxx.png"の場合、VRoidの口内テクスチャを変更します。
・ファイル名が"Extra_xxxx.png"の場合、VRoidのエクストラテクスチャを変更します。
・ファイル名が"Eye_xxxx.png"の場合、VRoidの瞳テクスチャを変更します。
・ファイル名が"Eyewhite_xxxx.png"の場合、VRoidの白目テクスチャを変更します。
・ファイル名が"Eyelash_xxxx.png"の場合、VRoidのまつげテクスチャを変更します。
・ファイル名が"Eyebrow_xxxx.png"の場合、VRoidの眉毛テクスチャを変更します。
・ファイル名が"Highlight_xxxx.png"の場合、VRoidのハイライトテクスチャを変更します。
・ファイル名が"Cloth_xxxx.png"の場合、VRoidの衣服テクスチャを変更します。
・ファイル名が"Bottom_xxxx.png"の場合、VRoidのBottomテクスチャを変更します。
・ファイル名が"Shoes_xxxx.png"の場合、VRoidの靴テクスチャを変更します。
・ファイル名が"Tie_xxxx.png"の場合、VRoidのTieテクスチャを変更します。
・上記以外の場合、前景画像として読み込まれます。
■ JPG/PNGファイル(上記以外)
・ファイル名が"bg"で始まる画像は背景画像になります。
■ MP4ファイル
・ファイル名が"bg"で始まる画像は背景動画となります。それ以外は前景動画として読み込まれます。
■ シナリオファイル
・シナリオファイルとして読み込み実行します。
==============================
ショートカット
==============================
■ キー・ボタン操作:
矢印キー → カメラ移動。
[W][S][A][D]
(通常カメラ時)モデルの移動。
[V] GUI ON/OFF
GUIの表示オン・オフ
[Q] QuickMenu表示切替
[P] 字幕(テキスト枠)オン・オフ
字幕を右クリックするとバックログが表示されます。
[ALT]+[X] スクリーンショット(PNG)
画面を透過PNGでPicturesフォルダに保存します。
※同時にカメラ情報ファイルが生成されます。
[ALT]+[Z] スクリーンショット(JPG)
画面をJPG画像でPicturesフォルダに保存します。
※同時にカメラ情報ファイルが生成されます。
[12345] - AIUEO
モデルのアイウエオ表情
[6789] - 追加表情
モデルに組み込まれている場合は追加の表情
以下のキーでモデルの表情変更
[E] JOY
[R] SORROW
[T] SURPRISED
[Y] Extra
[F] デフォルト表情に戻す。
■ ファンクションキー
[F1] モデル生成位置リセット
[F2] シナリオコマンドフォルダ(Commands)を開きます。
[F3] 画像フォルダ(Images)を開きます。
[F4] シナリオを再生します。
[F5] Hachi4出力データを再生します。
[F6] カメラを固定と通常に切り替えます。
[F7] 自動アクションON/OFF
[F8] ">>"ボタンで選択中のモデルを呼び出します。
[F9] スクリーンショットをツイートします。(ツイート画面が開きます。)
■ モーション・ポーズ再生
[Shift]を押した後に[数字]を入力するとモーション再生が、
[Ctrl]を押した後に[数字]+[ENTER]を入力するとポーズ指定ができます。
モーション/ポーズ番号一覧
http://hachistudio.wfa.jp/2019/11/16/pose-motion%e4%b8%80%e8%a6%a7/
※モーション/ポーズの番号が1-2桁の場合は前に"0"を付けて3文字入力してください。
例)モーション18を再生する場合、
1.[Shift]キーを押す
2.続けて[018]と入力
用途)
ライブ配信や録画時、キャラにモーションを追加したい場合に使います。
■ ショートカットモード
現状は以下の3つのショートカットモードが用意されています。
・[Shift]キーを押した後のショートカット入力
・[Ctrl]キーを押した後のショートカット入力
・[Tab]キーを押した後のショートカット入力
GUIを表示している際は、上記のいずれかのキーを入力すると画面下部に[Shift Command>>]
のようにメッセージが表示されます。※GUIを非表示にした状態でも利用することができます。
例)モデルが表示されている状態で[Shift]キーを押し、[Shift Command>>]が表示された
のを確認したら続けて”BYE”と入力すると、モデルが手を振ります。
例)[CTRL]キーを押し、[Control Command>>]が表示されたのを確認し、
続けて”FLAME”と入力、そして[ENTER]キーを入力すると炎のエフェクトが表示されます。
■ 各コマンドの特徴と設定
[Shift Command]
最大3文字のショートカットコマンドです。3文字目が入力されると自動的にコマンドが
実行されます。1~2文字のコマンドは[ENTER]キーを押すことで実行することができます。
設定ファイル(streamingAssets/shortcut.txt)には以下のように記述します。
[3文字までのアルファベット] , シナリオコマンド
例)BYE,$motion19$blinkoff$joy
BYEと入力されたら、手を振るモーションを再生し、瞬きを止めてから、笑顔にします。
例)W,$quickpose
”W”+[ENTER]キーで、ポーズパネルの表示切替
[Controll Command][Tab Command]
20文字までのショートカットコマンドです。[ENTER]キーでコマンドが実行されます。
設定ファイル(streamingAssets/shortcut.txt)には以下のように記述します。
[Controll Command]はコマンドの先頭に”$””をつけます。
例)$GOODBYE,$motion19$blinkoff$joy
“GOODBYE”と入力されたら、手を振るモーションを再生し、瞬きを止めてから、
笑顔にします。
[Tab Command]はコマンドの先頭に”!”
例)!GOODBYE,$motion19$blinkoff$joy
“GOODBYE”と入力されたら、手を振るモーションを再生し、瞬きを止めてから、
笑顔にします。
※[Controll Command]と[Tab Command]は設定ファイルに記述する際の冒頭文字が違うだけで
機能は同じです。ライブ配信で使いやすいように、[Controll Command]にはモーション系、
[Tab Command]にはエフェクト系のショートカットなど使い分けるためのものです。
■ Quick Command
アイコンメニューの[モーション]を[CTRL]を押しながらクリックするとクイックコマンドパネルが表示されます。
クイックコマンドパネルは[1]~[88]までのボタンがあり、これは"Streaming Assets"フォルダ以下にある
"commands.txt"に記載されているコマンドを実行します。
各番号は同テキスト内の行に対応しています。ボタン[88]は88行目に記述されているコマンドを実行します。
追加で"commands2.txt"を作成している場合
[SHIFT]を押しながら[1]~[88]をクリックすることで該当行のコマンドを実行します。
追加で"commands3.txt"を作成している場合
[CTRL]を押しながら[1]~[88]をクリックすることで該当行のコマンドを実行します。
==============================
Hachi4.0連携
==============================
Hachi4.0と連携し、モデルに読み上げさせることができます。
1.HachiViewer設定(出力済み動画の読み上げ)
《 設定 》
≪MAIN≫→≪SETTING≫→≪Hachi4Output≫に、Hachi4の動画データ出力パスを記述
例)≪Hachi4Output≫ c:\hachi\output
《 実行手順 》
① Hachi4.exe のシナリオ読込で動画を生成します。
※これで指定した出力フォルダに音声ファイルが生成されます。
② HachiViewerで任意のモデルを表示・配置します。
③ [F5]を押すと読み上げが開始されます。
※ファイル名を連番順にソートして昇順で読み上げていきます。
※VOICEPEAKで音声ファイルを出力する場合は、[連番]-[ナレーター名]でファイル出力してください。
2.コマンド入力からメッセージ読み上げ
《 設定 》
≪MAIN≫→≪SETTING≫→≪Hachi4.exe≫に、Hachi4のパスを記述
例)≪Hachi4.exe≫ c:\hachi\hachi4.exe
《 実行手順 》
シナリオコマンドで実行します。
$hachi4=[テンプレートファイル];msg:[読み上げるメッセージ];[reading:読み方]
例)$hachi4=default;msg:こんにちは
例) $hachi4=default;msg:こんな風に;reading:こんなふうに
※テンプレートファイルには、Hachi4のシナリオを記述します。その際、字幕に
表示される文字と読み上げ文を指定することができます。
字幕:SUBTITLE
読み上げ:VOICE
例)
**Hachi;pitch:77;speed:55
SUBTITLE
READING
テンプレートを複数用意して切り替えることで、声のバリエーションや感情の変化を
演出することができます。
==============================
HachiViewerコマンド
==============================
Hachi4のシナリオに以下のコマンドを入れることで、HachiViewerに対して指示を送ることができます。
シナリオコマンド
https://hachiviewerplus.wfa.jp/?CommandList
■ モデル表示・ロード
$load=model[数値]
デフォルトのVRMモデルを読み込みます。モデルは1~23まであります。
$load=[VRMファイルパス]
指定したVRMファイル(フルパス)を読み込んで表示します。
$loadmodeldata=[モデルデータ(.mdl)パス]
モデルの位置・回転・ポーズ情報が保存されたデータファイルを読込み、
操作対象モデルに適用します。
※モデルデータはスナップショット撮影時に、その時点での操作対象モデルの
情報を保存したファイルがPicturesフォルダに生成されます。
■ モデル指定
$focus=[数値|モデル名]
操作するモデルを操作対象にします。番号は1から始まって呼出された順に割り当てられます。(最大100)
プレートモデルは100以降の番号が割り当てられます。
※$delete=allで番号がリセットされます。
$nextfocus/$prevfocus
複数モデルが存在する場合、他のモデルに操作対象を変更します。
■ モデル移動
操作中モデルを移動・回転させます。数値は1が1クリックに相当します。
$moveleft=[数値]
$moveright=[数値]
$moveup=[数値]
$movedown=[数値]
$movefront=[数値]
$moveback=[数値]
$turnleft=[数値]
$turnright=[数値]
$turnfront=[数値]
$turnback=[数値]
モデルを初期位置に移動します。
$resetposition
モデルを[Shift]+[RClick]で指定した位置に移動します。
$moveclickposition
■ モデルサイズ
操作中モデルのスケールを設定します。デフォルト 各1.0
$modelscale=[数値x]:[数値y]:[数値z]
■ モデル削除
$delete=[0-23]
指定したモデルを削除します。
※数値指定がない場合、外部読込モデルを削除します。
$delete=all
全モデルを削除します。
■ ハンドル表示切替
$handle=[on|off]
モデルを移動・回転・拡大縮小するハンドル表示を切り替えます。
■ 歩く移動
$walk=[数値]
モデルが進行方向に徒歩で進みます。
■ 組み込みポジション
$setdeskposition
着席撮影用の位置にモデルとカメラを移動。
■ ポーズ選択
$pose[数値]
ポーズを指定します。Posesフォルダにある"PoseNoXXX.hpv"が順次読み込まれます。
$pose=[ポーズ名]
Posesフォルダにある"[ポーズ名].hvp"を読み込みます。
■ モーション選択
$motion[数値]
モーションを選択します。モーションは1~77まであります。
■ クロスフェードタイム
$crossfadetime=[0~10.0(初期値:0.5)]
ポーズやモーションの遷移時間を指定します。
■ モデルのシェーク/パンチモーション効果
$shake=[t:]
$punch=[x:],[y:],[z:],[t:]
■ 表情指定
操作中モデルの表情を指定します。(モデルに対応する表情がある場合のみ有効)
$fun=[0-10]
$joy=[0-10]
$angry=[0-10]
$sorrow=[0-10]
$surprised=[0-10]
$spread=[0-10]
$extra=[0-10]
$blinkl=[0-10]
$blinkr=[0-10]
$lookup=[0-10]
$lookdown=[0-10]
$lookleft=[0-10]
$lookright=[0-10]
$moutha=[0-10]
$mouthi=[0-10]
$mouthu=[0-10]
$mouthe=[0-10]
$moutho=[0-10]
$mouthlarge=[0-10]
$mouthsmall=[0-10]
・表情リセット
$resetface
$resetmouth
・視線制御
$lookat=[on/off]
・瞬き制御
$blink=[on/off]
・口パク
$talk=[on/off]
※スペースキー若しくはマウス左右ボタン押下でも、操作キャラが口パクします。
■ 揺らぎコマンド
$jitter=[on/off]
頭と上半身を前後に揺らします。
$jitterheadsize=[数値(デフォルト:-0.18)]
$jitterheadcircle=[数値(デフォルト:2)]
$jitterheadtime=[数値(デフォルト:0.02)]
$jitterspinesize=[数値(デフォルト:0.21)]
$jitterspinecircle=[数値(デフォルト:2)]
$jitterspinetime=[数値(デフォルト:0.02)]
揺らぎの各種パラメータを設定します。
■ アイテム表示切替
$accessary=[アイテム名]:[on|off|shake|handle]
※アイテム名は"item"から始まる必要があります。
※モデルへのアイテム追加
上記に該当するVRoidボーンにアイテムオブジェクトを追加します。
アイテム名についてはユニークになるようにしてください。
$tongue=[on/off] ※舌
モデルにアイテムが付属している場合、表示を切り替えます。
■ VRoidモデルテクスチャ差し替え
$skintexture=[肌テクスチャパス]
$facetexture=[顔テクスチャパス]
$mouthtexture=[口内テクスチャパス]
$extratexture[エクストラテクスチャパス]
$eyetexture=[瞳テクスチャパス]
$higlighttexture=[ハイライトテクスチャパス]
$eyewhitetexture=[白目テクスチャパス]
$eyelashtexture=[まつげテクスチャパス]
$eyelinetexture=[アイラインテクスチャパス]
$eyebrowtexture=[眉毛テクスチャパス]
$clothtexture=[衣服テクスチャパス]
$shoes=[靴テクスチャパス]
$skirttexture=[スカートテクスチャパス]
$tietexture=[リボン(ネクタイ)テクスチャパス]
VRoidのテクスチャを変更します。
■ アイテムテクスチャ
$itemtexture=[アイテム名]:[アイテムマテリアル名]:[テクスチャパス]
モデルに追加したアイテムのテクスチャを変更します。
■ VRoidモデルテクスチャアニメーション
$faceanimation=[テクスチャファイルパス][;t:[秒];loop:[on|off]]
$eyeanimation=[テクスチャファイルパス][;t:[秒];loop:[on|off]]
$highlightanimation=[テクスチャファイルパス][;t:[秒];loop:[on|off]]
$skinanimation=[テクスチャファイルパス][;t:[秒];loop:[on|off]]
$clothanimation=[テクスチャファイルパス][;t:[秒];loop:[on|off]]
連番で用意されたVRoidテクスチャを指定秒毎に切り替えます。
ファイルパスの最後は連番と拡張子を除いた部分を指定します。
ループ指定[loop]はデフォルトONとなっています。
例)texture1.png,texture2.png,texture3.pngの3つの顔テクスチャがある場合
$faceanimation=texture;t:2
■ 口パク音声再生
$voice=[音声ファイルパス]
※再生可能な音声はwav形式若しくはogg形式
※ファイルが見つからない場合はstreamingAssetsを検索します。
$volume=[数値]
音量 0.0 ~ 1.0
■ 書き割りモデル
$createplate=[画像フォルダパス]
[画像フォルダ]にある[front.png/back.png/mouth.png/eyes.png]を
読み込んで書き割りモデルを生成します。
$loadplate=[画像フォルダパス]
操作対象の書き割りモデルの画像を[画像フォルダ]にある
[front.png/back.png/mouth.png/eyes.png]に変更します。
※front.pngを指定すると[back.png/mouth.png/eyes.png]も自動的に
読み込みます。他の画像を指定した場合、[back.png/mouth.png/eyes.png]も
同じ画像に変更されます。
■ クリックコマンド
$setcommand=[コマンド]
操作対象のモデルにクリック時に実行されるコマンドを設定します。
$resetcommand
操作対象のモデルに設定されているコマンドを消去します。
■ BGM
$bgm=[音声ファイルパス]
※再生可能な音声はwav形式若しくはogg形式
※ファイルが見つからない場合はstreamingAssetsを検索します。
$bgmvolume=[数値]
音量 0.0 ~ 1.0
■ 効果音再生
$sound=[音声ファイルパス]
※再生可能な音声はwav形式若しくはogg形式
※ファイルが見つからない場合はstreamingAssetsを検索します。
$soundvolume=[数値]
音量 0.0 ~ 1.0
■ 効果
$effect=[エフェクト番号|エフェクト名][;pose:[位置]]
指定したエフェクトを表示します。
エフェクト番号: 1~4
エフェクト名:fire / water / flame / magic
エフェクト名で指定すると効果音も同時に再生されます。
$effect=color:[on/off]
カラーカーブエフェクトの切り替え
$colorsaturation=[0~5.0]
色調整。0で白黒。
$effect=frost:[on/off]
フロストエフェクトの切り替え
$frostamount=[0~]
$frostedge=[0~]
$frostseethroughness=[0~]
$frostmax=[0~]
$frostmin=[0~]
$frostdistortion=[0~]
※パラメータ設定
$effect=[エフェクト番号];pose:[位置]
指定した位置でエフェクトを実行します。
※[位置]は head / rhand / lhand / root が指定できます。
$depthoffield=[0~14.0f|reset]
被写界深度
$lensdistortion=[0-100]
歪曲収差
$colorcurve=[on|off]
カラーカーブ切替
$colorsaturation=[0-5.0f]
彩度
■ ライト
$lightrotate=[角度(x)]
$lightrotate=x:[角度];y:[角度];z:[角度];[time:秒]
ライトの角度を変更する。
$lightcolor=[色コード]
ライト色を変更します。
$lightstrength=[0~1][;time:[秒]]
ライトの強度を変更します。
■ カメラ
$camera=fixed
トーク中のキャラクタ正面に固定するモード。
$camera=normal
マウスの右ボタンドラッグで移動できます。(デフォルト)
$cameraup=[数値]
$cameradown=[数値]
$cameraleft=[数値]
$cameraright=[数値]
$camerafront=[数値]
$cameraback=[数値]
$camerarotatex=[数値]
$cameratoratey=[数値]
カメラを移動・回転します。
$camerareset
カメラ位置・回転をデフォルト状態に戻します。
$autocamera=[on|off][;speed:[数値]]
カメラを自動的に回転させます。speedオプションで速度変更できます。
$loadcameradata=[カメラ情報ファイル]
カメラ情報ファイル(.cam)を読込、カメラ位置や回転を設定します。
カメラ情報ファイルは、スナップショット撮影時にPicturesフォルダに
生成されます。
$shakecamera
カメラをシェイクします。
$itemlightcolor=[ColorCode]
操作対象のライト色を指定します。
■ 画像表示
$image=[on|off]
画像の表示オン・オフ
$image=[画像パス]
指定された画像ファイルを表示します。
$imagesize=[幅]:[高さ]
画像の表示サイズを指定します。
$imagemoveleft=[数値]
$imagemoveright=[数値]
$imagemoveup=[数値]
$imagemovedown=[数値]
画像位置を調整します。
$imagereset
画像の位置とサイズを初期状態に戻して非表示にします。
■ 背景画像表示
$bgimage=[on|off]
背景表示をON/OFFします。
$bgimage=[画像ファイルパス]
指定された画像ファイルを表示します。
$bgimage=#[カラーコード]
背景色をRGB(16進数)で指定します。
■ カットシーン表示
$cutscene=[画像パス];w:[幅];h:[高さ];sx:[初期位置x];sy:[初期位置y];ex:[終位置x];ey:[終位置y];s:[速度];t:[表示時間];destroy:[on|off];cmd:[シナリオコマンド];
※シナリオコマンドは1つ。2つ以上つなげる場合は%%で区切ります。また$settext=の後にコマンドを続けることはできません。
$deletecutscene
表示中のカットシーン画像を全消去します。
■ 字幕・セリフ枠
$textcolor=[色指定]
文字色を指定します。
[色指定]
色名:red / white / green / yellow / cyan 等
16進数指定例: #FFFFFF
$textshadow=[on|off]
$textglow=[on|off]
字幕にシャドウやグロー効果を適用します。
$textoutline=[on|off|色指定]
文字に縁取りを付けます。
[色指定]
色名:red / white / green / yellow / cyan 等
16進数指定例: #FFFFFF
$textinfo
字幕位置、フォントサイズを字幕に表示します。
$setfont=[0|1]
フォントの種類を変更します。(バックログも変更されます)
0:源暎ラテゴ
1:あんずフォント
$movetextx=[数値]
$movetexty=[数値]
字幕位置を移動します。
$textx=[数値]
$texty=[数値]
字幕を指定位置に移動します。
$pretextpos
字幕を直前に設定した文字位置に戻します。
$textsize=[数値]
文字サイズを指定します。
$characterspacing=[数値]
字間を設定します。
$linespacing=[数値]
行間を設定します。
$textdefault
テキスト修飾をデフォルトに戻します。
$subtitleimage=[ファイルパス|#16進数|off]
指定したファイル若しくは色にセリフ枠を変更します。
ファイルパスを指定するとその画像を読み込みます。
16進数指定例: #0000FF
off でデフォルトのセリフ枠を表示します。
$subtitleimage=transparent
字幕背景画像を透明にします。
$dialog=[メッセージ](;pos:[数値])
吹き出しにメッセージを表示します。
posで吹き出しの表示位置(Y)を指定できます。
$dialogup=[数値]
吹き出し位置の調整(高さ)を行います。
$typing=[on|off]
字幕のタイピング演出を切り替えます。
$typingspeed=[数値]
タイピングのスピードを設定します。デフォルトは20。大きいほど速くなります。
$skiptyping
タイピングをスキップします。
$pausetyping
タイピングを一時停止します。
$resumetyping
タイピングを再開します。
■ バックログ
$backlog=[on|off]
バックログの表示切替
$backlogmargin=[数値|Reset]
バックログの横幅を指定します。Resetで初期値。
$backlogfontsize=[数値]
バックログのフォントサイズを指定します
$backloglinesize=[数値]
バックログの行間を指定します
$infotobacklog=[on|off]
各種インフォメーションをバックログに表示します。
■ 3Dオブジェクト読込
FBX/OBJをテクスチャや関連ファイルと一緒に読み込むことができます。
シナリオコマンドかHachiViewerPlus上にドラック&ドロップすることで読込できます。
例)
$load=3DModels\room.zip
■ シナリオ関連
$auto=on
$auto=on;time:[待ち秒数]
$auto=off
シナリオ再生時の自動送りオン・オフ
$startscenario
シナリオの再生を開始します。
$click
テキスト枠をクリックする。(シナリオ再生を進める)
$label=[ラベル]
ラベルを設定します。
$jump=[ラベル]
指定されたラベル位置にシナリオ進行を移動します。
$choice=[ボタンテキスト],[コマンド]
選択ボタンを表示します。クリックで[コマンド]が実行されます。
※[コマンド]部分にURLを記述するとハイパーリンクボタンになります。
$setval=[変数名]:[値](:計算タイプ)
変数を設定します。
オプションの計算タイプ
add 足し算
sub 引き算
mul 掛け算
div 割り算
rnd 乱数
$getval=[変数名]
指定された変数の値を返します。
$val{変数名}
セリフや式の中で指定された変数の値を返します。
$deletevalue=[変数名]
指定された変数を削除します。
$deleteallvalues
全ての変数をクリアします。
$if{変数名:比較式:値:シナリオコマンド}
変数と値を比較式でチェックし、条件に合致していた場合にコマンドを実行します。
比較式-> = / > / >= / < / <= / <>
例)$if{Name:=:Hachi:$joy@8}
変数[Name]が"Hachi"だった場合、"$joy"を実行します。
例)$if{Power:>=:100:$fun}
変数[Power]が100以上だった場合、"$fun"を実行します。
■ 特殊
$text=[on|off|shadow]
字幕表示のオン・オフ。shadowで影付き文字を表示します。
$gui=[on|off]
GUI表示のオン・オフ
$lockgui=[on|off]
マウスやキーによるGUI表示切替を無効にします。
$stage=[0~5]
背景ステージを切り替えます。
$start=[Hachi4のデータ出力フォルダパス]
指定されたフォルダにあるデータを再生します。
$setdefaultpath
デフォルトの出力フォルダ(※hachi4ouput.txtに記述されたパス)に戻します。
$permissionview=[on|off]
VRMモデルのライセンス表示のオン・オフ
$title=[on|off]
タイトル画面を表示するかどうか。
$title=[タイトル名]
ウィンドウタイトル名の指定
$tweet=[メッセージ]
スクリーンショットをツイートします。(ツイート画面を開きます。)
$opencommand=[on|off]
コマンド入力を開きます。(閉じます。)
$setclipboard=[文字列]
クリップボードに文字列を登録します。
$screenshot=[png|jpg]
スクリーンショットを撮影します。
$schedule=[on|off|スケジュールファイルパス]
スケジュール機能をオン|オフします。
※スケジュールは《StreamingAssets》フォルダの《action_schedule.txt》に、
日付時刻と実行されるシナリオコマンドを記述して設定します。
※このコマンドでファイルパスを指定することで独自のスケジュールファイルを
利用することも可能です。
$reloadschedule
スケジュールを再読み込みします。
$screensize=[default|fullscreen]
画面サイズをデフォルト若しくはフルスクリーンに設定します。
■ マクロ機能
*startmacro=[マクロ名]
*endmacro
この2つのコマンドの間の行をマクロとして保存(Macrosフォルダ)します。
マクロには通常のコマンドの他、Luaスクリプトを記述することができます。
*macro=[マクロ名]
登録されたマクロを実行します。
■ Luaスクリプト
マクロとして登録されたLuaスクリプトは変数コマンドで利用できます。
※Luaファイル・システム関連コマンドは一部制限されています。
$setval=[変数名]:[*マクロ名]
$setval=[変数名]:[*マクロ名]:[計算方法]
例) マクロ名 random を実行して値を取得する
※マクロの内容
return math.radom(1,6)
※変数 dice へ乱数値を格納
$setval=dice:*random
$val{*マクロ名}
例)上記マクロを使って乱数を取得
ダイスの目は《 $val{*random} 》です。
==============================
前景画像/動画の操作
==============================
HachiViewerPlus上に画像や動画をドラッグ&ドロップすることができます。
・表示されたアイテムは、Quick Menuの[Drag ON]時にドラッグ&ドロップ移動
することができます。
・アイテムを[Shift + Click]でサイズを小さくします。
・アイテムを[ALT + Click]でサイズを大きくします。
・アイテムを[CTRL + Click]で削除します。
・ドラッグOFF時に前景に配置された動画をクリックすると一時停止/再生
・+{Shift]で動画を最初から再生します。
==============================
ボイスコマンド/ボイスチェンジ
==============================
ボイスコマンドは、音声でシナリオコマンドを実行する機能です。
・≪HOME≫パネルの≪マイク≫ボタンをクリックすることで機能のオン・オフが可能です。
・$voicecommandでも切り替えできます。
・≪StreamingAsset≫フォルダにある≪action_voice.txt≫に、キーワードと実行するシナリオ
コマンドを記述することができます。
ボイスチェンジは、マイクから入力された音声を加工して出力します。
・≪HOME≫パネルの≪リップマーク≫ボタンをクリックすることで機能のオン・オフが可能です。
・$changevoiceでも切り替えできます。
・≪VOICE≫パネルの≪ON/OFF≫ボタンをクリックすると音声加工のオン・オフが可能です。
マイク音声によるリップシンク切り替え
・$lipsync=[on|off]でリップシンクのオン・オフ切り替えができます。
==============================
Youtubeコメント取得
==============================
■ 設定
1.事前準備として、YoutubeAPIKeyを設定します。
≪MAIN MENU≫→≪SETTINGS≫→≪YoutubeAPIKey≫
※YoutubeAPIKeyはGoogleDevelopperConsoleから取得
2.コメントを取得したい放送のVideoIDを≪YoutubeVideoID≫に設定し、≪SAVE≫をクリックして
保存します。
3.≪HOME≫にある≪Youtube≫をクリックするとコメント取得が始まります。
■ シナリオコマンド
$youtubecommentnum=[数値]
コメント表示数を指定します。デフォルトは10。
$youtubecommentpos=[数値]
コメント表示開始位置(高さ)を指定します。
$youtubecommentlength=[数値]
コメント表示の文字数を指定します。
■ コメント表示設定
$youtubecmd1=[シナリオコマンド]※
$youtubecmd2=[シナリオコマンド]※
※シナリオコマンド先頭の$は省略
[シナリオコマンド]には下記の置き換え文字が設定できます。
POSITION
縦位置情報(0-720)に置換
ICON
YoutubeユーザーICON画像URLに置換
MESSAGE
Youtubeコメントに置換
AUTHOR
Youtubeユーザーに置換
例)
$youtubecmd1=cutscene=Images/null.png;destroy:off;sx:66;sy:POSITION;ex:66;ey:POSITION;t:0;s:4000;w:1280;h:100;msg:<size=25><color=yellow>AUTHOR</color> MESSAGE</size>
==============================
その他機能
==============================
■ シナリオ展開機能
シナリオファクトリー形式のシナリオ(テキスト・画像・音声)を圧縮した
ZIPファイルをHachiViewer上にドラッグ&ドロップすると、シナリオフォルダ
にその内容が展開されます。
■ シナリオコマンド実行機能
シナリオコマンドが記述されたテキストファイル(.txt)をドラッグ&ドロップ
すると、そのコマンドが実行されます。
■ 画像ビューワ
画像ファイル(JPG/PNG/BMP)をドラック&ドロップすると前景画像として表示し
ます。
[Shift]キーを押しながらドラッグ&ドロップすると背景画像として表示します。
■ 音声再生
音声ファイル(WAV/OGG)をドラッグ&ドロップすると再生します。
■ カメラ位置
カメラ情報ファイル(.cam)をドラッグ&ドロップすると、カメラ位置が読み込
まれます。
■ モデルドラッグ切り替え
$modeldrag=[on|off]
モデルのドラッグ移動とギズモによる移動を切り替えます。
■ 画像や字幕のドラッグ切り替え
$uidrag=[on|offf]
画像や字幕のドラッグ可/不可を切り替えます。
■ 時計表示の切り替え
$clock=[on|off]
時計の表示・非表示を切り替えます。
※[CTRL]を押しながらGUI表示切替アイコンをクリックで非表示。
■ スタートアップ機能
StreamingAssetsフォルダに"startup.txt"を設置すると、そこに記述された
シナリオコマンドを起動時に実行することができます。
※HachiViewer -> HachiVewer_Data -> StreamingAsset -> startup.txt
==============================
各種設定ファイル
==============================
■ スタートアップ設定: StreamingAssets/startup.txt
起動時に自動的に実行されるシナリオコマンドファイルです。
■ ショートカット設定: StreamingAssets/shortcut.txt
ショートカットキーを設定するファイルです。
フォーマットは下記のCSV形式です。
[キー] , [シナリオコマンド]
■ アクション設定: StreamingAssets/action.txt
自動アクション実行時($action=on)に実行されるシナリオコマンドのリストです。
ここに記述されたいずれかの行のコマンドが実行されます。カンマで区切ることで
複数のコマンドを記述することができます。
■ リアクション設定: StreamingAssets/reaction.txt
Youtubeコメント取得時のリアクションを記述します。
フォーマットは下記のCSV形式です。
[キーワード] , [シナリオコマンド]
■ カメラ位置: 拡張子-> .cam
カメラの位置情報を記述したファイルです。
カメラ撮影を実行すると、StreamingAssets/Picturesフォルダに生成されます。
ドラック&ドロップまたは、
$loadcameraコマンドを使って読み込むことでカメラ位置が移動します。
■ モデル位置: 拡張子-> .mdl
モデルの位置情報を記述したファイルです。ドラック&ドロップまたは、
$loadcamodeldataコマンドを使って読み込むことでモデル位置が移動します。
■ モデル編集情報: StreamingAssets/Poses/...
表情やポーズ・指の編集時に[SAVE]を実行すると、Posesフォルダに編集情報を
保存したシナリオファイルが生成されます。
Face.hvp -> 表情
Pose.hvp -> ポーズ
Finger.hvp -> 指
情報はシナリオコマンドで記述。テキストエディタで編集することができます。
■ Pcituresフォルダ(StreamingAssets/Picutre)
スクリーンショット撮影時に画像データ等が保存されます。
■ Scenarioフォルダ(StreamingAssets/Scenario)
シナリオを保存するフォルダです。Webから取得したシナリオデータはこのフォルダ
に保管されます。
■ Commandsフォルダ(StreamingAssets/Commands)
シナリオコマンドを保存しているフォルダです。
■ Imagesフォルダ(StreamingAssets/Images)
画像情報を保存しているフォルダです。
■ Posesフォルダ(StreamingAssets/Poses)
ポーズデータが保存されたフォルダです。Pose編集でSaveした場合、ここに保存されます。
"PoseNo[数字].hvp"という名称のファイルは[Pose]ボタンを押した際に順次呼び出されます。