--------------------------------------------------------------------------------
■DF40試作版
試作版です。
解凍して出来たファイルとフォルダを「痴漢鉄」フォルダへ上書きして下さい。
このファイルは試作版であり、正式な修正ファイルではありません。
--------------------------------------------------------------------------------
2009/09/02
[痴漢鉄_DF40_090902]はファイル構成として修正ファイル10までの修正項目も含む。
ただし、正式な物ではない為[痴漢鉄.exe][説明.txt][起動設定.exe]は含まれない。

--------------------------------------------------------------------------------
--------------------------------------------------------------------------------


--------------------------------------------------------------------------------
■ショートカット
Alt+F4　アプリケーション終了
ESC　緊急終了
BS　項目を隠す
Space　再生キャンセル(イベントシーンなどで)
F5　ソフトリブート(最初に戻る)
Ctrl+F5　ソフトリブート（デバック）
1,2,3,4　MAP表示切替
F1,F2,F3　視点切り替え
Num1,Num2,Num3　視点切り替え
Num4　平行投影切り替え
Num5　パースデフォルトに戻す

Ctrl+P　静止画撮影
RCtrl+P　静止画撮影（ダイレクトモード・デバック）
Ctrl+Shift+P　静止画撮影（画面コントロールを除外。３Ｄオブジェクトのみ再レンダ）
Ctrl+T　音声読上げ編集画面に移行
Ctrl+M　音楽再生コントロール画面
Ctrl+E　ポーズエディットモード（デバック・ポーズアシストoff）
Ctrl+Q　エコノミー(画質を低負荷モードに切り替える)
Ctrl+L　体型スライダー。使用時は[有効にする]を確認。オッパイカスタムと排他
Ctrl+O　各レイヤーのＯＮ／ＯＦＦ切り替え
Ctrl+F　FPSゲームメニュー(ゲーム中のみ)
Ctrl+H　アクションコマンドメニュー(ゲーム中のみ)
Ctrl+C　CPUモード
Ctrl+V　ファイルモード
Ctrl+I　拡張カラーカスタマイズ(カスタム以外で呼び出した場合は保存に注意)
Ctrl+A　着替(FPSゲーム中)(暫定機能)

▼スクリプト進行のクイック操作
RCtrl+apps //ラベルメニュー
RCtrl+Up //先頭
RCtrl+Down //終端
RCtrl+Left //前のラベルへ
RCtrl+Riget //次のラベルへ

▼ポーズエディット画面での操作
B　ボーンの表示を半透明に切り替え
N　キャラクターのワイヤーフレーム表示切替
M　地形のワイヤーフレーム表示切替
Ctrl+Z　アンドゥ
Ctrl+Y　リドゥ
D　選択中のボーンをデフォルト姿勢に
W　選択中のボーンでビューロック
Del　選択中のボーンのキーを空キー。
　非選択時は全てのボーンを空キーに。
　すべてのボーンが空キーの場合は、フレームを削除。

ボーン移動操作中
T　親座標でXY平面移動

ボーン選択中のマウスドラック操作
Ctrl　ロール優先
Z　Z軸優先
X　X軸優先
Y　Y軸優先
C　ワールドY軸優先

（Ctrlは左コントロールボタン、RCtrlは右コントロールボタンを押下）



--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
■メモ
▼暫定仕様とか
--------------------------------------------------------------------------------




--------------------------------------------------------------------------------
・材質のレイヤー間連動
・ボーンのレイヤー間連動
6と7は男性用として除外する特殊仕様
--------------------------------------------------------------------------------
LayerRefに限らず言える事だが、アドレスじか参照で処理を強引に完結させてる系の
機能は、
「単体で機能を完結させて動作が実現できる仕様」と、
「システム全体で見通した場合の安全性が保障される仕様」が異なる。

リードブースターと組み合わせると多分落ちる？

SpWork_SetUpWorkがロード後にコールされる筈だから
アドレスも更新されて行ける気がする
駄目な気もする
わからなな

--------------------------------------------------------------------------------
テンキーの数字で、メニューをダイレクトに選択する様に仕様変更。
Ｈシーンなどの操作で、キーボードだけでスムーズにコントロール出来る事を
期待して、暫定的に実用化してみる。


ポーズエディタなどで、視点をテンキーで切り替える機能と被ってるが・・・

--------------------------------------------------------------------------------
●モーフ関係の仕様
mP : 表示用モデル
m1 : 変形用基準位置モデル
m2 : 変形用移動位置モデル

mPとm1は頂点位置が同じで無ければ成らない。
仕様上、若干の位置の誤差が発生する事がある。
この誤差によって位置の異なる頂点を、検出対象とする為に、
厳密には同じ位置でなくても、非常に近い位置に存在する頂点を
同じ座標として扱う。敷居値はD3空間で0.0001以下で処理をしている。
メタセコイア上で、約0.01程度の距離と思われる。
PC性能にも拠るが、DirectXで保持される頂点がfloatである為、
余り高い精度は望めない。

mPとm1はUVが異なっていても良い。
表示用のmPにUV値が無くても、m1側にUV値が存在すれば
モーフィング時の頂点判定は可能。

mP内で同一座標に存在する頂点は、集束頂点として処理される。
表示用のmPモデル側は、表示の為にUVや法線の事情で頂点が分割される事が
予想される。
m1が座標のみで頂点の対応を検出した場合、mP側の頂点を拾いきれなくなる。
コレを避けるため、近接する頂点を集束頂点として、まとめる。

