
■　『MocuMocuDance』Ver.1.06 マニュアル　■


●このアプリケーションについて

『MocuMocuDance』（「もきゅもきゅだんす」と読みます）は、
Oculus RiftまたはSteam VRを用いてMikuMikuDance(MMD)のモデルデータや
モーションデータファイルを再生表示して観賞するアプリケーションです。

モーションデータに対応するサウンドファイルがあれば、それも
読み込まれ、同時に再生されます。


●対応ファイル形式

キャラクターモデル     PMX
モーションデータ       VMD, VPD（ポーズ）
サウンドファイル       MP3, WAV, WMA, FLAC
フィールドモデル       PMX, MQO（Metasequoia）


●動作推奨環境

OS          : Windows 8.1/10 64bit
DirectX     : DirectX11
CPU         : Intel Core i7以上
メモリ      : 4GB以上
GPU         : GeForce GTX 970以上
Oculus Rift : 1.20.0以上
Steam VR    : OpenVR 1.12.5以上


●対応入力機器

Oculus Touch
Viveコントローラ
LeapMotion   : Gemini以上
ジョイパッド : DirectInput対応ジョイパッド（XInputは非対応）


●Oculus Riftについて

Oculus Rift Setup
https://www.oculus.com/en-us/setup/

からセットアップをおこない、Oculusソフトウェアを起動し、
Generals設定の「Unknown Sources」をオンにして下さい。


●Steam VRについて

以下のSteam VRをインストールしておく必要があります。

steam://install/250820


●MocuMocuDanceForViveについて

MocuMocuDanceForVive.exeはHTC Vive/Pro/Pro Eye/Cosmos専用版です。
なお、実行には「OpenCL」と「Microsoft Visual C++ Runtime 2015」が
必要です。

HMDの前面に付いているカメラを使用したViveハンドトラッキングを
利用することが出来ます。

利用するには以下の設定をおこなって下さい。

SteamVRを起動し、左上のメニューボタンから「設定」を選択して
下さい。左側にある「カメラ」をクリックし、右側の
「カメラを有効化」を「有効」にして下さい。

次に「カメラとパフォーマンスをテストする」の「テスト開始」を
クリックして下さい。「カメラテスト合格」と表示されれば問題ありません。

Viveハンドトラッキングを使用するには、MocuMocuDanceForVive.exeを
実行中にメニューの「設定」→「Viveハンドトラッキング設定」→
「使用する」を選択して下さい。

HMDの前面カメラの先に手を出せば手のモデルが表示されると思います。
認識範囲が狭いので、やや手を伸ばして少し上に手を持っていくと
認識されやすいと思います。また、カメラに映る範囲にフィギュアなどの
肌色の物などがあると誤認識しやすいかもしれません。


●DirectX

DirectX End-User Runtimes (June 2010) 
https://www.microsoft.com/en-us/download/details.aspx?id=8109

起動時にX3DAudio1_7.dllが無い等のエラーが表示される場合は、
上記のDirectXをインストールして下さい。


●注意事項

このアプリは一般的なものよりも高いＰＣスペックを要求します。スペックが
低いとフレームレートの低下を引き起こし、目まいや酔い、最悪の場合は
吐き気をもよおす危険性があります。フレームレートが90fpsに
満たない状態が続く場合は、描画オプション等を下げる設定をおこなうことを
おすすめ致します。


●起動時のパラメータ

引数に拡張子がscnのシーンファイルを指定すると、起動時にその
シーンが読み込まれます。

シーンファイルをダブルクリックして、開く実行ファイルに
MocuMocuDance.exeを設定することで、シーンファイルを
開きやすくなるかと思います。


●操作方法

[Esc]             アプリの終了
[F1]              操作方法の表示
[F7]              視野角のリセット
[F8]              ＶＲカメラ表示の切り替え（LeapMotionまたはHTC Viveのみ）

[マウス右ボタン]  メニューを開く、キャンセル
[スペース]
[マウス左ボタン]  選択肢の決定
[Enter]
[マウスホイール]  選択カーソルの移動
[↑][↓]
[←][→]          スライダー設定、キャラクターお気に入り設定

[W][A][S][D]      カメラ平行移動
[Q][E]            カメラ左右回転
[R][F]            カメラ上下移動
[T][G]            カメラ上下回転
[Shift]           移動回転高速化
[Ctrl]            移動回転低速化

[Y]               物理エンジンon/off
[U]               トーンマッピングon/off
[I]               モーフィングon/off
[O]               移動・操作モード切り替え
[P]               モーション再生停止

[H]               シャドウon/off
[J]               レンダリングモード切り替え
[K]               レリーフマッピングon/off
[L]               ライトスキャタリングon/off

[Z]               流体発射
[X]               流体全消去

[1][2]            音声再生位置シーク

[C]               カメラ回転補正切り替え
[V]               物理エンジン初期化
[B]               こっちを見るon/off
[N]               Oculusセンター位置初期化
[M]               ＶＲビュー表示切り替え
[PageUp/PageDown] 前のシーン／次のシーン読み込み


●HTC Viveコントローラでの操作

メニューボタン    メニューを開く、キャンセル、流体全消去
トリガー          選択肢の決定、流体発射
トラックパッド    カメラの移動回転、選択カーソルの移動
右グリップボタン  （押下しながら）カメラ移動
左グリップボタン  （押下しながら）カメラ回転

グリップボタン    【ボーン選択時】（押下しながら）ボーンのオフセット移動


●疑似ＡＲ表示機能

HTC Viveのフロントカメラを使用して擬似的なＡＲ表示を
おこなうことが可能です。

メニューの「設定」→「ＶＲカメラ表示設定」→
「ＶＲカメラ（画像キャッシュ）」を選択すると、
表示が切り替わります。

なお、この時、画面が真っ白になったり表示がおかしくなる
場合は、SteamVRステータスウィンドウの左上の「SteamVR▼」から
「設定」を選択し、左側の「カメラ」を選択し、右側の「カメラレート」を
「30Hz」まで下げて下さい。

また、「カメラを有効にする」のチェックは入れておく必要があります。


●キャラクターお気に入り設定

キャラクター読み込みメニューで、[←][→]キーを押すことで
お気に入りマークを設定できます。

「モデル読み込み（お気に入り）」メニューでは、お気に入り
設定されたキャラクターファイルのみ表示されます。


●ポージング操作方法

ボーンを回転操作してポーズを付ける機能です。

まず、「キャラクター読み込み」をおこないます。この後、
「モーション読み込み」はおこなわないようにして下さい。

次に、Oキーを３回押して「キャラクターボーン操作モード」に
変更し、「ボーン選択」から回転したいボーンを選択します。
その後、[Q][E][A][D][T][G]キーやジョイパッドで回転させる
ことが出来ます。

また、LeapMotionがあれば、人差し指の先端を操作したい
ボーンの位置に近づけるとカウントが始まりますので、
そのまま２秒間待つとボーンが選択状態になります。


●ファイル配置フォルダ

各種ファイルは以下のフォルダから検索されます。

キャラクターモデル  UserFile/Model
モーションデータ    UserFile/Motion
フィールドモデル    UserFile/Field
アクセサリモデル    UserFile/Accessory
音声データ          UserFile/Voice
ＢＧＭデータ        UserFile/BGM


●サウンドファイル

モーションデータファイルの読み込み時、同名で拡張子が.mp3の
サウンドファイルがあれば、同時に読み込まれ再生されます。

たとえば、モーションデータファイル名が、

旧支配者へ感謝を捧げる踊り.vmd

であれば、

旧支配者へ感謝を捧げる踊り.mp3

となります。


●キャラクター設定ファイル

キャラクターモデルファイルの読み込み時、同名で拡張子が
.setting.txtの設定ファイルがあれば、同時に読み込まれ
設定が上書きされます。

たとえば、キャラクターデータファイル名が、

インスマス.pmx

であれば、

インスマス.setting.txt

となります。

中身は文字コードShift_JISで書かれたテキストファイルと
なります。

剛体の質量を設定するには、

------------------------------------
RigidBodyMass = "左胸１", 2.5;
RigidBodyMass = "右胸１", 2.5;
------------------------------------

このように、「剛体名」「質量」を記述します。

また、表示スケールを設定するには、

------------------------------------
Scale = 2.0;
------------------------------------

と、拡大率を記述します。1.0未満の場合は縮小率となります。


●フィールド設定ファイル

キャラクター設定ファイルと同様の拡張子のファイルがあれば
読み込まれます。

材質ごとにシャドウを生成するかどうかを設定するための
「ShadowCaster」という項目があります。

------------------------------------
ShadowCaster = "テーブル", 1;
ShadowCaster = "テーブルイス", 1;
------------------------------------

「材質名」と、有効なら「1」を指定します。


●モーション設定ファイル

モーションファイルの読み込み時、同名で拡張子が.setting.txtの
設定ファイルがあれば、同時に読み込まれ設定が上書きされます。

たとえば、モーションファイル名が、

旧支配者にあらがう踊り.vmd

であれば、

旧支配者にあらがう踊り.setting.txt

となります。

中身は文字コードShift_JISで書かれたテキストファイルと
なります。