m1とm2は頂点数が同じでなければ成らない。
見た目上の頂点だけでなく、UVや、法線、メッシュの貼り方にも注意。


●モーフ関係で出現するエラー種別

・ID不明
m1、m2のUV不一致。
_baseに対する、変形後のモデルで、
同一のUVの座標が見つからなかった。

・座標収束限界
m1の頂点位置に近い頂点がmPから５個以上検出された。
モーフィング仕様上、近接頂点が４個までであれば、
集束点として同時に処理する事が可能。

・座標不一致
m1の頂点位置に近い頂点がmPから一つも検出されなかった。
動かすべき頂点が不明な場合、
製作者の意図と異なる挙動を未然に防止する観点からエラーとして報告する。


--------------------------------------------------------------------------------
2011/01
ポーズエディタ。Fキーでフレームスライダと切り替え処理。

--------------------------------------------------------------------------------
2011/01/22
マウススライダー改修。
ポーズエディタのフレームスライダー時には、マウスドラックで特定のバーのみ
動かせるように改良した。
--------------------------------------------------------------------------------
2011/01/21
ポーズエディタ仕様変更
モーションを上書保存した時の動作
旧：mdlからの相対パスで、最後に保存・読込したファイルパスで保存。
新：最後に保存・読込したフルファイルパスで保存。

従来仕様では、任意のローカルフォルダなどからモーションを読み込んだ場合には
上書き保存するとmdl内に同名で保存していたが、
新仕様では読込時と同じディレクトリの同ファイルに上書きする仕様になった。
--------------------------------------------------------------------------------
2011/01/18
_Rmat

//第１ﾊﾟﾗﾒｰﾀ　表示有無
//第２ﾊﾟﾗﾒｰﾀ　輪郭形式 0無し 1黒線 2カラー線 12材質直後に輪郭
//第３ﾊﾟﾗﾒｰﾀ　表示形式 0通常 1トゥーン 2ﾃｸｽﾁｬ+ﾄｩｰﾝ 3ﾄｩｰﾝB
//第4ﾊﾟﾗﾒｰﾀ QmapTex
//第5ﾊﾟﾗﾒｰﾀ Z 0通常　1無視　2参照のみ有効　3αチェック
 　4完全に透明の部分のみ透過
//第6ﾊﾟﾗﾒｰﾀ 0通常　1加算 ("0 p=1"ﾃｸｽﾁｬの材質との合成 0=通常 1=加算)
//  :で区切る DL=t / ﾏｯﾌﾟ指定 DL=m / カメラ連動 DLvec=+xx+yy+zz
//第7ﾊﾟﾗﾒｰﾀ CollarCUS2:カラーカスタム　CollarCUS2b:ﾊﾞﾝﾌﾟ強度可変
//第8ﾊﾟﾗﾒｰﾀ ADD:指定値で上書 REF:既存設定を参照
//第9ﾊﾟﾗﾒｰﾀ BmapTex


・ポーズエディタ
フレームを追加した際に、ボーンの移動属性が切り替わってしまい、
位置がズレる事があるバグの修正。

--------------------------------------------------------------------------------
2011/01/17
追加シナリオなどの画面のサムネ画像。
「.bmp」「_img.*」に加えて、
「.jpg」「.png」「.JPG」「.PNG」に対応。

カスタムアイテムの「_thumbnail.jpg」も対応。
「.png」「.JPG」「.PNG」を使用可能に追加。

--------------------------------------------------------------------------------
2010/12/04
ポーズエディッタを開いた時の、初期の視点回転位置を
画面中心から0番モデルの0番ボーンに変更。

2010/10/27
ポーズエディッタのボーン情報表示メニュー。
非操作だが、クリックで表示が止まる問題対策。

TABで非表示にした時に、各種メニューの操作も封印する仕様に。
--------------------------------------------------------------------------------
・ﾎﾞｰﾝ_可動ﾘﾐｯﾄ解除
仕様変更

ボーンが選択状態　→　選択されたボーンが対象
ボーンが非選択状態　→　全てのボーンが対象

--------------------------------------------------------------------------------
カスタムファイルが無い場合、自動的にデフォルト設定する処理は検討したが未対応。
これは本来、
> ユーザーがフォルダを操作した等で、モデルが見付からない場合、エラーメッセージ
であり、エラー時に自動的にデフォルト設定に戻ってしまうと、再びフォルダを元に
復元して設定を再現する時に不都合がある為に現状の仕様としている。
--------------------------------------------------------------------------------
・ポーズエディタ
フレームメニューで現在選択中のフレームに「*」が表示されないバグ
クリックした際にページが先頭に戻ってしまうバグを修正。
フレームが沢山追加されるとアドレス違反となるバグの対応。

・フレームエディタ
シークバーっぽいモノが追加。
最大フレーム時間が120以上の読み込みにも対応。
フレームエディタでは最大時間の延長は出来ないが、読み込み時に
最大値が編集最大値を超えている場合、編集最大値を延長する事で、オーバー分がカット
されない様にした。

・モーションフォーマット
一部を変更。互換性上の問題は無い。
モーションの書き出し時にデーターの無いキーを省略して、
書き込み時間と読み込み時間を短縮した。

本プログラムは２〜６程度のキー。40〜120程度のモーションをメインと考え設計されて
いる。ファイル内容の圧縮が、そのコストに対して明確な効果を挙げるとは考えられて
居なかった為。
また、昨今のハードディスクの性能を鑑みるに、容量の圧縮が齎す体感的効果は皆無で
あるとの判断でもある。
今回の処置は、将来的に未定機能により100000キーを扱う為の準備試験の対応。
--------------------------------------------------------------------------------
ポーズエディタ
フレームを削除した時の挙動を変更
従来：削除したフレーム番号にコピー
現在：削除した以降の番号をコピー

従来：123456→２番を削除→12345　２番以降がシフトして前に詰まる
現在：123456→２番を削除→13456　そのまま前に詰める
　外見上は詰めない「1 3456」の様に見える
　エディタ上はメニュー項目で表示されるので「13456」となるので
　外見上の違いは殆ど無い

言葉で説明し辛いが、処理的に詰める様になったのでデーター上は詰まらなくなったが
外見上は詰まって見えるので見た目上の変化は把握し辛いが詰まってないので
仕様が変わった事に留意されたい

--------------------------------------------------------------------------------
2010/09/12
\mdl\cnv
コンバート対象はこのフォルダに格納するべき。
デフォルトモーションや自作ファイルと別ける意図は、
不特定拡張子を指定する為、膨大なファイルから選択する事が
画面操作上困難であると考えた為。

--------------------------------------------------------------------------------
2010/07/20?
・ポーズエディタ関係。
トップから入った場合のメニューに簡易カスタムを追加。
モーションの保存に、タイムスタンプで新規作成が追加。
フォルダの表示を6→16に。

D→ボーンの位置・姿勢のリセット。
T→移動ボーンに変更。
　ホールド→親空間座標のZX移動。

TABで項目隠れる。
見て理解できない操作、ショートカット類は増やさない方針だったが、
ポーズエディタに関しては機能の複雑性から操作の複雑化は避けられず、
ある程度妥協が必要と思う。

・メニュー類。
マウスホイールでページの項目送り。
ホイールは視野率の変更と重複しているが、操作上大きな支障は無いと判断。

--------------------------------------------------------------------------------
2010/06/26
項目の一時非表示を、BSからTABに変更。

BSは将来的にキャンセルのショートカットにしたい考え。
項目非表示化はスペースキーも検討したが、スペースはゲームモードなどで
ジャンプや他の操作に割り振られている可能性があるので、
極力キーの重複を避けて操作の混乱を少なくする為に、特殊キーは別にする方針に。

--------------------------------------------------------------------------------
FPSゲーム。
マウス中ボタン（ホイールクリック）の武器変更メニューにデバック機能追加。

「Ctrl＋ボタン」ではボタン数が心許ない事と、覚え難い為。
FPSモードでしか使わない物の幾つかは此方に移したい。

マップ移動(FPSゲーム中)(暫定機能)

--------------------------------------------------------------------------------
2010/05/17
機能追加
Ctrl+A　着替(FPSゲーム中)(暫定機能)
FPSゲームのプレイ中に、即座に着せ替え画面を呼び出すコマンドを追加。
元々、着せ替え機能のスクリプトは、ゲームスクリプトと同時併用を考慮してない為、
ゲームが正常に継続できるか少々不安だが・・・


2010/03/13
機能改良
Ctrl+Shift+P　静止画撮影
撮影時に行き先ポイント非表示にした。

--------------------------------------------------------------------------------
2009/08/31
・カスタムモデルのフォルダが変更された場合のエラー対処
キャラクターカスタムで追加モデルを使用している場合、
フォルダ構成を変える等の操作によってモデルが読み込めなくなると、
カスタム時にエラーが発生して操作出来なく成る問題の対処。

一応、画面上にダイアログで警告メッセージを発して、
その後のスクリプト実行を切り替える処理を実装した。


・アンドゥの実装
ポーズエディタの編集中に、Ctrl+Zでアンドゥ機能、Ctrl+Yでリドゥ機能を実装した。

アンドゥ時に、多少座標が動いて見える事があるが、
これは視点操作の仕様とキー操作が重複している為。


・モーションの一部インポート機能
ﾓｰｼｮﾝLOAD_ﾎﾟｰｽﾞﾐｯｸｽ
現在編集中のポーズと合成します。
[mdl\preset_pose]フォルダ内から選んだファイルを読み込みます。

事前にポーズを保存して[mdl\preset_pose]フォルダに入れておく事で使用可能です。
ファイル名が同じbmpが無いとメニューに表示されない点に注意です。


--------------------------------------------------------------------------------
2009/08/19
カスタム時のアイテムセレクト画面などで、ホイールでメニューの前後に移動する。

--------------------------------------------------------------------------------
2009/08/27
・ボーン定義の仕様変更
強制的に可動制限処理を行なうLimit_FULLTIME_Order2を追加。

モデルのボーン定義「_mat.txt」ファイル内での記述に、
「Limit_FULLTIME_Order2」を追加した。

制限を掛ける順番を変更「+ Limit_FULLTIME_Order,1;」等の記述が存在したが、
コレは各処理の順番に割り込ませる為のモノであり、
SP、BT単位で処理されるものであった。
新規に設定する「+ Limit_FULLTIME_Order2,1;」の記述によって、
ボーンの可動制限はより確実に実行される。
各ボーンに処理が行なわれる度に可動制限が判定される。