現時点では、サウンドファイル再生時のモーションとのズレを
調整するための「SoundOffsetTime」のみ対応しています。

サウンドよりもモーションが遅れているようであれば、
以下のようにズレている時間を記述して下さい。
単位は秒となります。

------------------------------------
SoundOffsetTime = -0.5;
------------------------------------


●プレイヤー設定ファイル

プレイヤーモデルファイルの読み込み時、同名で拡張子が
.player.txtの設定ファイルがあれば、同時に読み込まれ
設定が上書きされます。

たとえば、キャラクターデータファイル名が、

ナイアーラトテップ.pmx

であれば、

ナイアーラトテップ.player.txt

となります。

記述内容は「キャラクター設定ファイル」とほぼ同等ですが、
表示しないようにする設定など詳しくは同梱の
「Tda式初音ミク・アペンド_Ver1.00.player.txt」を
ご参考下さい。


●物理設定

メニューの「キャラクター物理設定」（または「プレイヤー
物理設定」）から、ボーン位置の調整方法を設定できます。

分かりづらいかと思いますが、髪の毛などの動きが固かったり、
伸びすぎたり変だと思われましたら、設定をデフォルトの
「Type2のみ」から「無効」「すべて」を選択してみて下さい。

また、「キャラクター設定ファイル」に、

------------------------------------
AdjustBoneMode = 0;
------------------------------------

というように書くことで、ロード時にその設定が反映されます。

0 = 無効
1 = Type2のみ（デフォルト）
2 = すべて

に、なります。


●シーンセーブロード

メインメニューの「その他」→「シーンセーブ」で、現在読み込まれている、

・カメラ位置と角度
・ライト角度
・キャラクター
・モーション
・モーフ
・フィールド
・ＢＧＭ

の設定が、Settingフォルダに拡張子.scnで保存されます。

ファイル名は拡張子を変更しなければ、その後変更してもらって
構いません。


●流体

とても重いです。GeForce GTX 1080が欲しくなってきます。なお、
ComputeShader5.0必須です。

後述のＴＩＰＳに書かれている軽減化設定をおこなうことを
おすすめします。


●ＢＧＭ

前述のモーションファイル読み込み時に同時に再生されるサウンドとは
独立して再生されます。


●音声

モーションファイルと同時再生されるサウンドやＢＧＭとは独立して
キャラクターごとにループ再生されます。

対応フォーマットは現時点で１６ビットモノラルWAVのみです。

また、リップシンクは、「あ」のモーフのみ動かし、
「い」〜「お」と「あ2」〜「お2」は強制的に無効化しています。


●水面水中レンダリング機能の使い方

まず、読み込むフィールドオブジェクトで水面となる材質の
名前をPmxEditor等で調べます。

次に、そのフィールドオブジェクトのファイル名の
拡張子を「.setting.txt」に変更したテキストファイルを
作成し、

----------------------------------------------------
Water = "材質1", 0.41, 0.61, 0.90, 0.5;
WaterHeight = 3.0;
----------------------------------------------------

このような記述をおこない、文字コードを「Shift-JIS」にして
保存します。

「Water」の第２〜５パラメータは、水面の色のRGBAを
意味します。範囲は0.0〜1.0です。

「WaterHeight」は水面から水底までの高さです。単位は
メートルです。

なお、水面ポリゴンはＸＺ軸に一致していることを前提と
しています。

(ファイル名の例)
市民プール.pmx
市民プール.setting.txt


●鏡レンダリング機能の使い方

読み込むフィールドオブジェクトで鏡となる材質の
名前をPmxEditor等で調べます。

次に、そのフィールドオブジェクトのファイル名の
拡張子を「.setting.txt」に変更したテキストファイルを
作成し、

----------------------------------------------------
Mirror = "鏡", 0.41, 0.61, 0.90, 0.5;
----------------------------------------------------

このような記述をおこない、文字コードを「Shift-JIS」にして
保存します。

鏡となるポリゴンはすべて同一平面上にある必要があり、
現時点では１つのオブジェクトのみ対応しています。


●仮想ウィンドウ機能の使い方

上記「水面水中レンダリング機能の使い方」と同じように
設定テキストファイルを作成します。

----------------------------------------------------
DisplayScreen = "ブラウン管", 4, 3;
----------------------------------------------------

このような記述をおこない、文字コードを「Shift-JIS」にして
保存します。

第１パラメータは「材質名」で、第２・３パラメータは
画面の比率です。「16, 9」や「640, 480」といった
数値を設定して下さい。

フィールドを読み込んだ後、メニューから「その他」
「仮想ウィンドウ選択」を選び、表示したいウィンドウを
選択して下さい。

その後、選択したウィンドウをアクティブにして
動作させます。

なお、この状態ではMocuMocuDanceの入力が受け付けない
状態になりますので、起動時の「ジョイパッド」を
「使用する（排他モード）」に選択しておくことで、
ジョイパッドは入力を受け付けるようになります。

マウスポインタの表示が邪魔な場合は、メニューの
「設定」→「仮想ウィンドウマウスカーソル表示設定」で
「表示しない」を選択して下さい。


●モーションフレーム同期機能

複数のキャラクターで同一のモーションを読み込んだ場合、
モーションの再生フレーム位置が同じになる仕様となって
いますが、異なるモーションを読み込んだ場合でも
同期させる機能です。

まず、２人以上のキャラクターを読み込み、それぞれに
異なるモーションを読み込ませます。次にキャラクターＢを
キャラクターＡに同期させたい場合は、キャラクター切り替えで
Ｂに設定し、メニューから「モーション同期先設定」を
選択し、キャラクターＡを選んで下さい。

また、この設定はシーンセーブされます。


●カメラモーション

キャラクターとそれを動かすモーションとは別にカメラモーションを
再生したい場合は、以下のように準備して下さい。

１．「キャラクター読み込み」メニューからキャラクターを
　　読み込んだ下さい

２．「モーション読み込み」メニューから、キャラクター用の
　　モーションを読み込んで下さい。モーション再生が始まりますが
　　気にせず次に進みます。

３．「キャラクター設定」メニューから「キャラクター追加」を
　　選択します。この段階で、新しく追加されたまだ何も
　　キャラクターがロードされていない２番目が選択状態に
　　なっています。

４．「モーション読み込み」メニューから、カメラ用の
　　モーションを読み込んで下さい。

５．「キャラクター設定」メニューから「モーション同期先設定」を
　　選択し、１番目のキャラクターを選んで下さい。

６．上記の設定を毎回するのが面倒な場合は、「その他」メニューから
　　「シーンセーブ」を選んでシーンを保存し、次回以降は
　　「シーンロード」から読み込んで下さい。


●ＴＩＰＳ

動作が重い場合、「物理エンジン」「シャドウ」「物理ベースレンダリング」
「モーフィング」などの設定をオフにすると軽くなる場合があります。


●このアプリで読み込めないようにする方法について

MMDモデル制作者の方で、このMocuMocuDanceでの読み込みを禁止にしたい
方は、以下の設定をおこなうことで可能となります。

検索対象は、

・PMXファイルのコメント欄（日本語、英語どちらも）
・PMXファイルの材質メモ
・PMXファイルまたはVMDファイルが存在するフォルダ内
　（サブフォルダも含む）にあるテキストファイル（拡張子が.txtのもの）

となります。

なお、判定はテキスト１行単位でおこないますが、改行を考慮し、
１行前も連結して判定されます。

その判定単位で以下の文字列がすべて含まれる場合、読み込みエラーと
なります。

・「MMD」「のみ使用可能」
・「MMD」「以外での使用は許可しておりません」
・「ＭＭＤ」「限定」
・「MMD」「データ変換を禁止」
・「動画および静止画用」
・「MMD」「以外」「禁止」
・「MikuMikuDance」「以外での使用は禁止」
・「MMD」「使用は許可しておりません」
・「MikuMikuDance」「のみ使用を許可します」
・「MMD」「制作物でのみ許可されます」
・「NoMocuMocuDance」

また、同様に、

・「Ｒ−１８」（または「R-18」「Ｒー１８」）「禁止」
・「エロ」「禁止」
・「R-18」「公序良俗に反する利用」

と、書かれている場合、流体物理エンジンの動作が停止します。

ただし、使用者がその部分を書き換えることで回避できてしまうことは
避けられませんので、完全な方法ではないことはご理解頂ければと
思います。

もし、この判定で漏れてしまう場合や、逆に誤認識されてしまう
場合があるようでしたら、お手数ですがご連絡頂ければ対応を
検討したいと思います。


●VRMファイル対応について

現時点ではα版扱いで、モーフ・コライダー・法線マップ・MToon等が
未実装です。