レイヤー数、ボーン数の増加によって乗算的に負荷が掛かる為、注意が必要。
こんにちのＰＣ性能を考慮すれば実用レベルではあると思うが・・・
今後処理的な改善、或いは仕様その物を見直したい部分である。


2009/08/18
・ボーンマーカー機能
ポーズエディタのボーンの設定に「ﾏｰｶｰｾｯﾄ」を追加。
編集中に、常にカラーで強調表示を行なう。
別レイヤー編集中も視認状態を維持する。
ボーン名も表示されるが、処理負荷は高い為、
マーカー数が０の場合は機能が自動的に解除される。

「可動ﾘﾐｯﾄの解除」はﾎﾞｰﾝの稼動限界を解除する機能。
検討中の機能の為、未実装の箇所あり。
現在は、ポージングの可動限界の解除のみを行なう。
追跡や揺れなどとの影響が多岐に渡るため、仕様検討中。


・影の精度を向上
ロジックを再検討し、速度と精度の向上を図った。

・バンプマップ機能
説明は割合する。ｻﾝﾌﾟﾙは後日準備予定。

・メニュー文字表示の高解像度対応
画面解像度の大型化に対する対応。

・拡張レンダリングの実装改善
処理効率、精度の向上。仕様上の変更はない。

--------------------------------------------------------------------------------
2009/07/12
親ボーンの指定、ターゲットボーンの指定に[Rev]を指定する機能を追加しました。
現在では、親ボーンなどの検索のLRは、自身のボーンのLR指定を自動的に引き継ぐか
明示的に[L]か[R]を指定する必要がありますが、
ボーン名に続けて[Rev]を指定する事で、自身のボーンとは逆のボーンを検索します。
例えば、自分が[R]の場合は[L]が指定されます。

○　b自分 b親[Rev],LR,SP,3,bﾀｰｹﾞｯﾄ,0.1,0.2,0.5;
○　b自分 b親,LR,SP,3,bﾀｰｹﾞｯﾄ[Rev],0.1,0.2,0.5;
×　b自分[Rev] b親,LR,SP,3,bﾀｰｹﾞｯﾄ,0.1,0.2,0.5;
上記の様に自分のLR指定を逆転する事は出来ません。
座標上、右側にあるボーンの名前に[L]をつける事は出来ないので、
親やターゲットの指定時のみ使用可能です。

--------------------------------------------------------------------------------
2009/06/08
影関係をCTRL+Qのメニューで色々設定出来るように
濃度とか、フチのボカシとかの設定

影使用時は事前に「DF40_起動設定.exe」で設定が必要
指定されると初期化時に影処理に必要なメモリーを確保する
初期化に失敗して落ちる場合、影を使用しない場合はOFFに

ただし、「DF40_起動設定.exe」から起動すると
「DF40_090604.exe」ではなく「DF40.exe」が呼び出されるので注意

--------------------------------------------------------------------------------
2009/05/28
差分ファイルを含まない実行形式のみの配布です
以前配布した色々がないと動かないです
試験版と言う事でご容赦を

・DF40_090528_a.exe
影に影が重なると不自然になる問題あり
_bと同様の問題も起こる

・DF40_090528_b.exe
_a改善版。影の重複をカウント処理。比較的真面目に影を処理している方
線が出たり、影が不自然なのはモデルの処理とロジックの問題
仕様上、完全に閉じたポリゴン物体でなければ影を正確に処理できない
解放部があったり、片面ポリゴンは変な影や線の原因に成る
リアルタイムモデルの特性上、どうしても法線やテクスチャーの関係でモデルに
断裂部が発生してしまい、閉じたモデルを作る事が現実的に難しい
この問題を解決するにはモデルフォーマットから見直すしか・・・

ピント処理やブラーやと併用すると表示がおかしくなるのは仕様
領域を使いまわしている関係上、両立出来ない処理がある為
--------------------------------------------------------------------------------
2009/06/08
影関係をCTRL+Qのメニューで色々設定出来るように
濃度とか、フチのボカシとかの設定

影使用時は事前に「DF40_起動設定.exe」で設定が必要
指定されると初期化時に影処理に必要なメモリーを確保する
初期化に失敗して落ちる場合、影を使用しない場合はOFFに

ただし、「DF40_起動設定.exe」から起動すると
「DF40_090604.exe」ではなく「DF40.exe」が呼び出されるので注意
--------------------------------------------------------------------------------
2009/05/28
差分ファイルを含まない実行形式のみの配布です
以前配布した色々がないと動かないです
試験版と言う事でご容赦を

・DF40_090528_a.exe
影に影が重なると不自然になる問題あり
_bと同様の問題も起こる

・DF40_090528_b.exe
_a改善版。影の重複をカウント処理。比較的真面目に影を処理している方
線が出たり、影が不自然なのはモデルの処理とロジックの問題
仕様上、完全に閉じたポリゴン物体でなければ影を正確に処理できない
解放部があったり、片面ポリゴンは変な影や線の原因に成る
リアルタイムモデルの特性上、どうしても法線やテクスチャーの関係でモデルに
断裂部が発生してしまい、閉じたモデルを作る事が現実的に難しい
この問題を解決するにはモデルフォーマットから見直すしか・・・

ピント処理やブラーやと併用すると表示がおかしくなるのは仕様
領域を使いまわしている関係上、両立出来ない処理がある為
--------------------------------------------------------------------------------
2009/05/13
具体的な使い方はサンプル「EMDF40_t4追跡サンプル」を参考にして下さい。
追加アイテムとして使用できます。

腕のボーンの子ボーンとして、追跡ボーンが設定されています。
添付画像(PIC-2009_5_13-1_20_41.jpg)の基礎となるボーンに
赤緑青でXYZ座標を示しています。青は腕と重なってしまい見えませんが・・・
この基準座標の軸で可動制限を指定します。

腕の先の方にある追跡ボーンは足の先を追跡します。
可動制限が設けられているので、ある程度までしか追尾しません。
可動枠イッパイまで動いた状態でも、追跡とは別枠で揺れの処理を
確認できるかと思います。

新たに追加された指定は以下の物です。



+ Limit_FULLTIME_Ob,true,false;//対象指示 目標,現物

可動制限の処理の対象を指定します。
trueとfalseで指定します。
Limit_FULLTIME_Obの後に、目標、現物の順で指定します。
目標とはモーションや、動的に処理される内部データーで、この値を直接制限します。
現物とは最終出力される表示データーで、揺れや追跡の処理が加えられた後の
位置角度情報です。

「+ LimitD」「+ LimitU」で指定した可動制限の処理が対象と成ります。
揺れや追跡の制限は別に処理されます。

上記の例では、最終出力に使用するデーターに
可動制限を掛けない事が指定されています。
これは、揺れ処理を行った後で、制限が加えられる事を回避する為です。



+ Limit_FULLTIME_Order,1;// ,2;//ﾃﾞﾌｫﾙﾄ

可動制限を行う処理順序を指定します。

1を指定すると、
追跡処理の後で可動制限処理を行って、その後に揺れの処理を実行します。
デフォルト値は2です。
この指定はボーンに対して実行されます。
ボーン毎に異なる値を保持可能です。
この記述で指定されない場合は2と成ります。



・前回の処理が上手く行かなかった件
追跡ボーンと揺れボーンを同時に指定すると動きがおかしくなる点に感して
度々お手数をお掛けしました。

完全に失念していたのですが・・・
そもそも追跡ボーンを指定すると、追跡の遅延や若干のタイムラグを実現する為に
自動的に揺れボーン制御もONになる仕様に成ってます。
この為、後から任意で揺れ処理を加えると、予期しない動作になる事が有るようです。

個別に可動制限をつける事が難しいのは、ボーンが一つしかないので
角度情報から「コレだけ追跡で移動した分」「コレが揺れで動いてる分」
と分ける事が出来無いためです。

個別に制限を加える為に、内部的で揺れ部分の処理を完全に独立させてしまうと、
揺れと密接に関連している追跡処理が正常に作動しなくなってしまいます。

今回、内部の仕様を若干変更しまして、追跡部の処理を変更しています。
一旦追跡処理の情報をモーションのポーズ情報として保持し、再度適応する
と言うスパンを踏んでいますが、これで根本的な問題の解決に成るとの確証には
至っていません。

この部分を同一のボーンで処理する為には、やはり限界が有りまして
これ以上複雑な処理を実行するとなると
既存の追跡・揺れとは別の新機能として製作した方が良いかもしれません。
どの様な使われ方をするのか把握しかねる部分もありますが、
これで狙い通りに動作に近づける事を期待しています。

--------------------------------------------------------------------------------
2009/05/08
//090508 ボーンの揺れの可動制限を、基準座標から計算するか、
ターゲットボーンから見るかの設定

_mat.txt　の記述

+ BoneType,RelLimit,true;//090508


--------------------------------------------------------------------------------
2009/02/12
Ctrl+L
身体調節時に手の大きさが連動する様にした。

--------------------------------------------------------------------------------
2009/02/05
・オートフォーカスの精度を向上
・ブラーの実装
・カスタムメニューのアイコンメニュー化などインターフェイスの向上

▼ショートカット変更点
Ctrl+Q
露出設定メニュー

Ctrl+Q,Ctrl+Q(Ctrlを離さずにQ二度押し)
エコノミー

--------------------------------------------------------------------------------
■ポーズエディタで稀にポーズが壊れる問題
ポーズエディタで操作中に、ボーンの間隔が異常に広がってしまい、
元の状態に戻せなくなった場合は、
メニューからボーンの姿勢リセットで復元する事がある。
ポーズを保存後に、再読み込みした際にも現象再現する事から、
姿勢を保持する角度の情報その物が壊れているのではないかと予測している。
現在調査中ではあるが、原因の特定には至っていない。

2009/01/06
・ポーズエディタのレイヤー操作にEXｽﾛｯﾄを追加。
EXｽﾛｯﾄ内のアイテムにボーンが有る場合の操作。

・メニューのページ選択時の位置を復元する。
メニューのページ表示が、選択後に先頭に戻る問題。
ポーズエディタで背景や顔を選択する場面で、選択後にメニューがトップに戻るのが
操作上不便である点を改善。
仕様的には戻るのが正しいのだが、運用的に不便である。
前回選択時の位置をスクリプト的に任意で復元出来るコマンドを追加して対応。