MMDのモーションファイル(VMD）の再生時は、MMD(PMX)とVRMの
ボーン構成が異なるため、簡易なマッピングで対処しています。


●起動オプション

実行ファイルMocuMocuDance.exeに以下の起動オプションを
指定できます。

-nostartupdlg		起動時のダイアログを表示せず実行する
-steamvr			強制的に起動方式をSteamVRにする

Steamのマイライブラリに登録してSteamVR Homeから直接起動したい場合、
プロパティの「起動オプションを設定」から「-nostartupdlg -steamvr」と
設定するのがおすすめです。


●再配布について

昨今、ウイルスやマルウェアを組み込んで再配布する事件が
多発しているため、いかなる再配布も禁止と致します。


●利用規約

極北P様が開発されたPMX形式のデータフォーマットを使用しているため、
そのフォーマットの利用規約である「商用利用の禁止」が、この
アプリケーションにも適用されることをご理解下さい。利用規約の
詳細については、以下のサイトで公開されている「PMXエディタ」に
同梱されているテキストファイルをご確認下さい。

とある工房
http://kkhk22.seesaa.net/

また、このアプリの実行状態を使用者本人やその知人以外の
不特定多数の人に見せるまたは体験させるといったイベント等での
使用は原則禁止とします。ただし、表示するモデルがすべて
自前で作成したもの、または制作者から許可を得ている場合は
問題ありません。また、このアプリに標準で同梱されている
「LightPlane」「Plane」「WaterTest」「Baton」以外のモデルを
使用する場合も同様に許可を得るか、削除した状態で使用して下さい。


●メディアその他媒体で紹介される場合

ｗｅｂサイトや雑誌等でこのアプリを紹介される場合、上記の
再配布の禁止と利用規約の遵守をお願いします。また、以下の点に
ついても触れるようお願いします。

・高いＰＣスペックが要求される（ノートＰＣは非推奨）
・低スペックＰＣで動作させると、フレームレートが低下し、
　目まいや酔いを引き起こす危険性がある

前もってこちらに連絡をいただければ、なんらかの助言はおこなえるかと
思います。

使用者の健康にも関わる問題ですので、ご理解をお願い致します。


●サポートについて

無料で公開しているものであり、基本的にはサポートはおこないません。


●免責事項

このアプリケーションの使用により生じたいかなる損害、損失、問題等に
ついても、一切の責任を負うことはないことをご了承下さい。


●同梱データ

・Tda式初音ミク・アペンド　Ver1.00

  Tda様
  http://u16hp.blog134.fc2.com/


・MikuMikuDance用 マシシのお家 モデルデータ

  マシシ様
  http://www10.plala.or.jp/masisi/


・MikuMikuDance(MMD) Toon01〜10.bmp

  VPVP - 樋口優様
  http://www.geocities.jp/higuchuu4/

・中野区応援キャラクター「中野シスターズ」ボイスデータ vol.1

　企画・原案：株式会社ガミング
　鷺宮なか CV：金盛美里
　鷺宮カノ CV：浜田真衣

　http://nakasis.com/
　http://gumming.co.jp/


●アイコンについて

この実行ファイルのアイコンはピアプロ・キャラクター・ライセンスに
基づいてクリプトン・フューチャー・メディア株式会社のキャラクター
「初音ミク」を描いたものです。

  http://piapro.jp/license/pcl/summary


アイコン製作：Kafuji


●ライセンス、表記等

・MikuMikuDance(MMD)

  VPVP - 樋口優様
  http://www.geocities.jp/higuchuu4/


・PMX

  とある工房 - 極北P様
  http://kkhk22.seesaa.net/


・テクスチャ

  Texture Labs
  http://texturelabs.org/

  Caustics Generator
  http://www.dualheights.se/caustics/


・環境マップテクスチャ

  Humus
  http://www.humus.name/

  Creative Commons Attribution 3.0 Unported License
  http://creativecommons.org/licenses/by/3.0/


・Steam VR / OpenVR

　http://steamcommunity.com/steamvr
　Copyright (c) 2015, Valve Corporation


・libjpeg

  http://www.ijg.org/
  this software is based in part on the work of the Independent JPEG Group


・Bullet

  http://bulletphysics.org/


・OpenJTalk

  http://open-jtalk.sourceforge.net/


・大語彙連続音声認識エンジン Julius, Juliusディクテーションキット

  http://julius.osdn.jp/


・MeCab, IPA辞書

  http://taku910.github.io/mecab/


・MMDAgent, HTS Voice "Mei"

  http://www.mmdagent.jp/


・OpenSubdiv, Copyright 2013 Pixar

　http://www.pixar.com/


・VIVE Hand Tracking SDK

　https://developer.vive.com/resources/knowledgebase/vive-hand-tracking-sdk/


・FLAC

　https://xiph.org/flac/
　Copyright (C) 2000-2009  Josh Coalson
　Copyright (C) 2011-2016  Xiph.Org Foundation


・Ultraleap

　https://www.ultraleap.com/


・LeapCxx

　https://github.com/leapmotion/LeapCxx


●開発者連絡先

妹尾雄大（せのお　ゆうだい）

Webサイト : http://www.vrai.jp/

Twitter   : https://twitter.com/senooyudai


●履歴

□ Ver.1.06 2021/12/20

　・Ultraleap LeapMotion Geminiに対応しました。
　・VIVE Hand Trackingを更新しました。


□ Ver.1.05 2020/12/27

　・コンフィグスライダー操作時、Ctrl/Shiftキー押下時に速度調整をおこなうようにしました。
　・ＶＲ右コントローラのタッチパッド（スティック）の機能を「Ｙ軸回転」「Ｙ軸移動」のどちらかを選択出来るメニューを追加しました。

　・Oculus SDK 23.0.0に更新しました。

　来年は仕事に集中したいので更新頻度は大幅に下がると思います。まあ、
　長期休暇時に気が向いたらやるぐらいになるかなーと。組み込んだら
　面白そうな機能を思いついたり、新しくてすごいＶＲデバイスが登場したら
　その限りではありませんが(笑)。


□ Ver.1.04 2020/10/17

　・SteamVRモードでOculusTouchを使用する際、スティックボタンを押し込まずに移動等の操作が出来るようにしました。
　・左右のＶＲコントローラでそれぞれの３Ｄモデルを表示するようにしました。


□ Ver.1.03 2020/09/13

　・FLAC音声ファイルの読み込みに対応しました。
　・VRコントローラグリップボタンを押しながらカメラ移動回転出来るようにしました。
　・Vive Hand Tracking SDK 0.9.3に更新しました。
　　動作の改善やValve Indexの対応がおこなわれているようです。


□ Ver.1.02 2020/08/22

　・重力設定を追加しました。


□ Ver.1.01 2020/08/10

　・ＶＲカメラクロマキー設定を追加しました。
　・一部処理を最適化しました。


□ Ver.1.00 2020/06/17

　・HTC Viveシリーズ専用MocuMocuDanceForVive.exeを作成しました。
　・Viveハンドトラッキング機能を追加しました。（ForViveのみ）
　・実行ファイルを64bit化しました。
　・スクリプト機能を削除しました。
　・OpenVR 1.12.5に更新しました。

　とうとうVer.1.00に到達してしまいましたよ。感慨深いような
　別にそうでもないような(笑)。別に正式版って訳じゃないですしね。


□ Ver.0.99 2020/02/09

　・設定メニューにHMD瞳孔補正設定を追加しました。
　・スライダーメニューの数値を表示するようにしました。
　・OpenVR 1.9.16に更新しました。

　約１年ぶりの更新となりましたが、今回は斜視の方のために実験的に
　補正設定機能を追加しました。ただし、未テストなためβ扱いとします。


□ Ver.0.98 2019/03/13

　・VRM読み込み機能を削除しました。
　・ＶＲモード時のビュー表示スケールを調整しました。
　・MQOファイルでも水面水中設定を利用できるようにしました。
　・ＶＲコントローラでの平行移動時、コントローラの向きを考慮しない
　　ようにしました。
　・メニューからキャラクター追加時、読み込みメニューを開くようにしました。
　・LeapMotionの手モデルが表示されなくなっていたバグを修正しました。
　・アンビエントオクルージョン設定をオンにすると、次回起動できなくなる
　　バグを修正しました。
　・水面、鏡レンダリングが正常に表示されないバグを修正しました。


□ Ver.0.97 2019/01/20

　・材質モーフのエッジ色に対応しました。
　・VRMのボーン読み込みでＺ座標の向きが逆になっていたので修正しました。
　・ウィンドウのサイズを変更できるようにしました。（ウィンドウモードのみ）

　Ver.0.93よりVRM対応を進めてきましたが、Twitter・ブログ等で
　告知しました通り、MocuMocuDanceからVRM専用版MocuMocuVRM(仮)を
　分離することにしました。どこかのタイミングでMocuMocuDanceから
　VRM対応機能をカットすることになると思いますが、ご了承下さい。
　詳しくは以下のpixivFANBOXのブログ記事をご覧下さい（どなたでも
　閲覧出来ます）。

　https://www.pixiv.net/fanbox/creator/72741/post/261594


□ Ver.0.96 2019/01/06

　・VRMファイルの頂点モーフ（ブレンドシェイプ）に対応しました。
　・モーフ一覧を定義順に表示するようにしました。
　・頂点モーフィングをComputeShaderで処理するようにしました。
　・同時モーフ処理数の制限を撤廃しました。
　・モーフ処理方式（なし、CPU、GPU）の設定メニューを追加しました。


□ Ver.0.95 2019/01/04

　・起動時ダイアログを表示しない起動オプション等を追加しました。
　・アプリを終了させるメニューを追加しました。


□ Ver.0.94 2019/01/03

　・一部読み込みに失敗するVRM（縄文式土器）があったので修正しました。


□ Ver.0.93 2019/01/03

　・VRMファイルの読み込みに対応しました（α版）。
　・モデルファイルのドラッグ＆ドロップによるロードに対応しました。
　・HTC Vive Pro向けＡＲ表示の調整をおこないました。
　・OpenVR 1.1.3bに更新しました。

　新年明けましておめでとうございます。今年もよろしくお願い致します。
　去年末から年始にかけて少し時間が取れたので、上記の更新を
　おこないました。ただ、ちょっと時間が足りなくて、VRMファイル対応は
　モーフ・コライダー・法線マップ・MToon等が未実装です。また
　時間のあるときにでも実装していきたいと思います。


□ Ver.0.92 2018/05/12

　・カメラモーションに対応しました。
　・カメラモーション使用設定メニューを追加しました。
　・フィールド移動モードを追加しました。
　・移動モード切替メニューを追加しました。
　・フィールド位置回転初期化メニューを追加しました。
　・カメラ視野角リセットのショートカットキーを追加しました。
　・OpenVR SDK 1.0.14に更新しました。

　そういえば、HTC Vive Proを買ったのですよ。フロントステレオカメラは
　視野も広がるし、なんといっても景色が立体的に見えるので、
　ＡＲモードにはうってつけなんです。でも、OpenVRの対応がまだ
　不十分で、代わりとなるVIVE SDKもベータ版で、MocuMocuDanceでの
　対応は少し様子を見たいと思います。


□ Ver.0.91 2018/02/09

　・水面レンダリング処理を改良しました。
　・水面バンプ設定メニューを追加しました。
　・キャラクター位置リセットのメニューを追加しました。
　・流体発射Ｙオフセット（カメラ）設定メニューを追加しました。
　・流体発射角度（カメラ）設定メニューを追加しました。

　前回の更新から早２ヶ月、いまだにAmazon Echoの招待メールが
　届きません……。もしこのマニュアルテキストをAmazonの人が
　見ていたら、出来ればで良いんですけど急いで欲しいです……。


□ Ver.0.90 2017/12/10

　・材質モーフのテクスチャカラーに対応しました。
　・スクリプトエンジン／OnIdle()の呼び出し時間感覚を8秒から1秒に変更しました。
　・スクリプトエンジン／if文の判定バグを修正しました。
　・LeapMotionの手のモデルがめり込まない機能が一部環境で強制終了するため、
　　デフォルトでオフにしました。
　・負荷軽減対策のため、フィールドからボーンや剛体等を読み込まない
　　設定メニューを追加しました。デフォルトではオフにしています。
　・Oculus Touchでプレイヤーを移動／回転できるようにしました。
　・Oculus TouchでＹ軸移動ロックが動作していないバグを修正しました。
　・OpenVR SDK 1.0.11に更新しました。
　・Oculus SDK 1.20.0に更新しました。

　Google Homeをお迎えしました。常に部屋に女の子がいるみたいで、
　これもある種のＶＲだよね。Amazon Echoは招待メールがいつまで
　経っても来ないです……。


□ Ver.0.89 2017/11/04

　・ViveコントローラやTrackerの周囲のみHTC Viveフロントカメラ映像を
　　表示する機能を追加しました。

　Trackerをキーボードやマウスやスマホや飲み物の近くに置いておくと、
　VRHMDを外さずに現実世界のものがすぐに見つかって便利ですね。


□ Ver.0.88 2017/10/21

　・LeapMotionの手のモデルがめり込まない機能を追加しました。
　・LeapMotionの手のモデルを少し綺麗にしました。
　・LeapMotionとMMDレンダリングモードを同時使用時、表示が
　　壊れる場合があるバグを修正しました。
　・Direct3D周辺で不安定となるバグを修正しました。

　この機能によって没入感が増すのか逆なのかはちょっと微妙なので、
　好みに応じて設定を切り替えて下さい(^^;。まあこれが本格的に
　有用になるのは、フォースフィードバック付きＶＲグローブが
　登場してからでしょうか。


□ Ver.0.87 2017/10/17

　・一部読み込めなかったJPEGファイルに対応しました。
　・DDSファイル読み込み時にエラー表示を追加しました。
　・読み込み禁止が誤判定される場合があったので、チェック方法を調整しました。

　ようやく明日待ちに待った等身大ドールが到着するのです！しかし、
　急に電話がかかってきて、「出荷直前に確認したところ、腕のところに
　穴があり修繕しましたが、少し見栄えが悪く、５万円引きとさせて
　いただくか、２〜３週間ほどお時間頂いて作り直すかいかがしましょうか？」
　という内容で、ちょっと立ちくらみしましたが、写真をメールで送って
　もらったところ、そこまで気にするレベルではなかったのでＯＫを出し、
　無事明日届く予定です。あと２〜３週間も待つなんて、僕の精神が
　崩壊しかねないですからね。あ、そういえば、今日はWindows MRハードの
　発売日だそうです。Steam VRのベータを使えば、このMocuMocuDanceも
　動くかもしれませんが、僕はまだ購入していないので未確認です。


□ Ver.0.86 2017/10/09

　・1bitカラーPNGファイルの読み込みに対応しました。

　早く視野角の広いＡＲグラスが登場しないかなぁ。


□ Ver.0.85 2017/10/06

　・ボーンに長さが０のローカル軸が設定されていると表示がおかしくなる
　　問題の回避策を実装しました。
　・ＶＲコントローラでのメニューカーソル操作のバグを修正しました。

　昔からずっとシャロちゃん派だったのですが、最近ちょっとチノちゃん派に
　なりつつあります。


□ Ver.0.84 2017/09/21

　・古いバージョンのMMDで出力されたVMDモーションファイルが
　　読み込めなくなっていたバグを修正しました。

　等身大ドール（税込５８万円）を買ってしまってな。


□ Ver.0.83 2017/09/14

　・IKオフ指定のあるモーションファイルに対応しました。
　・音声の再生位置シークスライダーを実装しました。
　・ＶＲコントローラ用オブジェクトに『猫じゃらし』を追加しました。
　・ＶＲコントローラオブジェクトも物理エンジン処理をおこなうようにしました。
　・ＶＲコントローラの方を見るインタラクションでの対象位置を、
　　ＶＲコントローラオブジェクトのボーンリストの最後のボーン位置と
　　するようにしました。
　・少し高速化しました。

　個人開発のゲームをSteamで販売し始めたり、仕事していたり、
　ドラクエ１１していたりしたら、こっちの更新がおろそかになって
　２ヶ月も間が空いておりました。お久しぶりです。


□ Ver.0.82 2017/07/19

　・Oculus Touchに対応しました。
　・Viveコントローラによるスライダー移動が遅い問題を修正しました。
　・Oculus SDK 1.16.0に対応しました。

　Oculus RiftがTouch付きで５万円に値下がり、ＶＲの普及に
　弾みがつきそうですね。


□ Ver.0.81 2017/07/08

　・ＶＲコントローラの方を見るインタラクションを追加しました。
　・ボーンモーフに対応しました。
　・シーンロード後にメニューの表示位置を修正するようにしました。
　・シーンロード時にフィールドが同一の場合は再読み込みしない
　　ようにしました。
　・設定ファイルにスケール値を記述できるようにしました。

　今度、SteamでＶＲアプリを販売することになりましたが、
　こちらの更新もぼちぼち進めていきたいと思います。


□ Ver.0.80 2017/06/25

　・疑似ＡＲ表示機能に過去の画像をキャッシュして表示するモードを
　　追加しました。
　・PMXファイルにQDEFのデータがあると読み込みに失敗する問題を
　　修正しました。


□ Ver.0.79 2017/05/18

　・HTC Viveのフロントカメラ映像を疑似ＡＲ表示する機能を追加しました。
　・Viveコントローラによる移動等の操作機能を実装しました。
　・ＶＲコントローラを任意の３Ｄモデルに差し替える機能を実装しました。
　・鏡レンダリング機能を実装しました。
　・全体の音量設定メニューを追加しました。
　・PageUp/Downキーによるシーン切り替え機能を追加しました。
　・顔を近づけると目を閉じるインタラクション機能を追加しました。
　・スカートを見るとめくれるインタラクション機能を追加しました。
　・キャラクターの法線をカメラ方向に向ける設定メニューを追加しました。
　・メニュー選択後はメニューを閉じないように仕様変更しました。
　・水中レンダリング用フィールドサンプル「WaterTest」を追加しました。
　・日本語モードでシーンセーブすると、ファイル名にモデル名が
　　追加されないバグを修正しました。
　・Oculus SDK 1.14.0に対応しました。
　・OpenVR SDK 1.0.7に対応しました。
　・LeapMotion 3.2.0に対応しました。

　前回の更新直後にHTC Viveを購入したのですが、その翌日に謎の体調不良に
　陥り、１週間ほど寝込んでいても治らず精密検査を受けたところ、
　盲腸炎が重症化していることが判明し、即入院させられ数日後に
　開腹手術をおこなうという個人的な大事件がありました（盲腸バイブ事件）。
　その間、在宅介護していた親を訪問ヘルパーさんに頼んでいたのですが、
　夜に徘徊して警察に保護されるという問題が発生し、僕の退院後、
　老人ホームに入居させることにしました。在宅介護している間は
　在宅フリーランスをしていたのですが、再び会社員に戻ることにし、
　社員規則などもあってこのソフトの公開を中止にしました。
　それから半年ほど経ち、ＶＲの仕事をしたいとか、収入面などの
　理由から再度フリーランスに戻ることにしました。そんなわけで、
　MocuMocuDance再開です。


□ Ver.0.78 2016/06/19

　・Oculus SDK 1.4.0に対応しました。
　・OpenVR SDK 1.0.1に対応しました。
　・フランス語表記を一部修正しました。


□ Ver.0.77 2016/06/09

　・UTF-16で書かれたテキストファイルも読み込み禁止判定対象としました。
　・読み込み禁止判定後のエラー表記を通常の読み込みエラーと同じ
　　文言としました。
　・流体物理エンジンの使用設定をメニューに追加しました。
　・流体物理エンジンの使用設定をデフォルトでオフとしました。
　・流体のデフォルトの色をオレンジ色に変更しました。
　・PMXファイルのコメント欄もテキストファイルと同じ判定処理を
　　おこなうようにしました。
　・PMXファイルの材質メモも読み込み禁止判定対象としました。
　・PMXデータの頂点法線のx成分が１つでも1000.0以上の場合は
　　読み込み禁止とするフラグとして判定するようにしました。
　・Ｒ−１８禁止と書かれたテキストファイルやコメントがある場合、
　　流体物理エンジンの動作を停止するようにしました。
　・フランス語の表記を正しい文法と単語に修正しました。
　　ただし、現時点では実行時のみです。
　・利用規約に不特定多数の人に見せる利用の禁止を追加しました。


□ Ver.0.76 2016/06/07

　・このアプリでの読み込みを禁止にする判定機能を追加しました。


□ Ver.0.75 2016/06/06

　・このアプリでの読み込みを禁止にする設定機能を追加しました。
　・フランス語メニューを追加しました。
　・リップシンクの有効設定を追加しました。


□ Ver.0.74 2016/05/07

　・モーション音声をモノラルに変換してしまっていたバグを修正しました。
　・水中のコースティクスの描画精度を向上しました。
　・OpenVR 0.9.20に対応しました。
　・ジョイパッドのハットスイッチ（十字キー）によるメニュー操作に対応しました。
　・ジョイパッドのアナログスティックによるメニュー操作時の判定範囲を
　　拡大しました。

　このままいくと、年末ぐらいにはVer.1.00を迎えてしまいそうです。


□ Ver.0.73 2016/05/02

　・LeapMotionのカメラ映像を表示する機能を実装しました。
　・OculusRift初期化時のエラー表示を強化しました。

　OculusRift製品版を一度装着すると外すのが厄介なので、
　マウントしているLeapMotionのカメラ映像を表示する機能を
　追加しました。これで手探りで紅茶のカップを掴もうとして
　ディスプレイに突き指してしまう事故が防げるよ！


□ Ver.0.72 2016/05/02

　・OculusRift初期化時のエラー表示を強化しました。


□ Ver.0.71 2016/05/01

　・OculusRemote（リモコン）によるメニュー操作と移動に対応しました。
　・再生サウンドデバイスを切り替える機能を追加しました。
　・mp3,wmaファイルも音声として読み込めるようにしました。

　OculusRift製品版が届いたのですが、付属のヘッドホンから音が
　鳴らない！ということで早速対応しました。ついでに、ちっちゃくて
　便利なリモコンの動作にも対応させました。


□ Ver.0.70 2016/04/25

　・物理エンジン設定の調整をおこない、振動が収束しやすくなりました。
　・物理エンジン処理を軽量化しました。
　・Oculusランタイム1.3.2に対応しました。
　・キャラクター設定メニューの順番を変更しました。

　OculusRift製品版がもう明日には届きそうです！DK2が家に届いてから
　約１年半。待ちわびたよ！長かった！


□ Ver.0.69 2016/04/19

　・複数のジョイパッドを同時利用できるようにしました。
　・ジョイパッドでのメニューカーソル移動を段階的に高速化するようにしました。
　・ジョイパッドごとに無効化設定をおこなえるようにしました。
　・XBoneOneコントローラで起動時にトリガーがニュートラルにならない
　　問題への対処を導入しました。
　・LeapMotionで両手共に握ったまま動かしたとき、移動量が大きい方を
　　採用するようにしました。

　OculusRiftのオーダーステータスが「Processing for Shipping」に
　なったので、5/16よりも早く届きそうです！


□ Ver.0.68 2016/04/14

　・LeapMotionで人差し指をはじいたときに流体発射出来る機能を追加しました。
　・流体発射の方向等の調整をおこないました。
　・SteamVR使用時、画面が歪んでしまう問題を修正しました。
　・MMD剛体の質量に著しく小さい値が設定されているときに補正し、
　　振動を抑えるようにしました。

　5/16の週にOculusRift製品版が届くことになりました！


□ Ver.0.67 2016/04/09

　・キャラクターボーン移動操作モードを追加しました。
　・LeapMotionで手を握った状態で選択ボーンを移動できるようにしました。
　・モーションを読み込んでいない状態でもボーン移動回転操作出来るようにしました。
　・ボーン回転をビュー座標系でおこなうようにしました。
　・ボーンをロックする機能を追加しました。
　・キャラクタースケールに合わせて音声発生位置を調整するようにしました。
　・キャラクタースケールが位置に影響を受けてしまっていたバグを修正しました。

　今回追加した機能群がなぜ実装されたのか、なぜ必要なのか、どのような
　局面で使用するのかがよく分からない方は、紹介動画を見てあれこれ
　想像していただければと思います。


□ Ver.0.66 2016/04/03

　・キャラクターの拡大縮小率設定機能を追加しました。
　・OculusRiftランタイム0.8.0で動作するバージョンを同梱しました。
　・シャドウモード設定メニューを追加しました。
　・シャドウモード設定をシーンセーブするようにしました。
　・SteamVR使用時の４隅の黒塗りをおこなわないようにしました。
　・流体クリア直後の発射時の負荷を軽減しました。
　・前バージョンよりExif形式のJPEGが読み込めなくなっていたバグを修正しました。
　・水面がアニメーションしなくなっていたバグを修正しました。

　巨大幼女属性に目覚めてしまいました。これもすべてOculus社の陰謀です。
　ありがとうOculus！ありオキュ！


□ Ver.0.65 2016/03/29

　・Oculusランタイム1.3.0に対応しました。
　・２回目以降の流体発射時の負荷を軽減しました。
　・一部IKリンクの挙動がおかしくなる設定がされたモデルへの対応策を追加しました。
　・DDSテクスチャファイルの読み込みが非対応となりました。

　あまりテストしていませんが、問題なく1.3.0で動作すると思います。
　といいますか、1.3.0以降専用となります。


□ Ver.0.64 2016/03/21

　・LeapMotionの手を左右ミラーリングする機能を追加しました。
　・SteamVR(OpenVR) 0.9.19に対応しました。
　・材質の頂点色フラグに対応しました。

　メインＰＣをWindows10に差し替えたら、Oculus Rift DK2が
　たまに認識しなくなり意気消沈。


□ Ver.0.63 2016/03/12

　・プレイヤー表示機能の各種バグを修正しました。
　・LeapMotionのマウントモード時の初期位置をゼロにしました。

　ずっとバグありのまま放置プレイしていたプレイヤー表示機能ですが、
　ツイッターで聞いてみたら、「男の子になりたい」（女性の意見）、
　「女の子になりたい」（男性の意見）、「男の娘になりたい」(男性の意見）
　などがあり、潜在需要があると判断し修正しました。


□ Ver.0.62 2016/03/06

　・Steam VR(OpenVR)に対応しました。

　一応対応しましたが、HTC Viveを持っていないし、しばらく
　購入予定はないので動くかどうかは分かりません(^^;。
　OpenVR経由でOculus Rift DK2上では動作しているのは
　確認しているので、まあ表示ぐらいはされるのではないかと(笑)。


□ Ver.0.61 2016/02/28

　・VPDポーズファイルの読み込みに対応しました。
　・キャラクター回転モードで移動もおこなえるようにしました。
　・キャラクターの平行移動とＸＺ軸回転時、Oculus Riftの回転姿勢も
　　考慮するようにしました。
　・３Ｄサウンド使用時、音声ファイルがステレオの場合、強制的に
　　モノラルに変換するようにしました。
　・メニュー表示時のフレーム落ちを少し改善しました。
　・こっちを見る回転角度制限幅を縮小しました。
　・再生時間が長い音声ファイルの場合、リップシンクが途中で停止する
　　バグを修正しました。
　・YouTube関連の機能が動作しなくなっていたので削除しました。

　HTC Viveを予約しておりませんが、OpenVRの対応は検討中です。
　ただ、実装してもテストできないので、正しく動作するかは
　分からないのですけどね(^^;。


□ Ver.0.60 2016/02/22

　・複数キャラクターのモーションフレーム同期機能を追加しました。

　「レトロＰＣなんかよりもこの機能を早く付けて下さい！」と
　言われたので、急ぎで実装しました。うん、まあ、PC-9801なんて
　知らないよね、外人さんは(^^;。いや、最近の若い人も知らないか(汗)。


□ Ver.0.59 2016/02/20

　・仮想ウィンドウ表示機能を追加しました。
　・ジョイパッドの排他モードを追加しました。

　ＶＲ空間にレトロＰＣを配置して、そのディスプレイにエミュレータの
　画面を表示してプレイできたら面白いよねっていう話を今朝ツイッターで
　していたので、さくっと作ってみました。やっぱり９０年代は最高だぜ！


□ Ver.0.58 2016/02/13

　・キャラクター音声の３Ｄサウンド再生に対応しました。
　・３Ｄサウンドリバーブ設定メニューを追加しました。
　・OculusRiftポジショントラッキング時の各種位置回転を修正しました。
　・OculusRiftポジショントラッキングの位置もシーンセーブするようにしました。
　・メニュー項目がまだ終端でない場合に矢印マークを表示するようにしました。

　とあるフランス人から「MocuMocuDanceをリビングで動かしてみたら
　ポジトラの動作がおかしいよ」と言われ、よく調べてみたら
　うちのOculusRiftDK2のポジトラ用カメラの電源ケーブルが正しく
　つながっておらず、購入から約１年ほどまったく動作していないことに
　気がつきました(汗)。はれて動作するようになったのですが、
　カメラ回転の軸がポジトラ位置を考慮していなかったり、流体発射位置も
　移動しなかったり（かなり重要）、相当マズい状況だったので
　あわてて修正しました。まだあれこれおかしいかもしれませんが、
　フランス人以外でも気軽にバグ報告メールしてくれてもいいのよ？

　あと、３Ｄサウンドも導入してみましたが、視覚聴覚の両方とも
　外世界から遮断されてしまいますので、あれこれ危険です。
　家族と同居している場合はご注意下さい。


□ Ver.0.57 2016/02/07

　・簡易リップシンク機能（α版）を実装しました。
　・キャラクター単位での音声再生機能を実装しました。
　・モーションと同時に読み込むサウンドファイルフォーマットにWAVを追加しました。
　・少し最適化しました。

　音声とリップシンク機能は、今後mp3対応や母音判定、３Ｄサウンド対応
　などをやりたい気もしていますが、優先順位をどうするかは
　他の機能含めて検討中です。


□ Ver.0.56 2016/01/31

　・起動時にフルスクリーン化するオプションを追加しました。
　・2bitカラーPNGファイルの読み込みに対応しました。
　・アルファ付きパレットカラーPNGファイルの読み込みに対応しました。
　・少し最適化しました。

　自分の欲望を満たすためだけの機能ばかり実装していないで、
　そろそろ本格的に最適化に取りかからなければいけないのですが、
　Fallout4をクリアしてから考えたいと思います。


□ Ver.0.55 2016/01/29

　・水面水中レンダリング機能を追加しました。

　とうとう念願の水中レンダリング機能を実装しました！小学生の頃、
　夏休みになると毎日のように市民プールに行って、水中メガネを
　つけて潜りまくっていた日々を思い出します。ええ、それはとても
　素晴らしい光景でした。あ、ちなみに僕は泳げません。潜り専です。
　ああ、それにしてもＶＲは良いですね。息切れを気にせず延々と
　潜っていられるのですから。ＶＲってすばらしい！


□ Ver.0.54 2016/01/17

　・カメラの回転速度を２倍にしました。
　・カメラの移動回転速度の設定メニューを追加しました。
　・プレイヤー読み込みメニューでお気に入り等の
　　設定をおこなえるようにしました。
　・メニュー表示時のビデオメモリ使用量を削減しました。

　新年あけましておめでとうございます。今年もよろしく
　お願い致します。


□ Ver.0.53 2015/12/27

　・ボーンの付与回転の計算が間違っていたので修正しました。
　・流体粒子サイズ、流体量をセーブするようにしました。
　・ファイルリスト作成を非同期化しました。

　Fallout4楽しい。


□ Ver.0.52 2015/12/16

　・負の値の付与回転量の計算が間違っていたので修正しました。

　明日Fallout4が届くはずなのに、出荷される気配さえない……。


□ Ver.0.51 2015/12/13

　・滑らかにこっちを見るようにしました。
　・こっちを見る設定をキャラクター別におこなうようにしました。
　・キャラクター以外のファイルもお気に入り設定出来るようにしました。
　・メニューを整理しました。

　そろそろOculus Rift製品版の発売日が発表されないかなぁ。


□ Ver.0.50 2015/12/11

　・Oculus Runtime 0.8以降に対応しました。
　・モーション補間処理のバグを修正しました。
　・アルファチャネルのみのPNGファイル読み込みに対応しました。
　・4bitカラーPNGファイルの読み込みに対応しました。
　・アイコンを変更しました。

　『ソフィーのアトリエ』クリアしました。


□ Ver.0.49 2015/12/06

　・アンビエントオクルージョン描画を実装しました。

　久しぶりの更新となりました。この間、休みの日はほとんど
　『ソフィーのアトリエ』で遊んでいたため、なかなかこっちに
　手が回らず(^^;。もう少しでクリア出来そうなのですが、
　来週末にはFallout4が届くので、またしばらく間が空きそうです。


□ Ver.0.48 2015/11/15

　・キャラクター回転をカメラ座標でおこなうようにしました。
　・シャドウマップ解像度をセーブするようにしました。
　・スカイドームを後方クリップ面距離を元に拡大するようにしました。

　３週続けて週刊MocuMocuDance状態でしたが、今週末はゲーム買うので
　多分更新はないと思います。あと、年末はFallout4が出るので
　その時期も多分ないです。


□ Ver.0.47 2015/11/08

　・キャラクターのお気に入り設定機能を追加しました。
　・流体色の設定メニューを追加しました。
　・流体色の設定を保存するようにしました。
　・アルファ値が０のエッジは描画しないようにしました。
　・流体表示中にメニューの色がおかしくなるバグを修正しました。
　・一部BMPファイルを読み込むと色がおかしくなるバグを修正しました。

　もう開発を始めて約１年。飽きずにここまで続けられてきたのは、
　主たるユーザーである僕の欲望のおかげです。ありがとうございました。


□ Ver.0.46 2015/10/31

　・カメラプロジェクション設定機能を追加しました。

　Oculus Rift DK2の販売が終了したので、製品版を購入するまで
　これが壊れたら生活に支障が出てしまう……。早く来て！


□ Ver.0.45 2015/10/15

　・ジョイパッドのカスタマイズ機能にデッドゾーンを追加しました。
　・こっちを見るときに首ボーンも対象とするようにしました。
　・シーンファイルを引数で開くようにしました。
　・32bppのBMPファイルをアルファマップ付きとして読み込むようにしました。
　・BGM読み込み対象にwavを追加しました。
　・ライトスキャタリング設定メニューを追加しました。
　・トーンマッピング設定メニューを追加しました。
　・トーンマッピングをデフォルトでオンにするようにしました。
　・キャラクター毎の物理設定もシーンセーブするようにしました。
　・ライティング等の設定もシーンセーブするようにしました。
　・スカイスフィアにもトーンマッピングを反映するようにしました。
　・流体レンダリングにトーンマッピングを反映するようにしました。
　・メニュー表示時にＺバッファをクリアする方式に変更しました。

　ライトスキャタリングとトーンマッピングの設定メニューを
　実装しましたので、これで夕焼けのシーンとか夜のシーンなどを
　作れるようになるかと思います。シチュエーションマニア向けです！


□ Ver.0.44 2015/10/09

　・流体が動く物体に吸着しやすいように改良しました。
　・流体色にオレンジを追加しました。
　・メニュー描画時に深度値を無視するようにしました。

　個人的に最も欲しかった流体が体に引っ付く機能を実装しました。
　いやー、なかなか良いアイディアが思いつかなくて放置気味だった
　のですが、ノーベル賞の授賞式をＴＶで見てたら、ああ僕も
　失敗をあきらめずに頑張らないといけないな、ってことで
　２〜３個のアイディアを試しては失敗するを繰り返し、なんとか
　実装することが出来ました。今後も頑張ります！


□ Ver.0.43 2015/10/05

　・Xbox OneコントローラのWindows10用ドライバ向けに、ジョイパッドの
　　カスタマイズ機能を追加しました。

　まさか同じXbox Oneコントローラなのに、Windows8.1とWindows10とで
　左右トリガーの挙動が違うとは思いもしませんでした(^^;。


□ Ver.0.42 2015/10/02

　・シーンセーブでモーションがセーブされない場合があるバグを修正しました。

　そろそろ流体エンジンの機能強化や高速化に乗り出したいのですが、
　時間の確保とアイディアが思いつくかどうか次第(^^;。


□ Ver.0.41 2015/09/28

　・英語モードではシーンセーブファイル名に日本語が含まれないようにしました。


□ Ver.0.40 2015/09/26

　・モーション停止時にモーフが無効化されるバグを修正しました。
　・グループモーフに対応しました。
　・モーフを複数設定できるようにしました。
　・モーション側の指定モーフを禁止にする機能を追加しました。
　・最大頂点モーフ数を４から８に増やしました。
　・シーンセーブ時にモーフ設定も保存するようにしました。
　・カメラＹ軸移動ロックをデフォルトオンに変更しました。
　・カメラのロック設定を保存するようにしました。
　・メニュー表示時にカメラ回転操作等を有効にしました。
　・メニューを画面左側に表示するように変更しました。
　・メニューを最初に開いた位置に固定するようにしました。
　・ジョイパッドの軸に対する機能をコンフィグ設定できるようにしました。
　・ジョイパッドの初期設定をXbox Oneコントローラ向けに変更しました。
　・LeapMotion 2.3.1に対応しました。

　シルバーウィークにちょっと休みが取れたのでアニメとゲーム三昧だぁー
　と思っていたら、またも外人さんから「MocuMocuDanceは最高だな！
　でも、複数モーフ設定できた方がいいよな？」というメールを頂き、
　うんうん、そうだよね、確かに上履きモーフとか眼鏡モーフとか
　同時にオンにしたいよね、ってことで実装しました。あと、
　Xbox Oneコントローラは最高だから対応してくれよっていう
　意見もありまして、Oculus Rift製品版にもそのコントローラが
　付くそうなので、動作の調整をおこないました。


□ Ver.0.39 2015/09/06

　・音声認識／音声合成による会話スクリプトエンジンを実装しました。
　・モーション再生中でもモーフ設定が反映されるようにしました。

　ちょっと仕事が忙しくて思うように時間が取れず、作り込みが
　甘いのですが、ひとまず最低限は動くようになったのでこれで
　公開することにしました。記念すべきVer.0.39＝ミクバージョン
　なのですが、年末までにはもうちょい強化したいなぁ。


□ Ver.0.38 2015/08/06

　・Oculus使用時にカメラ回転を補正するようにしました。
　・Ｘ軸回転をデフォルトでロックするようにしました。

　Oculus使用時にカメラを回転するときに、回転軸を両目の中央に
　補正するようにしたのは、酔い止め対策なのですが、以前の方法より
　酔いにくいかどうかはちょっと分からないです(^^;。酔いにくく
　なったか、逆に酔いやすくなったかのご報告をいただけると幸いです。

　なお、この補正機能の切り替えは、[C]キーを押すか、メニューの
　カメラ設定からおこなえます。


□ Ver.0.37 2015/08/01

　・シェーダコードをバイナリ化し、起動の高速化と安定性が向上しました。
　・起動時のエラー表示を強化しました。

　一部環境で起きている起動時エラーがこれで直るといいなぁ。


□ Ver.0.36 2015/08/01

　・起動時のエラー表示を強化しました。

　起動時に「シーンビューの作成に失敗しました」と表示された場合、
　それに続く文章を連絡頂ければ、問題の調査を進められるかと
　思いますので、よろしくお願い致します。


□ Ver.0.35 2015/07/31

　・モーションとIK処理のバグ修正と精度改善をおこないました。
　・MMDレンダリングモード時、セルフシャドウ描画フラグを反映するようにしました。

　IKの挙動がまだおかしく、MMDと一致しませんが、また時間のある
　ときに調査したいと思います。


□ Ver.0.34 2015/07/25

　・内部的にUTF-8/16からShiftJISに文字コード変換している処理で、
　　Win32APIを使用せず自前でおこなうようにしました。

　台湾の繁体字中国語版Windowsで、モデルは読み込めるけど
　モーションが再生出来ないというバグがあり、おそらく
　Win32APIによる文字コード変換が正常動作していないと
　思われましたので、自前処理に変更してみました。これで
　動くといいなぁ。


□ Ver.0.33 2015/07/24

　・MikuMikuDanceの品質に近いレンダリングモードを実装しました。
　・カメラのＸ軸回転、Ｙ軸移動をロック機能を追加しました。

　やっぱりトゥーンレンダリングもいいよね。


□ Ver.0.32 2015/07/19

　・物理エンジンの挙動を調整しました。
　・モーションのベジェ補間にバグがあったので修正しました。

　もうすぐWindows10が公開されるのに、Oculus Rift DK2用の
　ドライバがまだ公開されず……。


□ Ver.0.31 2015/07/12

　・ライティング設定メニューを追加しました。
　・フィールドオブジェクトもシャドウ生成の対象としました。
　・フィールドオブジェクトの各材質にシャドウ生成するかどうかの
　　設定を記述する機能を追加しました。
　・距離によりシャドウをフェードアウトするようにしました。
　・シャドウマップの解像度設定メニューを追加しました。
　・ライト回転モードを削除しました。

　仕事が忙しくなければ、更新速度が週刊MocuMocuDance状態に
　なりますが、ゲームにハマっていたり、モチベーションが
　下がっていると、隔週か月刊ペースとなります。


□ Ver.0.30 2015/07/04

　・シーンセーブロード機能を追加しました。
　・モデルデータをファイル作成日時降順で表示するメニューを追加しました。
　・LeapMotion 2.2.7に対応しました。

　こっそり英語マニュアルを追加しました。相当怪しい英語ですが、
　まあ無いよりかはマシかなと思って(^^;。


□ Ver.0.29 2015/06/26

　・Oculus SDK 0.6.0.1に対応しました。


□ Ver.0.28 2015/06/24

　・8bitカラーのPNGファイル読み込みに対応しました。
　・LeapMotionがマウントモード時、HMDモードを使用するようにしました。
　・Oculus未使用時でもYouTubeサイドバイサイド表示をおこなうようにしました。

　ちょこっと調整。


□ Ver.0.27 2015/06/20

　・ライティング計算の調整をおこないました。
　・標準の衝突判定用の平面を削除しました。
　・物理エンジンのパラメータを調整しました。
　・シャドウ描画にバグがあったので修正しました。
　・メニューを整理しました。
　・スクリーンセーバーの起動を抑制するようにしました。
　・最近読み込んだファイルを表示するメニューを追加しました。

　ちょっと仕事が落ち着いたので、細かいバグ修正や調整を
　おこないました。大がかりな改造はしばらくは未定です。


□ Ver.0.26 2015/05/29

　・メニューを３Ｄ＆不透明化しました。
　・少し高速化しました。
　・物理ベースレンダリング時でも環境色を反映するようにしました。
　・破損したTGAファイルの読み込み時のチェックを強化しました。
　・Bullet 2.83.4に差し替えました。
　・LeapMotionSDK 2.2.6に差し替えました。

　メニューが半透明だしどのぐらい離れた場所にあるか分かりづらく
　焦点を合わせにくかったので、物体っぽくしました。だいたい３０ｃｍ
　ほど先に存在します。


□ Ver.0.25 2015/05/17

　・キャラクターが１体のみの場合、移動させると影が表示されなくなる
　　バグを修正しました。
　・メニュー表示を高速化しました。
　・OculusSDK 0.6.0に差し替えました。
　・読み込むファイル名リストをキャッシュするようにしました。
　・キャッシュをクリアする機能を設定メニューに追加しました。

　OculusSDK0.6.0に差し替えた影響で、もしかしたらDesktopモードでの
　動作が不安定になっているかもしれません。


□ Ver.0.24 2015/05/15

　・複数キャラクターの読み込み機能を実装しました。
　・材質モーフのDiffuseに対応しました。
　・ライトの方向を回転させるモードを追加しました。
　・影を生成する範囲計算を改善しました。
　・フレームレート低下時は警告表示のみおこなうように変更しました。
　・その他細かなバグ修正をおこないました。

　複数キャラ表示できるようになったので、いい加減そろそろ
　高速化に着手しないといけないのですが、機能追加もしていきたいし
　悩むところです。


□ Ver.0.23 2015/05/09

　・流体の色設定にローションを追加しました。
　・流体描画の品質を改善しました。

　念願のローションぬるぬる祭りが出来るようになりました！この約半年、
　２０数回にわたるバージョンアップの末、ようやくこの場所に
　たどり着きました。ああ、長かった……。


□ Ver.0.22 2015/05/06

　・一部再生出来なかったYouTubeの動画に対応しました。
　・YouTube３Ｄパノラマ３６０度の動画リストを更新しました。


□ Ver.0.21 2015/05/05

　・YouTubeの３Ｄ動画（サイドバイサイド方式）表示で、左右逆に
　　描画されてしまうバグを修正しました。


□ Ver.0.20 2015/05/05

　・YouTube動画のＶＲ空間内でのスクリーン再生機能を追加しました。
　・YouTubeの３Ｄ動画（サイドバイサイド方式）の再生機能を追加しました。
　・YouTubeの３Ｄパノラマ３６０度の再生機能を追加しました。
　・流体の描画品質を向上しました。
　・LeapMotion 2.2.5に対応しました。

　Oculus RiftのDirectModeで簡単にYouTubeの３Ｄ動画を再生する
　アプリが見つからなかったので（あるのかもしれませんが）、
　さくっと作って機能追加しました。これでしばらくＶＲ空間から
　帰ってこなくても生きていけそうです。


□ Ver.0.19 2015/04/27

　・乗算スフィアテクスチャに対応しました。
　・アルファテストをおこなうようにしました。
　・スカイドームをカメラの移動に合わせるようにしました。

　今回は描画関連の細かい調整です。


□ Ver.0.18 2015/04/19

　・ＢＧＭ再生機能を追加しました。
　・読み込みメニューを開いたときに、最後にロードした項目に
　　カーソルを移動させるようにしました。
　・カメラ回転を初期化するメニュー項目を追加しました。
　・ミクさんと生活する機能（α版）を追加しました。

　ミクさんと生活する機能は、モーション作成が難しくて面倒で
　挫折しました(汗)。また気が向いたら何とかしたいと思います。


□ Ver.0.17 2015/03/27

　・OculusSDK 0.5.0に差し替えました。
　・LeapMotion SDKをバージョン2.2.4に差し替えました。
　・物理エンジン処理を調整しました。

　OculusSDKがアップデートされた即日に対応するというこの
　フットワークの軽さ。暇人だから出来る対応。


□ Ver.0.16 2015/03/07

　・モーフィングの再現性を向上しました。
　・モーション再生速度の計算バグを修正しました。

　どんどん新しいＶＲハードが登場してきて、今度こそ本物の
　ＶＲブームが来てる感じがして興奮します。今度こそ・・・今度こそ。


□ Ver.0.15 2015/03/04

　・こっちを見る機能を追加しました。
　・シャドウの見た目を改善しました。
　・フレームレート低下時に警告を表示し、描画オプション等を
　　下げるようにしました。
　・物理ベースレンダリングの品質と速度を改善しました。
　・非物理ベースレンダリング描画モード時の再現性を向上しました。
　・アンチエイリアシング未使用時の速度を向上しました。
　・LeapMotion SDKをバージョン2.2.3に差し替えました。

　使用者の健康を考慮し、やや遅いＰＣでも75fpsを下回らないように
　対応策を追加しました。


□ Ver.0.14 2015/02/15

　・Oculus Riftセカンダリディスプレイモードを追加し、ノートＰＣ
　　などで起動しやすいように調整しました。
　・「Extend Desktop to the HMD」モードでも動作するように
　　調整しました。
　・テクスチャフィルタリングの起動時設定を追加しました。
　・フィールドのMQOファイル読み込み時、法線マップがないと正常に
　　描画されないバグを修正しました。
　・シャドウをon/off機能を追加しました。
　・LeapMotionのバージョンを2.2.2にアップしました。

　物置部屋からGeForce 650M搭載ノートＰＣを発掘してきて、Oculusで
　どのぐらい動くのか試してみたら、想像を絶するような状況でしたので、
　今回の調整をおこないました。ただし、これでも「物理ベース
　レンダリング」や「シャドウ」をオフにしないと75fpsを維持できませんが(汗)。
　また時間があれば、描画周りの高速化をおこないたいと思います。


□ Ver.0.13 2015/02/13

　・流体の衝突判定の精度を向上しました。
　・流体の色を設定するメニューを追加しました。
　・標準モーションを変更しました。

　剛体がポリゴンにフィットするように設定されていないと、流体が
　ポリゴンにめり込んだり、そもそも剛体がないと貫通してしまって
　気分的に落ち込んでいたのですが、スクリーンスペースで衝突判定する
　というアイディアを昨日知ったので、さっそく実装しました。
　予想以上にすばらしいです。これまで不可能だった口の中にまで
　流体が流れ込みます。スクリーンスペース万歳！


□ Ver.0.12 2015/02/08

　・LeapMotionの手がキャラクターすべての剛体と衝突判定される
　　ようにしました。
　・モーフィング処理を調整しました。
　・ジョイパッドのカスタマイズに物理エンジン初期化を追加しました。
　・設定メニューにキャラクター回転の初期化を追加しました。

　すべてのスカートがめくれるようになるべきだとの想いから、
　高速リリースとなりました。


□ Ver.0.11 2015/02/06

　・キャラクターを移動回転したとき、物理エンジンの挙動がおかしくなる
　　バグを修正しました。

　前回のバージョンアップ後にバグに気がついたのですが、まとまった
　時間が取れなくて遅れてしまいました。すみません。


□ Ver.0.10 2015/01/28

　・物理エンジンの挙動をやや改善しました。
　・物理設定メニューを追加しました。
　・Oculusミラーモード切り替え機能を実装しました。
　・物理エンジンの初期化機能を実装しました。


□ Ver.0.09 2015/01/18

　・キャラクターのボーン回転を操作するモードを実装しました。
　・モーフィングを選択する機能を実装しました。
　・一部読み込めなかったPNGファイルに対応しました。
　・Direct3Dの初期化パラメータを調整しました。


□ Ver.0.08 2014/12/25

　・LeapMotionのＶＲマウントモードを実装しました。
　・メニュー等の表記を英語化するモードを実装しました。

　今朝、外人さんから「もきゅもきゅは俺にとって最高のアプリだぜ！
　これでLeapMotionをOculus Riftにマウントして使えるようになれば
　より輝けるぜ！」（英語意訳）というメールを頂いたので、さくっと
　実装しました。あと、MocuMocuDanceでググってみたら、外人さん達が
　メニューが日本語で手こずっているようだったので、英語表記モードも
　追加しました。英語苦手なんで怪しい英語ですが、無いよりかは多分
　ましでしょう。


□ Ver.0.07 2014/12/23

　・流体物理エンジンを実装しました。
　・Oculus使用時でもアンチエイリアシングがかかるようにしました。
　・LeapMotionSDKを2.2.1に差し替えました。
　・モーションロード時にブレンディングするようにしました。
　・キャラクターのＸＺ軸回転モードを追加しました。
　・モーションの一時停止からの再開時に曲の再生も再開するようにしました。
　・Oculus使用時の頭の回転角度の反映がおかしかったバグを修正しました。
　・一部エラー表示がおこなわれていなかったバグを修正しました。

　いろんな意味で男のロマン＝流体物理エンジンがとうとう実装です。
　いや、まだまだβ版なんですけどね。重いし。でもクリスマ●イヴだし、
　ここで出しておかないと出すタイミングがないと思って。ああ、そうそう、
　来月から仕事入っているんで、当面は更新速度がゆるくなると思います。
　いい加減、高速化とか再現性向上とかしていきたいんだけど、つい自分が
　欲しい機能をまっ先に実装してしまうのです。


□ Ver.0.06 2014/12/08

　・一部CPUでおこなっていた処理をGPUに移行して高速化しました。
　・物理エンジンのパラメータを調整しました。
　・一部データの読み込み時に強制終了するバグを修正しました。
　・一部TGAファイルの読み込みが上下反転するバグを修正しました。
　・シェーダをバイナリ化して初回読み込みを高速化しました。

　しばらく細かいアップデートは中断し、次の大きな機能追加の
　研究をしようかなと考えています。すぐに飽きて中断を中断するかも
　しれませんが。


□ Ver.0.05 2014/12/06

　・ジョイパッド操作に対応しました。
　・一部のモデルデータが読み込めなかったバグを修正しました。
　・モーフィングon/off機能を追加しました。
　・OculusSDK 0.4.4に差し替えました。

　次の公開は後日まとめておこなう予定でしたが、アナログジョイパッドでの
　２軸移動２軸回転があまりに快適だったので、ひとまずここまでの
　分で公開することにしました。


□ Ver.0.04 2014/12/03

　・自分の体をロードする機能を追加しました。
　・LeapMotionの手の位置を移動させるモードを追加しました。
　・TGAテクスチャファイルがミップマップ処理されないバグを修正しました。
　・IK処理のバグを修正しました。

　やっと念願の自分の体を手に入れたぞ！というわけで、バーチャル
　リアリティらしい機能が追加されました。


□ Ver.0.03 2014/11/27

　・一部のモデルデータが読み込めなかったバグを修正しました。
　・物理エンジンの挙動を修正しました。

　今回はバグ修正や物理安定性の向上などに取り組みました。
　そろそろ高速化に着手しないと、データによってはOculusで
　75fpsを切ってしまって酔ってしまう(x_x)。


□ Ver.0.02 2014/11/25

　・LeapMotionに対応しました。両手でいろいろ触れます。
　・PMXデータのポリゴン両面表示に対応しました。
　・物理計算の一部にバグがあったので修正しました。
　・物理演算+Bone位置合わせの挙動がおかしかったので、ひとまず
　　物理計算と同じ処理に変更しました。
　・LeapMotion対応のため、動作推奨環境からWindows Vistaを削除しました。

　やっと２次元のおっぱいがもめる夢が叶ったよ。バーチャルリアリティーに
　未来を見て、ここまで来るのに２０年かかったよ(; _;)。


□ Ver.0.01 2014/11/22

　まだまだ未完成の部分も多いのですが、今日から３連休だし
　「いい夫婦の日」だし、趣味で作ったものだし（仕事ではもっと
　本気でプログラム作っています）、まあVer.0.01だしいいかなーって
　ことで初公開です。