2009/01/05
カラーアセンブル関係のバグ修正
・Rの桁オチ
・解除されない問題

--------------------------------------------------------------------------------
■エラーメッセージ
オプションで出力の有無を設定可能にしました。
デフォルトではＯＦＦに成っています。

エラーチェックは完璧ではありません。
メッセージが出なくても異常を起こす場合も有ります。

エラーが出た場合も必ず異常が起こる訳ではありません。
記述の矛盾を確認して、より深刻な異常を引き起こす前に注意を喚起する目的で
メッセージが出されます。
製作段階でエラーを確認した場合は、原因を確認してその問題が、
より深刻な強制終了などの原因に成る物なのか、放置しても実害が無い物かを
確認して修正の有無を決める判断材料としてください。

現在は開発中のため、例え追加モデルにミスが無くても
他の機能の影響を受けて本来の意図とは異なるエラーが出る場合もあります。

設定ではオフに出来ない、これ以外のメッセージダイアログが
何らかのバグによって出る場合もあります。




・追加モデル製作者の方へ

エラーの出力の有無を設定可能になりました。
デフォルトではＯＦＦに成っていますので、
今まで問題無く動いていたけどエラーが出る場合は修正不要との方針です。

今後新しく追加モデルを作られる方は、任意でエラーの出力をＯＮにして
チェック等にご利用下さい。



・追加モデルを自作する予定の無い方へ

ＯＦＦにしておけばスムーズにプレイ可能です。
エラーメッセージが出ても特に問題なく動く場合もあります。

エラーは製作者向けに記述の正規表現をチェックし、念の為に警告を表示する物です。
エラーメッセージが出力される物でも、そのまま使用しても問題が無い場合もあります。


--------------------------------------------------------------------------------
■ショートカット
（08年12月頃の）

Alt+F4
アプリケーション終了

ESC
緊急終了

BS
項目を隠す

Space
再生キャンセル

F5
ソフトリブート

Ctrl+F5
ソフトリブート（デバック）

1,2,3,4
MAP表示切替

F1,F2,F3
視点切り替え

Num1,Num2,Num3
視点切り替え

Num4
平行投影切り替え

Num5
パースデフォルトに戻す

Ctrl+apps //ラベルメニュー
Ctrl+Up //先頭
Ctrl+Down //終端
Ctrl+Left //前のラベルへ
Ctrl+Riget //次のラベルへ
スクリプト進行のクイック操作

Ctrl+P
静止画撮影

RCtrl+P
静止画撮影（ダイレクトモード・デバック）

Ctrl+T
音声読上げ編集画面に移行

Ctrl+M
音楽再生コントロール画面

Ctrl+E
ポーズエディットモード（デバック・ポーズアシストoff）

Ctrl+Q
エコノミー

Ctrl+L
ロリコンボタン
　使用時は「有効にする」をクリック。オッパイカスタムと併用不可

Ctrl+O
各レイヤーのＯＮ／ＯＦＦ切り替え

Ctrl+F
FPSゲームメニュー（未完成）

Ctrl+C
CPUモード

Ctrl+V
ファイルモード


■ポーズエディット画面での操作
B
ボーンの表示を半透明に切り替え

N
キャラクターのワイヤーフレーム表示切替

M
地形のワイヤーフレーム表示切替


（Ctrlは左コントロールボタン、RCtrlは右コントロールボタンを押下）




・競合問題
「Ctrl+O 各レイヤー有効切り替え」で特定レイヤーを無効にした後で
「Ctrl+L ロリコンボタン」で体型のカスタムを行い、
再度「Ctrl+O 各レイヤー有効切り替え」でレイヤーを操作した場合など
各種機能を組み合わせた場合に不具合を起こす場合があります。

現在はテスト中の為、ｼｮｰﾄｶｯﾄを使用して任意の時点で機能を呼び出す事が出来ますが、
動作の確実性を重視する為には
トップから着せ替えモードに入ってメニューで機能を呼び出して
シーンに移行する前に再度モデルをロードしたい所です。

多少の不具合に目を瞑って裏機能として残すか、何か上手い解決策を考えるか
まだ検討中です。


--------------------------------------------------------------------------------
■半透明の描画順序
衣服や追加モデルの半透明部分の表示順序の問題を解決する為に、
表示順序の編集機能が追加されました。
「キャラ設定」内部の「表示順序」で変更可能です。
スライダーが左に有る物から順番に描画されます。設定は５段階です。
レベルが同じ物はレイヤー番号が若い順に処理されます。

半透明の描画順序の問題を解決する為の、表示順序の設定は
拡張表示機能が有効になって居ないと反映されません。

--------------------------------------------------------------------------------
■スロット
従来、番号を直接指定して使用していたレイヤー機能を
スロットを用いる様に改める事を検討中です。
互換性の為に従来の仕様も残ります。

スロットは番号が特定されないレイヤーです。何れかのレイヤーと一対で対応します。
例えば、ＥＸスロットに指定された追加モデルは、
レイヤー８〜１２の何処かに入ります。

従来、アイテムはレイヤー７で扱っていましたが、番号を直接指定している為、
ストーリー中のスクリプトなどで重複時に不都合がありました。
今後は小物類のアイテムをＥＸスロットで扱う事にしたいと思っています。


--------------------------------------------------------------------------------
2008/06/21
透明アイテム「EMDF37_Trans」の修正。
本来追加アイテムだが仕様変更に伴い以降のexe配付に含める。

選択中アイテムを赤の点滅で表現。
追加カスタム未使用時は無効アイコンが点滅。

2008/06/14
■更新ファイル
CPFT_It02_body.x
材質に余剰データーが含まれていた為に修正。


■バックアップ領域拡大
キャラクターカスタムの保存数を３から１２に増加。

--------------------------------------------------------------------------------
■カラーカスタム　2008/05/23
「*_Rmat.txt」の第７パラメーターにCollarCUS2と書くと、
拡張カラーカスタムが使用できる。
この情報は材質名をラベルとして管理される。
ラベルは全ての中で一意で有る必要が有るが、万一重複した場合は
同じカラーを共有する事に成る。
意図的に連動させるのでなければ、通常は重複しない名称を使用する。

拡張カラーカスタムの情報はゲームデーターとして記録され、
カスタムの変更に拠って失われる事は無く、値は保持される。
しかしながらその記憶領域は最大で28であり、上限に達した場合は
使用頻度の低い物から順番に削除される。

--------------------------------------------------------------------------------
■表情　2008/05/23
「\mdl_add\1\EMDF38_CusFACE_test5」を参考にして下さい。

「_setup.txt」に色々書いてますが暫定です。
今後これをベースにゲーム本編を制作しながら、必要な機能を追加して行く予定です。

色々説明不足でごめんなさい。
今後徐々に追加する予定です。
詳しい解説は仕様がしっかり固まってから作る予定です。

最低限使える位の解説を付けようと考えていたのですが、
予想以上に難航してしまって、このままでは何時まで経っても出せそうに無いので
とりあえずの現状です。
そこまでして公開する意味が有るのかと突っ込まれそうですが、
興味が有る人向けと言う事で御了承願います。


--------------------------------------------------------------------------------
■スクリプト　2008/05/23
新作向けに一部スクリプトの仕様が変更。
コレに伴い、従来のスクリプトの読み込みに一部不具合が発生。
旧作との互換性は、新仕様に修正したスクリプトを配付する事で対応する予定。
修正版のスクリプトは新作に同封する等して対処を検討。


正直これは痛いです。やっちまった感が／／／
作品間の互換性を維持したいと考えていまして、
極力仕様は変えない様にと考えていたのですが・・・
下の方にも書いてますが、エラーチェックや正規表現のチェックが厳しくなってます。
これはユーザーさんのデーター投稿が盛んだったり、追加データーの制作があったりして
作者としても、今まで不満だけど何とか我慢してた「原因不明で動かない！」に対して
プログラム側でしっかり原因をエラーで出そう！と考えた為です。
今まで間違ってるけどエラーに成ってなくてギリギリ動いてたデーターが結構あって
それが今回弾かれてしまった形です。
この「害の無いミス」と「有害なミス」の見分けが、プログラム的には出来ないので
これまで問題なく動いてたデーターでも正確に書かないとエラーで止る様に成っちゃった
訳です。
旧作のデーターを作り直して配付するか、デバックモードみたいなスイッチを付けるか
検討の結果、カッコ悪いけどもう一度修正ファイルを出す方が良いと考えてます。
ただ、この修正は新作との互換性の問題なので、旧作向けの修正ファイルではなく
新作に旧作互換パッチとして同封する予定です。


--------------------------------------------------------------------------------
■輪郭線の設定
「\data\ap.ini」のファイルを編集。

[PR]属性
・p_st_rinkaku_LineSize=0.001
輪郭の太さ(標準0.001)

・p_st_rinkaku_LineSizeType=1
輪郭の処理方式
0:固定値
1:指定値で処理(Default)
2:画面からの距離を考慮して一定に保つ
ただしこの処理は完全ではない。
画面比率に対してではなく、距離で処理される為
カメラのパース変更や並行投影によって意図しない画面に成る場合が有る。
また遠距離時にはキャラクターモデルが線で潰れる問題も残る。

起動時に一度のみ指定できる。
実行中の変更には対応しない。

--------------------------------------------------------------------------------
スクリプト記述のチェックが厳密になった為、
記述にミスがあった「DF37_EX_02共通.txt」を更新する必要有り。

他にも、本来ならば正常でなくても何と無く動いていた物が
動かない可能性が有る為注意が必要。

--------------------------------------------------------------------------------
DF40_起動設定.exeの「レンダリング形式」に関しては暫定の仕様。
全力でシーピーユーが頑張るデストロイシステム。
VRAMにアクセスするので下手にグラボが乗ってるとギギギ・・・

--------------------------------------------------------------------------------
■ポーズ編集中にＢキーでボーンが半透明になる。
もう一度押すと元に戻る。また、操作中も半透明に。
操作性と視認性の向上を意図。

ボーンを選択する場合に、より、中心座標に近いボーンを選択する仕様に。
画面上重なっているボーンを選択する場合は、カーソル位置に応じて
選択されるボーンが変更される。


--------------------------------------------------------------------------------
■視点操作時の精度が向上。
視点操作時にマウスのボタンを押し続けると、徐々に視点が移動して行く問題の改善。
これは計算精度上の問題で、マウスが動いていない場合には視点操作をキャンセル
する事で症状の発生を抑えた。
故にマウスボタンを押していても、カーソルの移動が伴わない場合には
視点操作フラグはfalseであり、カウンターが初期化されないが、
痴漢鉄では未使用の機能である為影響は無いと思われる。
今後、この機能を用いる場合には注意が必要に成る。

視点操作時に画面の中心位置に近いボーンを回転の中心とする仕様で、
画面のupベクトルをy方向へ固定した場合の、xy回転順序の誤差により
徐々に角度がブレて行く問題の改善。


--------------------------------------------------------------------------------
■追加カスタムでアイテムが満杯の時、▼▲ボタンで切り替え。
カスタム画面でのアイテムが画面イッパイに成った時、
▼▲ボタンでメニューを切り替える事が出来る。


--------------------------------------------------------------------------------
■ローカルモーション。
サンプル：\mdl_add\2\EMDF37_CasMEGA_goggles2

このサンプルでは、体のモーションとは別に
独自のモーションを読み込んでヘッドバイザーを稼動させています。
ヘッドバイザー本体は、体の頭部ボーンを追跡し、
モーションの動きにも対応しますが、バイザー部の可動は
ローカルモーションの影響を優先します。
参照するモーションや、優先度、合成の処理方式はスクリプトの指定によります。

この仕様は旧バージョンでは再現されず、新バージョンで変更される可能性が有ります。
また、この機能を用いて表情をゲーム中に動的に変更する事を計画しています。

--------------------------------------------------------------------------------
■追加カスタム
痴漢鉄の標準のカスタム選択時に、自動的に追加カスタムを解除する様に変更。
（暫定）
安定性・互換性の観点に課題、再検討。

--------------------------------------------------------------------------------
■ディレクトリメニューの文字表示の視認性の改善。

--------------------------------------------------------------------------------
■自動追跡ボーンと可動域の制限
「mdl_add\1\EMDF38_CusFACE_test2」を参照のこと。

瞳を自動的にカメラに向けたり、
スカートを揺らす際の可動方向を限定してめりこみを抑止したり、
そんな感じの使い方を想定。
※今後仕様変更の可能性アリ。


--------------------------------------------------------------------------------
■左右のCtrlキーを同時押しでショートカットキーロック。
同時に押していればタイミングは不要。
ショートカットの処理はデバック用も色々有るので「ヌケ」があるかも。
ロック中は画面下部にKEY LOCKの表示。
もう一度押すと元に戻す。


--------------------------------------------------------------------------------
■モーション編集中のポーズの誤差の改善
計算精度の問題から、フレーム切り換えなどで発生していた。
誤差を軽減する為の処置。内部フォーマットの変更。

・再生時：ファイル→モーション→モデル1.2.3...→画面表示
各フォーマットが違う為、内部で変換する。
非可逆変換の為、計算精度上の誤差が生じて行くが、
再生時は一方通行で有る為、見た目上の大きな問題は発生しない。

・編集時：ファイル←(保存/読込)→モーション←(相互に交換)→モデル1←画面操作
編集時には操作の結果をモデルに反映し、それをモーション形式へ再変換する。
一旦モーションに移すのは、モデル上では複数の姿勢を記憶出来ない為に、
モーション上で複数フレームのポーズデーターを管理する為と、
複数のモデルを組み合わせて表示しているカスタムのシステム上、
全てのモデルが同じポーズを維持する為にデーターを転送する必要が有る為。

試作時には編集用のモデルを単体で使用し、
各形式間の転送回数を抑えて誤差抑止に努めていたが、
内部ロジックの改善で計算誤差を低減出来た為に、
カスタムの表示用モデルをポーズエディタで使用する事に踏み切った。
モーション作成ツールとしての性能よりも、
実際にカスタムしたキャラを自由に動かせる事を重視した為である。

後にモーション製作用として、ポーズエディタにフレーム管理機能を追加した際に
この問題は再発したが、転送タイミングをフレームの切り替え時に限定する事で
大きな誤差が発生する事を抑えた。

・編集時(改善後)：
　ファイル←(保存/読込)→モーション
　　　モーション←ダミー←画面操作
　　　モーション→モデル1.2.3...→画面表示
画面上のキャラを操作するのではなく一旦ダミーへ転送し、
リアルタイムにモーションに変換する。この時点で誤差は生じるが、
画面に表示されるタイミングでは計算が終わっている為、
その後のフレーム操作等での誤差を押さえる事が出来る。
操作性が若干変わるが、見た目上の誤差を抑える事で編集効率は
上がる物と考える。
画面操作系やフレーム系の再設計、同等の操作性の維持など
フレームのスライダー操作の追加などに伴う設計変更と同時に修正を行う。


--------------------------------------------------------------------------------
■キーフレームのスライダー操作機能
専用画面を設計。
既存の画面への機能追加では画面が混雑するのと、
プログラム的にも複雑に成る為。
理想ではないが無いよりはマシ。
３Ｄ開発ソフトを作っている訳ではないので、
イカロスさんに成らない様に高望みしない方向で。

制御できるキーの数に制限が有り。
スライダーの長さは120コマ。２秒。
再生速度は1.0固定。
速度はモーション再生時にスクリプトで指定する為、モーションデーター上には無い。


--------------------------------------------------------------------------------
■連絡先
作者：グロウ
サークル名：ｅモーション
URL :http://www.h2.dion.ne.jp/~groe/emo/
--------------------------------------------------------------------------------