Easy3D For HSP3 ver5.5.0.2 (HSP3.3同梱バージョン)
Easy3D（e3dhsp3.dll）は、DirectXで３Ｄゲームを作るためのプラグインです。
DirectX9.0c がインストールされていないと、動きません。

（図はサンプルのe3dhsp3_fight_MOA.hspのスクリーンショット
簡単な格闘ゲームなら投げ技なども入れて３００行程度で作成可能。）

おちゃっこＬＡＢでは、 Easy3Dで使用する３Ｄ形状データ、モーションデータを編集するためのツールRokDeBone2も公開していますので、あわせてご使用ください。
RokDeBone2のバージョンだけが新しい場合、 Easy3Dでの形状やモーションファイルの読み込みで失敗することがあります。 そんなときは、Easy3Dのバージョンも最新のものをダウンロードして使用するようにしてください。 なぜかといいますと、 RokDeBone2がバージョンアップした際には、ファイルのフォーマットが新しくなることがあります。 新しいファイルは古いプログラムで読み込もうとするとエラーになります。 ですので、そういう症状が出た場合は、Easy3Dも最新版をダウンロードしなおして使用してください。 古いファイルは、新しいプログラムでも問題なく読み込めるようにしていくつもりです。
おちゃっこ
http://www5d.biglobe.ne.jp/~ochikko/
スクリプトを組む上で、必要な、関数の説明は、こちらのページです。
Easy3D For HSPの関数の説明
Easy3D For HSPについてのTIPSや最新情報は、
おちゃっこＬＡＢのEasy3D For HSP3公式ページへどうぞ。
（サンプルや関連ツールも公開されています。）
Tips　：　モーションアクセラレータについて
Tips　：　ver5.3.0.0での変更点について
Tips　：　ver5.4.0.0での変更点について
Tips　：　ver5.5.0.0での変更点について
Tips　：　Sig, Qua, Moaファイルの読み込みがエラーになるとき

Tips　：　HSP３．２同梱版からのバージョンアップについて

#### 著作権・ライセンス

本プログラムの著作権は、製作者である"おちゃっこ"にあります。
本プログラムを使用したことによって生じたいかなる損害についても、 著作権保有者はその保障義務を一切負わないものとします。
Easy3Dや、RokDeBone2を使用して作ったデータや作品は、 自由に配布できることにします。 ただし、サンプルなどで使用しているデータには、それぞれ作者さんの著作権があるので注意してください。
Easy3Dを使った自分で作った作品などを配布する場合は、 必須ではありませんがreadme.txtの隅っこにでもおちゃっこＬＡＢの名前を書いておいてもらえると宣伝になるのでうれしいです。 （書かなくてもかまいません。）
あと、これは著作権とは関係ありませんが、何か途中経過でもいいのでおもしろいものが出来たら掲示板などで報告してもらえると、こちらもやる気が出てうれしいです。

/////////////////////////////////////////////////////////
// 更新ログ
ver1.0.0.1
ＨＳＰ３．１β３に対応しました。
変更点については、変更点についてをご覧ください。
ver1.0.0.1（2006/06/09）
サンプルのe3dhsp3_SwapChain.asが、マウス入力により表示がちらつくというご指摘があったので、修正しました。
サンプルの拡張子をhspに変えました。
e3dhsp3.dllは、同じままです。
同じバージョン番号での、マイナーバージョンアップとします。
ver1.0.0.2(2006/07/09)
フォグ（頂点フォグ）が使えるようになりました。
E3DSetLinearFogParams関数の追加。
ver1.0.0.3(2006/07/10)
スプライトやフォント描画時には、フォグが影響しないように、修正しました。
同じファイル(sig, gnd, mqo, im2)を、複数のプログラムで、同時に読もうとしたときに、エラーになるのを修正しました。
ver1.0.0.4(2006/07/10 その２)
dual coreプロセッサで、うまく同期できないことがあるのを修正しました。
ver1.0.0.5(2006/07/10　その３)
E3DRenderの８番目の引数に、transskipを追加。
transskipに１をセットすると、頂点変換処理がスキップされます。
不透明、半透明と、２回、E3DRenderを呼び出す場合は、２回目の呼び出し時に、transskipに１を指定してください。
このフラグを使用することで、e3dhsp3_fight.hspの描画速度は、１．７倍速になりました。
ver1.0.0.6(2006/07/16)
デバッグ
E3DGetBBoxで、partnoに-1を指定すると、エラーになるバグを修正しました。
マニュアルのE3DGetScreenPos2の引数が、間違っていたのを修正しました。
１番目の引数は、scidです。
ver1.0.0.7(2006/07/26)
あたり判定関数の追加
E3DChkConflict3
E3DChkConfBySphere3
判定パーツ番号に、配列を指定できるようにし、複数パーツ同士の当たり判定を、一回の呼び出しで、出来るようにしました。
ver2.0.0.1(2006/08/04)
DirectX9.0cへ対応（ただし、ハードウェア頂点処理は、まだ、封印した状態）
RokDeBone2　ver2.0.0.1のデータに対応。
トゥーン表示に対応
E3DSetShaderTypeに、COL_TOON1を指定すると、トゥーン表示できます。
COL_TOON1でのE3DSetShaderType命令は、割と重い処理なので、初期化時に、１回だけ実行してください。
詳しくは、サンプル、e3dhsp3_toon1.hspをご覧ください。
E3DInitを呼び出さない状態で、E3DByeを呼んでも、エラーにならないように修正。
ver2.0.0.2(2006/08/07)
RokDeBone2で、「色ト」ボタンを押した状態で、保存したsigファイルに対応。
E3DSetMovableAreaThread関数を追加。
E3DSetShaderType で、COL_TOON1を指定して、複数回呼び出すと、メモリリークするバグを修正。
ver2.0.0.3(2006/08/11)
ver2.0.0.3のRokDeBone2のsigファイルに対応。
ver2.0.0.4(2006/08/15)
E3DRenderSpriteに、引数を追加。
traz引数を追加。
奥行き情報を、指定できるようになりました。
ver2.0.0.5(2006/08/21)
半透明のブレンディングモード（アッドモードその２）を、追加。
E3DSetBlendingMode で、モードに２を指定すると、頂点アルファを考慮したアッドモードになります。
E3DCreateSpriteFromBMSCRを追加
HSPの描画画面（E3Dでの描画を除く）と同じ内容のスプライトを作成します。
非表示の画面に対しても、使用できます。
ver2.0.0.6(2006/08/23)
デバッグ
同名ファイルから、複数のスプライトを作成し、そのうちのひとつを、E3DDestroySpriteで破棄すると、
残りのスプライトの描画時に、エラーになるバグ、を修正しました。
ver2.0.0.7(2006/09/21)
E3DGetBoneNoByNameを、エンドジョイントに対しても、呼び出せるようにしました。
マニュアルの微調整
ver2.0.0.1で、エンドジョイントにも、姿勢情報が格納されるようになったので、
エンドジョイントに関する記述を修正。
Visual Studio 2005でビルド。
ver2.0.0.8(2006/09/22)
モデルデータ中で、絶対パスで指定されているテクスチャが、見つからなかった場合は、
モデルデータと同じディレクトリを探して、読み込むようにしました。
ver2.0.0.9(2006/09/25)
E3DCreateBGに引数を追加。
７番目の引数に、フォグの計算に使う、カメラからの距離を指定します。
この引数に、E3DSetLinearFogParamsで指定するendより小さい値を指定すれば、
背景は、フォグの色に染まりながらも、うっすらと見えるように出来ます。
ver2.0.1.0(2006/10/08)
デバッグ
ドライブのルートで、exeを実行すると、E3DInitでエラーになることがあるバグを、修正しました。
ver2.0.1.1(2006/10/17)
デバッグ
E3DCreateSpriteFromBMSCR　で作成したスプライトが、E3DDestroySpriteで削除できないバグを修正しました。
ver2.0.1.2(2007/01/26)
モーションアクセラレータの設定機能の追加。
詳しくは、モーションアクセラレータについてをご覧ください。
E3DLoadMOAFile
E3DSetNewPoseByMOA
E3DGetMotionFrameNo
E3DGetKeyboardCnt
E3DResetKeyboardCnt
の追加。
ver2.0.1.3(2007/01/29)
デバッグ
モーションアクセラレータ使用時に、補間終了後、同じポーズが３つ続くバグを修正。
新ボーンを追加後に、それを無効にして、旧モーションを読むと、モーションがよれるバグを修正。
PingPongモーション処理を修正。
超簡易暗号化関数追加
E3DEncodeBeta
E3DDecodeBeta
ver2.0.1.4(2007/02/01)
デバッグ
E3DCreateSpriteFromBMSCRを複数回呼び出した場合、
複数回E3DestroySpriteを呼んでも、一回分しかメモリが開放されないバグを修正。
E3DestroyBillboardが、必要なビルボードのテクスチャまで、破棄してしまうバグを修正。
ver2.0.1.5(2007/02/03)
デバッグ
MOA（モーションアクセラレータファイル）読み込み時のバグを修正。
ファイルの終端検出処理のバグ。
ファイルの読み込みが終わっていないのに、終わっていると判断し、読み残しをしてしまうバグでした。
ver2.0.1.6(2007/02/09)
デバッグ
モーションアクセラレータのバグ修正
「指定フレームより前で分岐」に、数値を指定したとき、
実際には、指定フレームより後で分岐していたバグ。
ver2.0.1.7(2007/03/13)
デバッグ
メタセコイアで設定した頂点色が反映されないことがあるバグを修正しました。
ver3.0.0.1(2007/04/16)
ver3.0.0.1リリース。
頂点シェーダ２．０、ピクセルシェーダ１．１対応版となりました。
描画速度２から４倍！！
変更点は、ver3.0.0.1での変更点をご覧ください。
ver3.0.0.2(2007/04/17)
一回もE3DSetMotionKindを呼び出さない場合でもエラーにならないようにしました。
１個目のqua読み込み時に、自動的に、E3DSetMotionKindします。
ver3.0.0.3(2007/04/19)
デバッグ
E3DInitの７番目の引数に０を指定したときの振る舞いを修正。
E3DSetUV, E3DGetUV, E3DSetUVTile, E3DSetBillboardUVが機能していなかったのを修正。
ver3.0.0.4(2007/04/20)
デバッグ
トゥーン設定のモデルと、トゥーン以外の設定のモデルを混在させた場合に、
トゥーン以外のモデルが表示されないことがあるバグを修正。
ver3.0.0.5(2007/04/22)
デバッグ
スムージング関係での法線の計算が間違っていたバグを修正。
色にむらが出来たり、角がシャープに表示されなかったりするバグが直りました。
ver3.0.0.6(2007/04/24)
スムージング処理の修正
スムージング処理を、標準的な方法に変えました。
メタセコイアで設定したスムージング角度に忠実に表示します。
新しいスムージング処理は、mqoまたは、ver3.0.0.3以降のRokDeBone2で保存したsigを読み込んだ場合のみ有効になります。
ver3.0.0.7(2007/04/25)
頂点シェーダー１．１でも、ハードウェアで動くようにしました。
頂点シェーダー２．０が使える環境では２．０で、１．１しか使えない環境では１．１で、
頂点シェーダーが無い環境では、ソフトウェアで実行します。
ただし、制限が付きます。
ライト
頂点シェーダー２．０では、平行光源とポイントライトで合計３個までライトを有効に出来ますが、
頂点シェーダー１．１では、平行光源を１個しか有効に出来ません。
ボーン数
頂点シェーダー２．０では、１つのパーツに影響するボーンの総数が４４個を超えると、オーバーヘッドが生じますが、
頂点シェーダ１．１では、１４個を超えるとオーバーヘッドが生じます。
ver3.0.0.8(2007/04/27)
moaファイル読み込み時のモーション遷移（E3DSetNewPoseByMOA）を修正。
補間モーション中にモーション遷移が起こった場合の処理を修正。
より、なめらかになりました。
ver3.0.0.9(2007/05/01)
デバッグ
E3DAddMPが、MPI_SCALEDIVを考慮していなかったのを修正。
E3DSetMPInfoで、スケールを指定しなかったときの処理にバグがあったのを修正。
マニュアルの誤字をいくつか修正。
ver3.0.1.0(2007/05/04)
トゥーン表示(COL_TOON1)に輪郭線を加えました。
マテリアルごとに、輪郭線のオンオフ、色、太さを設定できます。
押し出し反転法で、２パスで描画します。
RokDeBone2 ver3.0.0.8で設定した輪郭データの入ったsigファイルを表示することにより、輪郭線機能が有効になります。
ver3.0.1.1(2007/05/05)
デバッグ
E3DDestroySpriteのバグを修正。
同じファイル名でE3DCreateSpriteを複数回呼び出し、１回だけE3DDestroySpriteを呼び出したときに、
同名の全てのスプライトが削除されてしまうバグ。
トゥーン輪郭線操作関数の追加
E3DEnableToonEdge　　輪郭線のオンオフをします。
E3DSetToonEdge0Color　　輪郭線の色をセットします。
E3DSetToonEdge0Width　　輪郭線の幅をセットします。
E3DGetToonEdge0Color　　輪郭線の色を取得します。
E3DGetToonEdge0Width　　輪郭線の幅を取得します。
ver3.0.1.2(2007/05/06)
デバッグ
テクスチャを貼ったパーツを半透明に出来なくなっていたバグを修正。
ver3.0.1.3(2007/05/07)
デバッグ
im2ファイルの読み込みが、画面に反映されないバグを修正。
E3DSetScaleのcenterflagが０と１のとき、正しく座標変換されないバグを修正。
ver3.0.1.4(2007/05/08)
E3DSetRenderStateのD3DRS_LIGHTINGの設定が描画に反映されるようにしました。
「色P」設定の　sig, ビルボードの場合は、頂点のdiffuse色のみをライティング効果なしで適用します。
「色ト」設定の場合は、暗いところの色を適用します。
ver3.0.1.5(2007/05/10)
パーティクルのサポートを追加しました。
E3DCreateParticle maxnum, texname, width, height, blendmode, particleid
E3DDestroyParticle particleid
E3DSetParticlePos particleid, posx, posy, posz
E3DSetParticleGravity particleid, gravity;
E3DSetParticleLife particleid, life
E3DSetParticleEmitNum particleid, emitnum
E3DSetParticleVel0 particleid, minvelx, minvely, minvelz, maxveclx, maxvely, maxvelz
E3DSetParticleRotation particleid, rotation
E3DSetParticleDiffuse particleid, r, g, b
E3DRenderParticle particleid, fps, scid
サンプル　e3dhsp3_particle.hsp　を追加。
ver3.0.1.6(2007/05/11)
デバッグ
パーティクルの最小速度と最大速度の差が大きいときに、うまく分散して放出されないバグを修正。
差が３００００くらいまで大丈夫です。
パーティクル関数の追加
E3DSetParticleAlpha
E3DSetParticleUVTile の追加。
パーティクルが放出されてからの経過時間範囲ごとに、透明度とUVを設定できます。
サンプル　e3dhsp3_particle2.hsp　を追加。
ver3.0.1.7(2007/05/14)
E3DSetAlpha, E3DSetAlpha2, E3DSetParticleAlphaの高速化。
ビデオメモリへのアクセスがほとんどなくなりました。
負荷は気にしなくていい程度になりました。
E3DSetParticleUVTileの高速化。
tilenoの変更が生じない場合は、処理をスキップするようにしました。
地面に対するE3DSetPosの高速化。
当たり判定の座標系を変更することにより、データ更新が最小限で済むようになりました。
負荷は気にしないでいい程度になりました。
地面の当たり判定の修正
内部での判定時の座標系を変更しました。
ver3.0.1.8(2007/05/16)
デバッグ
ビルボードに対するE3DSetScale呼び出しで、centerflagを１にしたときの動作が間違っていたのを修正。
E3DRenderParticleのfps引数にマイナスの値を指定した場合は、
パーティクルを静止したまま描画するように修正。
E3DInitParticleを追加。
パーティクルの発生状態を初期状態に戻します。
マニュアルの誤記修正
当たり判定の引数説明で、adjustx, adjusty, adjustzとあるべきとろころが、３つともadjustxになっていた部分を修正。
E3DChkConflictはver3.0.0.1から視野外でも機能するのに、機能しないと書いてあったのを修正。
ver3.0.1.9(2007/05/29)
デバッグ
トゥーン設定したモデルデータを表示すると、E3DCreateBGで作成した背景が真っ白になるバグを修正。
ver3.0.2.0(2007/06/24)
モーションアクセラレータのバージョンアップ
共通分岐機能の追加。
補間なしで分岐するオプションを追加。
イベント番号０でアイドリングに戻すオプションを追加。
ファイルフォーマットをver2.0にバージョンアップ。
詳しくは、モーションアクセラレータのページをご覧ください。
関数の追加
E3DPickFace2 (E3DPickFaceに判定パーツを指定できるようにしました)
E3DChkConfWall3 (E3DChkConfWallに判定パーツを指定できるようにしました。)
E3DGetMotionIDByName (モーション名からモーションIDを取得できます)
E3DGetMotionNum (読み込んでいるモーションの数を取得します。)
E3DDot2 (正規化をしない内積計算です)
ver3.0.2.1(2007/07/02)
デバッグ
E3DLookAtQが現在向いている向きの正反対の向きを、向きたい向きとして指定されると、機能しないバグを修正。
あたり判定が、E3DSetScaleの結果を考慮するようにしました。
E3DSetScaleの後のE3DChkInViewでスケールがあたり判定データに反映されます。
！！注意！！
Easy3Dのプラグインを使用すると、HSP3.1の実数計算の精度が３２ビットに落ちます。
（direct3Dの初期化時に、FPUの精度が単精度に設定されるため）
ver3.0.2.2(2007/07/03)
デバッグ
ボーンのないsig読み込み時のあたり判定がE3DSetScaleを考慮していなかったバグを修正。
centerflagに０を指定したE3DSetScaleが、E3DSetPosと併用すると不安定になるバグを修正。
ver3.0.2.3(2007/07/10)
パーティクルとモデルデータのあたり判定関数の追加
E3DChkConfParticle
ver3.0.2.4(2007/07/24)
デバッグ
トゥーンの輪郭線の１つを非表示設定にすると、表示設定の輪郭線の座標が乱れるバグを修正しました。
BMP出力、AVI出力をスワップチェインに対応させました。
E3DWriteDisplay2BMP
E3DCreateAVIFile
E3DWriteData2AVIFile
E3DCompleteAIVFile
にscid引数を追加。
scid引数を省略した場合は、E3DInitで取得されるscidに対して処理を行います。
ver3.0.2.5(2007/07/25)
E3DSaveGNDFileのサポートを終了しました。
地面の高速読み込みは、新しい関数
E3DLoadSigFileAsGround
E3DLoadSigFileAsGroundFromBuf
をお使いください（ver3.0.2.5で追加しました）。
アニメーションする地面のサポートは、もう少し先の話になります。
E3DLoadSigFileAsGroundは、E3DLoadMQOFileAsGroundより何倍も高速ですので、
ゲーム中では、RokDeBone2でmqoをsigに変換したものをE3DLoadSigFileAsGroundで読み込むことを推奨します。
ver3.0.2.6(2007/07/26)
マトリックス計算の高速化をしました。
E3DFillUpMotion, E3DAddMotionが３０％高速化しました。
高速化というか、今までが遅すぎたみたい（汗）
デバッグ
E3DFillUpMotionでstartframeとendframeを同じに設定した場合、モーション全体を補間計算してしまっていたバグを修正しました。
ver3.0.2.7(2007/08/07)
デバッグ
E3DSetSoundVolumeが、リバーブの残響音に対して効いていなかったのを修正。
ステレオサウンドで、リバーブ有りと無しを選択できるようにしました。
E3DInitに引数を追加しました。
デフォルトでリバーブ有りの設定です。
E3DGetCenterPosの追加
パーツの中心のグローバル座標を取得できます。
中心座標はE3DChkInViewで計算されます。
ver3.0.2.8(2007/08/14)
プロジェクション行列を修正しました。
dbg.txtがメモ帳で読みやすいように、改行を\r\nにしました。
モーションアクセラレータの説明を修正しました。
1つのモーションには、１こだけイベント番号を指定すること（２の乗数の値を使うこと）を推奨するように修正しました。
ver3.0.2.9(2007/08/22)
デバッグ
mqoを地面として読み込み、E3DSaveSigFileで保存したときに、不正なsigファイルが出来るバグを修正。
地面としてではなく、RokDeBone2でmqo読み込みしRokDeBone2でsig保存したものは、過去のものも正常です。
引き続きE3DLoadSigFileAsGroundで地面として使用出来ます。
E3DLoadMqoFileAsGroundやE3DImportMQOFileAsGroundで読み込みE3DSaveSigFileしたものは不正データで
救済できません。破棄して、ver3.0.2.9以降のEasy3Dで保存しなおしてください。
E3DLoadSigFileAsGroundが一部のデータタイプに対応できていなかったのを修正。
ver3.0.3.0(2007/08/29)
モーションアクセラレータのイベント番号の増量に対応。
３０個まで
モーションアクセラレータのイベント番号に使用する大きな２の乗数を覚えるのが大変なので、
e3dhsp3.asに、POW2Xという配列を定義しました。
例えば、２の１５乗の値は、POW2X( 15 )　でアクセス出来ます。
E3DSaveMQOFileで両面オブジェクトも出力できるようになりました。
E3DGetFaceNum追加
表示オブジェクトの面の数を取得
E3DGetFaceNormal追加
面の法線を取得
E3DGetReferenceTime追加
ステレオサウンドの再生時間を取得
E3DGetMidiMusicTimeは、MIDIの時間しか取得できませんでしたが、この関数はwavの時間も取得できます。
３Dサウンドには使えません。
E3DGetMidiMusicTimeが四分音符あたり７６８の値なのに対し、この関数の時間は１秒あたり約10,000,000の値です。
ver3.0.3.1(2007/08/30)
E3DCreateParticleにtransparentflag引数を追加
pngファイルなどのアルファ情報の入った画像ファイルが、パーティクルに使えるようになりました。
マニュアルの修正
E3DGetReferenceTimeの説明文で、「読み込み直後のリファレンスタイムを取得しておいて」という部分は間違いで、
正しくは、「再生直後のリファレンスタイムを取得しておいて」でした。
ver3.0.3.2(2007/09/03)
E3DChkConfGround, E3DPickFace, E3DPickVertがE3DSetScaleの結果を反映するようにしました。
ver3.0.3.3(2007/09/06)
デバッグ
E3DLoadSoundで３Dサウンドを指定し、bufnumに２以上の値を指定した場合でも、
パラメータによっては、重ねて音が再生されないことがあるバグを修正しました。
ただし、ループ設定の３Dサウンドは、同じ音を重ねて再生できなくなりました。
ver3.0.3.4(2007/09/17)
デバッグ
モーションアクセラレータ再生で、補間モーション終了後の１フレーム分、フレーム番号だけ進み、ポーズが更新されないバグを修正。
E3DSetDiffuse, E3DSetAmbient, E3DSetSpecular, E3DSetEmissive, E3DSetSpecularPower
のsetflagが機能していなかったバグを修正。
E3DCreateTextureで作ったテクスチャを貼ったモデルをE3DSaveMQOFileすると、
テクスチャ名がフルパスになった上に、拡張子の後ろに_TEXIDという文字が入る不具合を修正。
E3DByeの後にE3DInitを呼び出した場合、フォグとプロジェクションのパラメータが初期化されていないバグを修正。
E3DChkInViewを呼び出した直後のstatシステム変数で、モデルーデータが視野内にあるかどうかを取得できるようにしました。
statが０のときは、１つも視野内にパーツがなく、statが１のときは、少なくとも１つは視野内にパーツがあることを示します。
E3DGetBonePosのposkindの種類を増やしました。
poskindに２を指定すると、ローカル座標（ボーン変形あり）の座標が取得できます。
ver3.0.3.4マイナーバージョンアップ(2007/09/18)
マニュアルを微調整して、こっそり同じバージョンでアップしなおしました。
E3DCreateTexture, E3DRasterScrollTexture, E3DChkInView, E3DSetSpecularPower, E3DGetBBoxの説明を修正。
ver3.0.3.4マイナーバージョンアップ(2007/10/15)
瀬戸晴生さんhttp://ctime.cool.ne.jp/haruo/が作ってくださった新しいヘルププログラム「Easy3DFunctions.exe」を
「マニュアル」フォルダに入れました。
（旧ヘルププログラムは削除しました。）
ver3.0.3.4マイナーバージョンアップ(2007/11/04)
瀬戸晴生さんhttp://ctime.cool.ne.jp/haruo/が作ってくださった新しいヘルププログラム「Easy3DFunctions.exe」が
バージョンアップしました。
「マニュアル」フォルダに入っています。
ver3.0.3.5(2007/11/09)
デバッグ
ボーンの入ったsigを読み込み、モーションを読み込まない状態でE3DGetFaceNormalを呼ぶとエラー終了するバグを修正。
ver3.0.3.6(2008/01/07)
関数表を修正。
E3DCreateEmptyMotion命令を追加。
デバッグ
E3DLookAtQが、ある条件下で不正な値をクォータニオンに書き込むことがあるバグを修正。
アンチエイリアスを有効にした状態で、E3DCreateSwapChainを呼び出すとエラー終了するバグを修正。
ver3.0.3.7(2008/01/12)
E3DSetTextureMinMagFilter命令を追加。
テクスチャーを拡大縮小表示する際のフィルターを指定できます。
３Dモデル、背景、スプライト、ビルボードに指定できます。
例えば、テクスチャがぼやけるのが嫌な場合は、D3DTEXF_POINTフィルターを指定します。
ver4.0.0.1(2008/04/02)
RokDeBone2 ver4.0.0.1のデータに対応。
マテリアル関係の命令を追加
E3DGetMaterialNoByName
E3DGetMaterialAlpha
E3DGetMaterialDiffuse
E3DGetMaterialSpecular
E3DGetMaterialAmbient
E3DGetMaterialEmissive
E3DGetMaterialPower
E3DGetMaterialBlendingMode
E3DSetMaterialAlpha
E3DSetMaterialDiffuse
E3DSetMaterialSpecular
E3DSetMaterialAmbient
E3DSetMaterialEmissive
E3DSetMaterialPower
E3DSetMaterialBlendingMode
E3DGetTextureFromMaterial
E3DSetTextureToMaterial
マテリアル方式の導入につき、古い命令を修正
E3DSetAlpha, E3DSetAlpha2, E3DSetBlendingMode, E3DGetTextureFromDispObj, E3DSetTextureToDispObjの修正。
これらの命令は、パーツの先頭の面が参照しているマテリアルに対して操作を行うように修正しました。
ビルボードはマテリアル方式ではありません。
ビルボードに対する操作はいままでの古い命令を使ってください。
E3DCreateParticleに引数追加
８番目の引数に１を指定すると、Zバッファの内容にかかわらず、常に描画されるようになります。
E3DDestroyAllMotionが機能していなかったのを修正。
パーティクルがfpsに-1を指定したときにもカメラの向きを向くように修正。
E3DGetMaxMultiSampleNumがエラーになることがあるバグを修正。
e3dhsp3_fight.hspサンプルがact1の後に動きが固まるバグを修正。（サンプルの修正）
ver4.0.0.2(2008/04/03)
デバッグ
E3DSetTextureToMaterialで透過モードの異なるテクスチャを貼ると表示されなくなることがあるバグを修正。
１つのパーツの中で複数のテクスチャの貼り方（UV指定とZ軸投影など）を組み合わせたモデルの
表示がおかしくなることがあるバグを修正。
ver4.0.0.3(2008/04/04)
不透明オブジェクト描画時にもアルファテストをするように変更しました。
中間のアルファは出せませんが、色抜きに使用できます。
pngなどのファイルで色を抜きたいところをアルファ０にすれば、半透明設定をしないでもその部分が透過されます。
ver4.0.0.4(2008/04/07)
少し最適化しました。
(自分の環境では）ver4.0.0.1以降、１０％近く描画が遅くなっていましたが、
今回の修正でver3.0.3.7とほぼ同じ速さで描画できるようになりました。
ver4.0.0.5(2008/04/07 その２)
デバッグ
ラインを描画した後にテキストを描画するとテキストが矩形に塗りつぶされてしまうバグを修正。
ver4.0.0.6(2008/04/15)
マルチレイヤーモーションを実装しました。
ボーンごとに異なるモーションを自由なタイミングで再生できます。
moa非対応版
E3DSetMotionKindML
E3DSetMotionFrameNoML
E3DSetNextMotionFrameNoML
moa対応版
E3DSetMOAEventNoML
共通
E3DSetNewPoseML
E3DGetMotionFrameNoML
E3DGetNextMotionFrameNoML
マルチレイヤーモーションのサンプルを追加しました。
e3dhsp3_MultiLayerMotion.hsp
e3dhsp3_MultiLayerMotion_MOA.hsp
マテリアル番号取得命令追加
E3DGetMaterialNo
デバッグ
ビルボードをアッドモードで描画したのち、スプライトを描画すると、
その後のsigモデルの半透明部分がアッドモードで描画されてしまうバグを修正。
修正しましたが、スプライトの描画は一番最後にしないと、直したバージョンでも不具合が出ますので注意してください。
ver4.0.0.7(2008/04/16)
デバッグ
ver4.0.0.1以降のRokDeBone2でmikoto形式から作ったsigファイルを読み込もうとするとエラーになるバグを修正。
ver4.0.0.8(2008/05/06)
バンプマップに対応しました。
設定方法はRokDeBone2の説明をお読みください。
E3DGetCurrentBonePos、E3DGetCurrentBoneQの追加。
マルチレイヤーモーションを使用する場合は、E3DSetNewPoseMLを呼ぶまで、各ボーンの位置と姿勢は確定しません。
そのため、E3DGetBonePos, E3DGetBoneQは使えなくなります。
マルチレイヤーモーションを使用する場合は、このE3DGetCurrentBonePos, E3DGetCurrentBoneQをお使いください。
E3DRenderParticleに引数を追加
onlyupdate引数を追加しました。
これに１を指定すると、パーティクルの状態アップデートだけを行い、描画を行いません。
この引数を省略した場合は、従来通り描画も行われます。
ver4.0.0.9(2008/05/07)
バンプマップのテクスチャのアドレッシングモードを変更。
ver4.0.1.0(2008/05/08)
バンプマップの表示方法を変更しました。
デコボコ表示とテクスチャ表示を２パスでアルファブレンドする方法にしました。
ver4.0.0.9のバンプで黒いポリゴンが表示されていた方は直っていると思います。
ver4.0.1.1(2008/05/09)
バンプマップ処理の変更。
また１パスに戻しました。
頂点シェーダーにミスが見つかったので直しました。
ver4.0.1.2(2008/05/10)
デバッグ
バンプマップの表示が乱れるバグを修正しました。
ver4.0.1.3(2008/05/10 その２)
デバッグ
バンプのdiffuseの影の付き方が逆になっていたバグを修正しました。
ver4.0.1.4(2008/05/13)
命令の追加。
E3DChkBumpMapEnable flag
ハードウェアがバンプマップ表示可能かを調べます。
E3DEnableBumpMap flag
バンプマップを表示するかどうかを設定します。
E3DConvHeight2NormalMap hmapname, nmapname, hparam
白黒の高さ画像データを法線マップデータに変換します。
E3DSetBumpMapToMaterial hsid, matno, texid
E3DCreateTextureで作成したテクスチャをバンプマップに設定します。
ver4.0.1.5(2008/05/21)
デバッグ
マルチレイヤーモーションの各命令で、listの先頭要素しか有効になっていなかったバグを修正しました。
マルチレイヤーモーションの補間計算の無駄を省いて少し高速化しました。
ver4.0.1.6(2008/05/22)
モーション読み込み命令に、移動成分の倍率引数を追加。
E3DAddMotion
E3DAddMotionFromBuf
E3DLoadMOAFile
に引数を追加。
ver4.0.1.7(2008/05/25)
ver4.0.1.7のRokDeBone2のファイルに対応しました。
ver4.0.1.8(2008/05/26)
デバッグ
オブジェクトの最後のポリゴンにだけ別の材質が設定されている場合に読み込みエラーになるバグを修正。
地面データとしてmikoto形式データを読み込めるようにしました。
E3DLoadMQOFileAsGroundにbonetype引数を追加。
（ボーン変形した地面とのあたり判定命令は、まだサポートしていません。）
ver4.0.1.9(2008/06/02)
RokDeBone2 ver4.0.1.9の新しいquaファイルに対応。
(2008/06/12)
マニュアルにTips　：　マルチレイヤーモーションとは？を追加しました。
ver4.0.2.0(2008/06/17)
デバッグ
モデルデータによっては、アルファテストがうまく行われないことがあるバグを修正。
ver4.0.2.1(2008/06/27)
デバッグ
E3DGetSamePosVertのsamenumに値が代入されていなかったバグを修正しました。
ver4.0.2.2(2008/07/12)
デバッグ
E3DSetMOAEventNoMLを複数回呼び出すと、呼び出すたびにフレーム番号が１ずつずれるバグを修正しました。
ver4.0.2.3(2008/07/20)
キーフレームによるテクスチャアニメ再生機能を追加しました。
RokDeBone2 ver4.0.2.6のquaファイルに対応。
ver4.0.2.4(2008/07/23)
MOAの情報取得と設定用の命令を追加。
E3DGetMOATrunkInfo
E3DGetMOABranchInfo
E3DSetMOABranchFrame1
E3DSetMOABranchFrame2
モーション変化する際の分岐元フレーム番号と分岐先フレーム番号をHSP側から動的に設定できるようになりました。
ver5.0.0.1(2008/08/31)
ver5.0.0.1での変更点をご覧ください。
RokDeBone2　ver5.0.0.1　の各ファイルに対応。
命令の追加
ディスプレイスイッチの設定
E3DSetDispSwitch2
オイラー角の取得
E3DQtoEuler
色P時にも輪郭表示を可能にしました。
E3DEnablePhongEdge
E3DSetPhongEdge0Params
ver5.0.0.2(2008/09/10)
デバッグ
VistaでEasy3Dを使ったソフトを実行中に他のソフトをアクティブにすると、Easy3Dのソフトが応答なしになるバグを修正。
E3DWaitByFPSを修正しました。
ver5.0.0.3(2008/09/14)
E3DSetPhongEdge0Paramsの拡張
色P時の輪郭線を半透明で表示できるようになりました。
半透明モードは４種類から選びます。
ver5.0.0.4(2008/09/15)
デバッグ
E3DDestroyHandlerSetを呼ぶと、必要な（使用中の）テクスチャまでが削除されてしまうことがあるバグを修正。
テクスチャの破棄処理がver4以降のマテリアル構造に対応していなかったのが原因でした。
E3DGetVertPosの拡張
頂点のグローバル座標が取得できるようになりました。
ver5.0.0.5(2008/09/15 その２)
デバッグ
E3DDestroyHandlerSetを呼ぶと必要なバンプマップテクスチャが削除されてしまうことがあるバグを修正。
ver5.0.0.6(2008/09/18)
E3DGetDispSwitch2を追加。
新しいディスプレイスイッチに対応。
古いE3DGetDispSwitchは機能しません。
ver5.0.0.7(2008/09/23)
スレッド系命令の整備
テクスチャのディレクトリ
今まではスレッド命令で参照するテクスチャはすべて１か所にないと読み込めませんでしたが
これからはsig, mqoごとに異なるディレクトリにデータが入っていてもテクスチャが読み込めるようになりました。
呼び出し回数制限緩和
今までは総呼び出し回数が４０９８回という制限がありましたが
これからはE3DFreeThreadという命令を実行が終わったスレッドに対して呼び出すことで
実質的に何回でも呼び出せるようになります。
ただし一度にアクティブにできるスレッド命令の数は４０９８個のままです。
E3DFreeThread命令でデータ領域の使い回しが可能になり、またスレッドリソースの解放を行えるようになりました。
新命令追加
E3DFreeThread
E3DLoadSigFileAsGroundThread
E3DLoadSigFileAsGroundFromBufThread
ver5.0.0.8(2008/10/02)
最適化しました
シェーダーの定数周りの処理を最適化しました。
少し高速化出来ました。
バンプマップに点光源を適用できるようにしました。
E3DSetLightIdOfBumpMap でバンプマップを照光するライトを１つだけ選択できるようにしました。
（シェーダー２．０があるマシンでは、色P時（バンプ以外）には３つまでライトを適用できます。）
スプライトのUVを設定できるようにしました。
１枚の画像でもUVを変えることでさまざまな模様を表示できるようになります。
E3DSetSpriteUV命令で設定します。
スプライトUVのサンプルを追加しました。
e3dhsp3_SpriteUV.hspを新規作成しました。
(2008/10/03)
e3dhsp3_SpriteUV.hspの修正。
スプライト描画時のscalex, scaleyを実数にしました。
ver5.0.0.9(2008/10/18)
テクスチャへのレンダリングに対応しました。
テクスチャへのレンダリングはE3DCreateRenderTargetTextureで作成したテクスチャでのみ可能です。
E3DCreateRenderTargetTextureが成功するとスワップチェインIDとテクスチャIDが取得できます。
スワップチェインIDで描画を行い、テクスチャIDでマテリアルへの貼り付けを行います。
（内部データの種類的には厳密にはスワップチェインではないのですが、
Easy3Dの既存の機能を流用するためにスワップチェインの一種として分類しました。）
車のバックミラーや疑似的なTV画面などに使えると思います。
命令の追加
E3DCreateRenderTargetTexture
E3DDestroyRenderTargetTexture
鏡面として応用したサンプル　e3dhsp3_RenderTargetTexture.hsp　を作りました。
ver5.0.1.0(2008/10/28)
デバッグ
MOAの補間がディスプレイスイッチアニメを考慮していなかったのを修正しました。
補間モーションの最初のフレームに、変化前のモーションのスイッチの状態がセットされるようにしました。
ver5.0.1.1(2008/10/31)
デバッグ
補間モーション再生中にまた新たな補間モーションに変化する場合に、
ディスプレイスイッチの情報がうまく引き継げないバグを修正しました。
ver5.0.1.2(2008/10/31 その２)
E3DSetDSFillUpMode命令の追加。
補間時に補間前のモーションのスイッチ状態を表示するか
もしくは補間後のモーションのスイッチ状態を表示するかを選びます。
キーフレームが１つもないスイッチアニメの補間時にモーションがおかしくなる不具合を修正。
ver5.0.1.3(2008/11/01)
MOAのモーションの補間時にテクスチャアニメも考慮するようにしました。
E3DSetTexFillUpMode命令の追加。
補間時に補間前のモーションのテクスチャを表示するか
もしくは補間後のモーションのテクスチャを表示するかを選びます。
ver5.0.1.4(2008/11/02)
E3DCameraDirRight, E3DCameraDirLeftの修正。
左右にカメラを振っていると突然全く動かなくなることがあるのを修正。
たぶん直ったと思いますが、まだ不具合が出るようでしたら連絡ください。
ver5.0.1.5(2008/11/05)
デバッグ
E3DSetLightIdOfBumpMapが正常に動作していなかったのを修正。
ver5.0.1.6(2008/11/16)
影表示機能の追加。
深度バッファ法で影の描画が出来るようになりました。
新命令
E3DSetShadowMapCamera
E3DSetShadowMapProjOrtho
E3DRenderWithShadow
E3DSetShadowBias
E3DCheckRTFormat
E3DChkShadowEnable
E3DEnableShadow
影表示のサンプルの追加
e3dhsp3_shadow.hsp
E3DCreateRenderTargetTextureに引数追加。
フォーマットを指定できるようにしました。
マニュアルに影付きレンダリングの仕方を追加。
ver5.0.1.7(2008/11/19)
ビデオカードによってはビルボードの影が四角くなってしまうのを修正。
e3dhsp3_shadow.hspのD3DFMT_R32FをD3DFMT_A16B16G16R16Fに変更しました。
影付きレンダリングの仕方に追記しました。
影の暗さを設定できるようにしました。
E3DSetShadowDarkness
E3DRenderWithShadowにskipflag引数を追加しました。
画面バッファのクリアと背景の描画をスキップできます。
hsidをまとめて描画できる命令を追加しました（影なし）
E3DRenderBatch
２０体のキャラクターでテストしたところ１０％程度高速化しました。
頂点座標をまとめてセットできる命令を追加しました。
E3DSetVertPosBatch
ver5.0.1.9(2008/11/22)
デバッグ
シャドウマップ描画時の視野内判定のプロジェクション行列が間違っていたのを修正しました。
シャドウマップの視野内に入っているのに影が落ちない不具合が直りました。
ver5.0.2.0(2008/11/24)
影の表示にLiSPSMを導入しました。
影用のカメラの位置やプロジェクションをユーザーさんが設定しなくても自動的に適切なシャドウマップが作成されます。
地面以外の視野内オブジェクトが必ずシャドウマップに含まれるように自動的に設定されます。（パーツ数合計１０００個まで）
影のサンプルを新しくしました（e3dhsp3_shadow2.hsp）
新命令追加
E3DSetShadowMapLightDir
以下の命令は無効になりました（何もしないでリターンします）
E3DSetShadowMapCamera
E3DSetShadowMapProjOrtho
影付きレンダリングの仕方を書き直しました。
ver5.0.2.1(2008/11/28)
hsidの個数に制限を設けました。
同時にアクティブにできるhsidの個数は１０００個までです。
内部オブジェクトの検索が速くなりました。
１０００個のsigを表示したときのFPS　変更前２４FPS-->変更後３９FPS
１００個くらいだとあまり効果がありません。
E3DRenderBatchModeの追加。
不透明のみ描画するか半透明のみ描画するか両方描画するかをhsidごとに指定できます。
１０００個のsigで計測時、１０％ほど高速化。
E3DGlobalToLocal, E3DLocalToGlobalの追加。
グローバル座標系とキャラクターのローカル座標系の座標値を変換する命令です。
動く乗物に乗ったり降りたりするときに便利です。
ver5.0.2.2(2008/11/29)
デバッグ
Lineが表示されないバグを修正。
E3DSetVertPosBatchAOrderを追加。
２次元配列の順番を変えたバージョンです。
E3DSetShadowMapModeを追加。
モード１を指定するとver5.0.2.0以前の手動によるシャドウマップの作成が出来ます。
モード０はLiSPSMの自動設定です。
３Dサウンドのサンプルから周波数設定部分を取り除きました。
リバーブ有効時はエラーになるため。
ver5.0.2.3(2008/11/30)
デバッグ
カメラ命令の呼び方によってはバンプモデルがキー入力やマウス移動に合わせてちらつくバグを修正。
ver5.0.2.4(2008/12/01)
デバッグ
一度でも描画を行うと、その後のデータロードが待機状態になり終了しなくなるバグを修正。
同期オブジェクト（クリティカルセクション）の解放し忘れが原因でした。
ver5.0.2.1からのバグです。
ver5.0.2.5(2008/12/02)
命令の追加
E3DLoadTextureFromBuf
作成済みのテクスチャにバッファから画像を読み込む。
E3DLoadSpriteFromBMSCR
作成済みのスプライトにHSPバッファから画像を読み込む。
両方とも既存のテクスチャやスプライトに対する処理なので
頻繁に内容を更新したいときに作成と破棄の必要がなく
メモリ周りの心配も軽減されます。
ver5.0.2.6(2008/12/10)
トゥーンでも影表示できるように拡張しました。
COL_TOON1, COL_TOON0の両方に対応しました。
デバッグ
E3DDestroyHandlerSetでテクスチャが破棄されなくなっていたバグを修正。
ver5.0.2.1からのバグでした。
ver5.0.2.7(2008/12/17)
E3DSetShadowMapInterFlagを追加。
パーツをシャドウマップに含めるかどうかを制御するフラグを設定出来ます。
デバッグ
E3DLoadSpriteFromBMSCRでtransparentが２のときの透過色指定が有効になっていなかったのを修正。
マニュアル追記
E3DLoadTextureFromBufはテクスチャ作成命令で指定したのと同じtransparentを指定しないとエラーになること、
E3DLoadSpriteFromBMSCRはE3DCreateSpriteFromBMSCRで指定したのと同じtransparentを指定しないとエラーになること
を追記しました。
ver5.0.2.8(2008/12/29)
RokDeBone2 ver5.0.2.9の新しいsigファイルに対応。
ver5.0.2.9(2009/01/07)
RokDeBone2 ver5.0.3.0のアルファテストに対応したsigファイルに対応。
E3DSetMaterialAlphaTest追加。
マテリアルごとに不透明描画時と半透明描画時のアルファテストを設定できます。
E3DGetScreenPos, E3DGetScreenPos3, E3DGetBBoxがビルボードで機能していなかったのを修正。
E3DTransformBillboardを追加。E3DRenderBillboardにtransskip引数を追加。
デフォルト状態のE3DRenderBillboardでは描画準備の計算と描画の処理がいっぺんに行われていました。
そのためあたり判定は描画の後にしなくてはならず、実際の描画と判定が１フレームずれるという問題がありました。
この問題を解決するためにE3DTransformBillboardを追加しました。
この命令は視野内判定と位置計算とソートを行います。
この命令を呼び出したあとビルボードの位置などに変更がない場合は、E3DRenderBillboardのtransskip引数に１を設定します。
そうすることで２度同じ描画準備の計算を行うことを防ぎます。
つまり、E3DTransformBilboard ---> あたり判定 ---> E3DRenderBillboard (transskip = 1)　のようにして使います。
ver5.0.3.0(2009/01/11)
hsidに対する回転、移動の命令をパーティクルにも使用できるようにしました。
hsidの代わりにパーティクルIDを命令に渡します。
例えばE3DSetPos ptlid, posx, posy, poszとするとパーティクル全体が（posx, posy, posz）だけ移動します。
ver5.0.3.1(2009/01/23)
E3DRenderBatch使用時にライン表示がカメラなどのパラメータを反映していなかったバグを修正。
ver5.0.3.2(2009/01/29)
E3DSaveMQOFileでテクスチャ名からパスを取り除く処理をやめました。
sig, mqoに記述されているのと同じ文字列を出力します。
ver5.0.3.3(2009/03/03)
デバッグ
E3DIKTranslateの内部の座標系が一部間違っており、繰り返し呼び出すと正しく動作しないバグを修正。
ver5.0.3.3(2009/03/15)
サンプルの追加。
e3dhsp3_fight_MOA.hspを追加しました。
MOAを使った格ゲーサンプルです。
モデルデータはISAOさんのpooちゃん。
dllはそのまま。バージョン番号もver5.0.3.3のまま。
ver5.0.3.4(2009/03/20)
E3DCalcMLMotion命令の追加。
マルチレイヤーモーション用の命令。
ローカルの姿勢から親子関係を反映した姿勢を計算します。
この命令はE3DSetNewPoseML内部からも呼ばれています。
E3DSetNewPoseMLより後でE3DSetBoneQした場合などに、この命令を呼んでください。
ver5.0.3.5(2009/03/28)
RokDeBone2 ver5.0.3.3のsigファイルに対応。
ver5.0.3.6(2009/03/29)
デバッグ
E3DRenderBatchModeのhsidarrayにパーティクルのIDを指定した際
パーティクルより後の半透明オブジェクトが不透明で描画されてしまうバグを修正。
関数表のE3DRenderBatchModeの項に追記。
ver5.0.3.7(2009/04/01)
影響度の設定関数を追加。
E3DCreateSkinMat　影響度の設定を表示データに反映させる。
E3DSetSymInfElem　軸対称の影響度を頂点にセットする。
E3DUpdateSymInfElem　軸対称設定の頂点の影響度を最新に更新する。
E3DSetInfElem, E3DDeleteInfElem, E3DNormalizeInfElemのマニュアルに追記。
E3DCreateSkinMatを呼ばないと表示に反映されないことを追記。
ver5.0.3.8(2009/04/12)
デバイスロスト時の処理を修正しました。
E3DSaveQuaFileとE3DSaveQua2Buf命令に引数を追加。
quatype引数で、番号基準のフォーマットか名前基準のフォーマットかを指定するようになりました。
RokDeBone2 ver5.0.3.4のquaファイルに対応。
ver5.0.3.8(2009/04/13 その２)
マニュアルにSig, Qua, Moaファイルの読み込みがエラーになるときを追加しました。
プログラムはそのまま。
ver5.0.3.9(2009/04/16)
デバイスロストの処理を修正。
ビルボード、スプライト、フォント、D3DPOOL_DEFAULTのテクスチャなどの処理を修正しました。
これでXP,VistaともCtrl + Alt + Delしても落ちたり固まらなくなりました。
ver5.0.4.0(2009/04/20)
デバイスロストが起こるとBG（背景）のUV座標が初期化されてしまう不具合を修正しました。
E3DSetJointInitialPosを追加。
ver5.0.4.1(2009/04/30)
バンプマップを設定したモデルを照らすライトの数を最大３個までに増やしました。
２個目、３個目のライトは　E3DSetLightID2OfBumpMap, E3DSetLightID3OfBumpMapで設定します。
ただし影を表示している場合はE3DSetLightIDOfBumpMapで設定したライト１個だけしか有効になりません。
ver5.0.4.2(2009/05/07)
RokDeBone2の面マテリアルのテクスチャの透過設定で「通常モード」以外を選択するとバンプマップが有効にならないバグを修正。
ver5.0.4.3(2009/05/23)
RokDeBone2 ver5.0.4.2の新しいsigファイルに対応。
ver5.0.4.4(2009/05/28)
E3DSetUVをビルボードに対しても呼び出せるように拡張しました。
ビルボードの処理をしたい場合はhsidに-1を渡し、パーツ番号にビルボードIDを渡します。
ビルボードの頂点番号は左下が０、左上が１、右下が２、右上が３です。
ver5.0.4.5(2009/05/29)
E3DSetBillboardUVに引数revuflagを追加しました。
１を指定するとテクスチャを左右反転させます。０指定はそのままとなります。
ver5.0.4.6(2009/06/11)
デバッグ
RokDeBone2でテクスチャを変更して参照されなくなったのにも関わらず、データを作成していたバグを修正。
ver5.0.4.7(2009/06/18)
キャラクターから見て任意の方向のベクトルを取得する命令を追加。
E3DGetCharaDir [IN]hsid, [IN]degxz, [IN]degy, [OUT]dirx, [OUT]diry, [OUT]dirz
degxzにはXZ平面上の角度をdegyには仰ぎ角度を指定します。
例えばキャラクターの向いている向きを取得したい場合は ( degxz, degy ) = ( 0.0, 0.0 )を指定します。
キャラクター後ろは(180.0, 0.0), 右は(-90.0, 0.0)左は(90.0, 0.0)上は（0.0, 90）下は(0.0, -90)というように指定します。
ver5.0.4.8(2009/06/30)
RokDeBone2 ver5050のquaファイルに対応。
モーションポイントごとの補間方法設定に対応しました。
ver5.0.4.9(2009/07/02)
モーションアクセラレータのバージョンアップ
TRUNK（分岐の親）モーションに補間なしフラグを設定できるようにしました。
共通分岐イベント用です。
今まではBRANCH(分岐の子供)モーションに１個１個補間なしフラグを設定しなければいけませんでしたが
親に設定するだけで済むようになり手間が省けます。
moaファイルのバージョンがver4.0になりました。
moaファイルのフォーマットについてはモーションアクセラレータとはをご覧ください。
ver5.0.5.0(2009/07/05)
ブレンドモードの追加。
RokDeBone2 ver5.0.5.4以降でのモードの設定に対応。
sigの他、スプライト、ビルボード、パーティクルに対応。
E3DSetBlendingMode, E3DSetMaterialBlendingModeの拡張。
モード１０３で乗算、１０４で減算、１０５でスクリーン、１０６でネガ反転。
E3DSetRenderStateでD3DRS_BLENDOP, D3DRS_SRCBLEND, D3DRS_DESTBLENDは制御できません。
ブレンドモードに対応して内部で設定命令を呼びます。
ver5.0.5.1(2009/07/06)
E3DGetStrSizeByFontIDを追加。
文字列の描画に必要な幅と高さを取得できます。複数行に対応。
ver5.0.5.2(2009/07/12 その２)
デバッグ
E3DChkConfParticleが非表示のパーティクルについても判定を行ってしまっていたバグを修正。
ver5.0.5.3(2009/07/17)
デバッグ
E3DDestroyBillboardを呼んでもメモリが解放されないバグを修正。
ただし他のオブジェクトで同じテクスチャ（かつ同じ透過方法）を参照している場合はメモリは解放されません。
ver5.0.5.4(2009/07/19)
形状データ読み込み命令のadjustuvflagに２を指定したときは
UV座標を０から１にクランプして読み込むようにしました。
この件で以下の命令を拡張。
E3DImportMQOFileAsGround
E3DLoadGndFile(HSP)
E3DLoadGndFileFromBuf(HSP)
E3DLoadGndFileFromBufThread(HSP)
E3DLoadGndFileThread(HSP)
E3DLoadMQOFileAsGround
E3DLoadMQOFileAsGroundThread
E3DLoadSigFileAsGround
E3DLoadSigFileAsGroundFromBuf
E3DLoadSigFileAsGroundFromBufThread
E3DLoadSigFileAsGroundThread
E3DSigImport
E3DSigImportFromBuf
E3DSigLoad
E3DSigLoadFromBuf
E3DSigLoadFromBufThread
E3DSigLoadThread
ver5.0.5.5(2009/07/21)
E3DSetUVの拡張
UV座標を０．０から１．０の間にクランプすることが出来るフラグを追加しました。
頂点番号に-1を指定した場合の処理を高速化しました。
E3DSetUVBatchの追加。
複数の頂点のUV設定を一括で行うための命令です。
ビデオバッファのロックとアンロックの回数が最小限のため、複数回E3DSetUVを呼び出すよりも高速です。
ver5.0.5.6(2009/07/30)
E3DPresentがモニタの垂直同期に合わせて実行されるオプションを追加しました。
デフォルト状態では垂直同期しません。
E3DSetPresentInterval命令に１を渡すと垂直同期するようになります。
E3DSetPresentInterval命令はE3DInitより前に呼び出すことを想定しています。（途中で変えられません。）
E3DGetScreenPosDouble命令を追加しました。
今までのE3DGetScreenPos*はscx, scyが整数であったためインジケータ表示などに使うと位置が小さく震えることがありました。
scx, scy, sczとも実数のバージョンなので誤差が少ないです。
ver5.1.0.0(2009/08/08)
ピクセルシェーダー２．０以降が働かないビデオカードでは実行できなくなりました。
これによりEasy3Dが動く環境ではバンプマップや影が必ず使用できることが保証されます。
頂点番号のインデックスを３２ビット化
２万頂点の制限を撤廃しました。
高さフォグの実装。
E3DSetHeightFogParamsを追加。
e3dhsp3_HeightFog.hspサンプルを追加。
ビルボードの大きさ変更命令を追加。
E3DSetBillboardSize
背景へのテクスチャのセットと取得命令を追加。
E3DSetTextureToBG
E3DGetTextureFromBG
ver5.1.0.1(2009/08/10)
ブレンディングモードを２つ追加しました。
オーバーレイ風合成と覆い焼き風モードの２つを追加しました。
E3DSetBlendingMode, E3DSetMaterialBlendingModeを拡張しました。
ver5.1.0.2(2009/08/11)
ver5.1.0.0から必須だった３２ビットインデックスモードをオプションに変更しました。
E3DInit命令にindex32bit引数を追加しました。
index32bit引数に１を指定すると３２ビットインデックスモードで起動し、０を指定すると１６ビットインデックスモードで起動します。
３２ビットインデックスモードでは６５５３５/３ポリゴンまでの制限がなくなります。
３２ビットインデックスモードではビデオカードに能力が無い場合は起動できなくなります。
多くのネットブックなどでは３２ビットインデックスモードは動かないようなので注意してください。
ver5.2.0.0(2009/09/01)
RokDeBone2 ver5.2.0.0のモーフィングアニメに対応。
ピクセルシェーダ２．０が無い環境で起動できないとメッセージが出たにも関わらず起動出来てしまうバグを修正。
エラー終了するようにしました。
E3DCreateQでクォータニオンを内部で使いまわす場合に姿勢数値の初期化をしていなかったのを修正。
ver5.2.0.1(2009/09/09)
RokDeBone2 ver5.2.0.2の制限なしのUVアニメに対応。
モーションアクセラレータのアイドリングモーションを変更できる命令を追加。
E3DChangeMoaIdlingを追加。
ver5.2.0.2(2009/09/13)
quaのタイプを名前基準のみにしていましたが、番号基準のファイルを復活させました。
名前基準のquaでボーン情報の多いファイルをボーンの少ないsigに対して読み込むとエラーになる不具合を修正。
ver5.2.0.3(2009/10/07)
移動軌跡ボリュームによるモーションブラー効果の実装。
E3DSetMotionBlur
E3DSetBeforeBlur
E3DRenderMotionBlur 命令の追加。
キャラクターの位置が変化したときに表示されるワールドブラーモードと
キャラクターの位置またはカメラが変化したときに表示されるカメラブラーモードの２種類を作りました。
モーションブラーのサンプルe3dhsp3_MotionBlur.hspを追加
ver5.2.0.4(2009/10/08)
モーションブラー効果の修正。
ver5.2.0.3のモーションブラーは表示がカクカクとなめらかではなかったので、なめらかに表示できるように修正しました。
E3DSetMotionBlurにblurtime引数を追加。
E3DSetBeforeBlurの動作と使い方を変更（毎フレーム呼び出すようにしました）
E3DInitBeforeBlurの追加。
（命令の動作や使い方が変わったのでver5.2.0.3をDLしていた方はもう一度命令表を読み直してください。）
モーションブラーのサンプルe3dhsp3_MotionBlur.hspを修正。
ver5.2.0.5(2009/10/09)
デバッグ
モーションブラー効果のデバッグ
カメラブラーモードでの速度計算の座標系が間違っていました。
以前のブラーはワールド座標が変化していないオブジェクトのブラーが不完全でした。
動かない地面にもカメラが動けばブラーが掛かるようになりました。
モーションブラーのサンプル（HSP版はe3dhsp3_MotionBlur.hsp, C++版はMotionBlurソリューション）を修正。
E3DSetMotionBlurのblurtime引数の値を調整しました。
ver5.2.0.5(2009/10/09 その３)
関数表に誤記がありました。
（誤）E3DSetMotioinBlur ---> (正)E3DSetMotionBlur
（誤）E3DInitBoforeBlur ---> (正)E3DInitBeforeBlur
関数表だけ修正してバージョンはそのままでリリースしなおしました。（18:50頃）
ver5.2.0.6(2009/10/10)
モーションブラーの設定をパーツ単位で行えるようになりました。
E3DSetMotionBlurPart　命令の追加。
ver5.2.0.7(2009/10/16)
モーションブラーの不具合の修正。
モーションブラーを表示している状態で視野外にフレームアウトし再びフレームインしたときに意図しないブラーが表示されるのを修正。
視野外から視野内にフレームインした瞬間に内部でE3DInitBeforeBlurを呼び出すようにしました。
ユーザーさんのソースコードを修正する必要はありません。
ver5.2.0.8(2009/10/20)
ポストエフェクトの追加。
ぼかし処理を４種類実装しました。
E3DBlurTexture16Box
E3DBlurTexture9Corn
E3DBlurTextureGauss5x5
E3DBlurTextureGauss
２つのテクスチャをアルファブレンドして１つのテクスチャにする命令の追加。
E3DBlendRTTexture
ポストエフェクトのサンプルを追加。
HSP版-->e3dhsp3_BlurTexture.hsp
C++版-->BlurTextureソリューション
ポストエフェクトのシェーダーファイルを公開。
E3D_HLSLフォルダの中にfxファイルを同梱。
今バージョンからdllと同じフォルダにE3D_HLSLフォルダがないとエラーになります。
詳しくはインストールの仕方のページ（HSP版はここ。C++版はここ。）をご覧ください。
E3DBeginSceneで描画に使用するZバッファを指定できるようにしました。
HSP版-->E3DBeginSceneにzscid引数を追加
C++版-->E3DBeginSceneZbufを追加。
RokDeBone2 ver5.2.0.7の新しいsigファイルに対応。
ver5.2.0.9(2009/10/24)
サーフェスのクリア色（背景色）を設定する命令の追加
E3DSetClearCol
スワップチェインごとに設定できます。
モーションブラーのブラーの消え具合の設定命令の追加
E3DSetMotionBlurMinAlpha
ver5.2.1.0(2009/10/30)
ポストエフェクトのグローを実装。
RokDeBone2　ver5.2.0.8のグロー設定済みsigファイルに対応。
サンプルとしてe3dhsp3_glow.htm(HSP)、Glowソリューション（C++）を追加。
命令の追加。
E3DRenderGlow
E3DSetMaterialGlowParams
E3DGetMaterialGlowParams
E3DSetMaterialTransparent
E3DGetMaterialTransparent
E3DBeginScene (C++版はE3DBeginSceneZbufも)のskipflagを拡張。
skipflagに０を指定すると色の初期化とZバッファの初期化と背景の描画を行います。
skipflagに１を足すと色の初期化とZバッファの初期化と背景の描画を行いません。
skipflagに２を足すとシェーダー定数のビデオカードへの転送をキャンセルします。
skipflagに４を足すと色の初期化は行いますがZバッファの初期化と背景の描画は行いません。
ver5.2.1.1(2009/11/04)
コンパイラーをVisual Studio 2005から2008に変更しました。
C++版のサンプルのソリューションも2008用になりました。
パーツの数の２乗に比例して消費するメモリ作成を止めました。
リアルタイムで計算するように変更。
これによる速度の変化はほとんどありません。（vs2008にした影響で少しだけ速くなります。）
デバッグ
E3DBlendRTTextureのblendopにD3DBLENDOP_ADD以外を指定すると真っ黒になってしまうバグを修正しました。
ver5.2.1.2(2009/11/05)
ビルボードとパーティクルのアルファテストを全てのブレンディングモードでオンにしました。
ビルボードの後ろ側が透過されない不具合が軽減されます。
（ビルボード以外はE3DSetMaterialAlphaTestでアルファテストをオンにすることが出来ます。）
（アルファテストとはアルファの小さい部分の描画とZバッファへの記録を行わない機能のことです。）
ver5.2.1.3(2009/11/06)
ボーンのあるデータに対しPickなどの操作を行うとエラーになる可能性があるバグを修正。
（ver5.2.1.1からのバグでした。）
ver5.2.1.4(2009/11/07)
デバッグ
E3DBlurTexture系の４命令がそれよりも前に呼んだ命令のブレンディングレンダーステートの影響を受けてしまうバグを修正。
具体的にはE3DBlendRTTexture命令の後でE3DBlurTexture* を呼ぶと結果が真っ黒になることがありました。
ver5.2.1.5(2009/11/13)
ピクセル単位のPhongライティングモードを追加。
Pixel Phong実行時のスクリーンショットはRokDeBone2の新機能のページのver5.2.1.2のところをご覧ください。
E3DSetShaderType, E3DGetShaderTypeの拡張。
シェーダータイプにCOL_PPHONGを追加しました。
デバッグ
ボーンのあるデータを読み込みモーションを読み込まない状態でE3DPickVertするとエラー終了するバグを修正。
ver5.2.1.6(2009/11/18)
HDRライティングに対応。
HDRのブルーム効果サンプルを作りました。
HSP版はe3dhsp3_HDRLighting.hsp
C++版はHDRLightingソリューション
命令の追加。
E3DChkHDR
E3DSetHDRLightDiffuse
E3DSetHDRLightSpecular
E3DDownScaleRTTexture4x4
E3DDownScaleRTTexture2x2
E3DCreateToneMapTexture
E3DRenderToneMap
E3DBrightPassRTTextureHDR
E3DDestroyToneMapTexture
E3DRenderHDRFinal
ポストエフェクトを使わない人のために、使用しないと宣言した場合はE3D_HLSLフォルダが無くても実行できるようにしました。
E3DDisablePostEffect
E3DInitを実行する前にEasy3Dが実行可能な環境であるかどうかを調べられる命令を追加。
E3DCheckSpec
ver5.2.1.7(2009/11/21)
ポストエフェクトを２個追加。
モノトーンフィルターの追加。
テクスチャの内容を白黒画像に変換します。
E3DMonoRTTexture命令の追加。
サンプルはHSP版はe3dhsp3_Mono.hsp, C++版はMonoソリューション。
CbCrフィルターを追加。
テクスチャの内容をYCbCr色空間に変換しYを保ったままCbとCrを指定値に設定します。
YCbCrの各値ががどんな色なのかはPhotoshopなどのペイントソフトで確認してください。
E3DCbCrRTTexture命令の追加。
サンプルはHSP版はe3dhsp3_CbCr.hsp, C++版はCbCrソリューション。
ver5.2.1.8(2009/11/22)
カスタムHLSL機能を追加。
posteffect.fxの与えられたエントリーを自由に編集して実行させることが出来ます。
ユーザーさんが設定できるデータ領域は
float2 avSampleOffsets[16];
float4 avSampleWeights[16];
float4 userFL4_0;
float4 userFL4_1;
float4 userFL4_2;
float4 userFL4_3;
float4 userFL4_4;
float4 userFL4_5;
float4 userFL4_6;
float4 userFL4_7;
float4 userFL4_8;
float4 userFL4_9;
texture usertex0;
texture usertex1;
texture usertex2;
texture usertex3;
texture usertex4;
ユーザーさんが編集できるテクニック領域は
technique PostEffectUser0
technique PostEffectUser1
technique PostEffectUser2
technique PostEffectUser3
technique PostEffectUser4
です。
新規命令
E3DShaderConstOffset16
E3DShaderConstWeight16
E3DShaderConstUserFL4
E3DShaderConstUserTex
E3DCallUserShader
E3DCreateRenderTargetTextureで取得したscidに対してもE3DCreateBG出来るようにしました。
デバッグ
レンダーターゲットテクスチャを作成した状態でE3DByeした後E3DInitするとエラー終了するバグを修正。
ver5.2.1.8(2009/11/22 その２)
Easy3D(HSP, C++両方)のマイナーバージョンアップ　ver5.2.1.8のまま
カスタムHLSLのサンプルについての記述を忘れていました。
HSP版はe3dhsp3_CustomShader.hsp, C++版はCustomShaderソリューションにサンプルがあります。
マニュアルにサンプルの参照先を記述追加。
ver5.2.1.8(2009/11/22 その３)
Easy3D For HSP3のマイナーバージョンアップ　ver5.2.1.8のまま
マニュアルのE3DCheckSpec命令の引数が１つ抜けていたのを修正。
ver5.2.1.9(2009/11/27)
ボーンの作成と削除の命令を追加。
E3DCreateBone
E3DDestroyBone
ゴミデータの再利用機能も付いています。
ver5.2.2.0(2009/12/03)
RokDeBone2 ver5.2.1.6のピクセルシェーダーでのトゥーン表示に対応しました。
COL_TOON1とCOL_TOON0の統合をしました。（COL_TOON1に統一）
E3DSetShaderTypeでCOL_TOON0を指定してもCOL_TOON1がセットされます。
ver5.2.2.1(2009/12/19)
デバッグ
E3DPickFace, E3DChkConfLineAndFaceにバグがありました。
ボーンのある形状に対して呼んでもボーン変形されない座標で判定されていました。
ver5.2.1.1からのバグでした。
ver5.2.2.2(2009/12/22)
アルファテストの設定を変更しました。
今までは半透明のアルファテストはデフォルトでオフでしたが、オンに変更しました。
これによりメタセコイアでのアルファテスト設定と同じになりました。
この変更はmqoからデータを読み込みなおした際に有効になります。設定済みのsigには影響がありません。
アルファテストの設定を変更したい場合は以下のどれかの方法で変更してください。
１、RokDeBone2の「材質」-->「面マテリアル」メニューでダイアログを出して設定。
２、E3DSetMaterialAlphaTest命令で設定。
ver5.2.2.3(2009/12/27)
モーフの情報取得設定のための命令を追加。
E3DGetMorphBaseNum
E3DGetMorphBaseInfo
E3DGetMorphTargetInfo
E3DGetMorphKeyNum
E3DGetMorphKey
E3DGetCurMorphInfo
E3DCreateMorph
E3DAddMorphTarget
E3DSetMorphKey
E3DDestroyMorphKey
モーフ情報を取得し表示するサンプルe3dhsp3_MorphInfo.hspを追加。
モーフを作成してから情報を表示するサンプルe3dhsp3_MorphInfo_Createを追加。
ver5.2.2.4(2010/01/01)
デバッグ
モーションブラー表示のバグを修正。
モデルデータと原点との間にゴミのようなブラーが表示されるのを修正しました。
ver5.2.2.0からのバグでした。
ver5.2.2.5(2010/01/02)
トゥーン情報の取得設定命令を追加。
E3DGetToon1MaterialNum
E3DGetToon1Material
E3DSetToon1Name
E3DSetToon1Diffuse
E3DSetToon1Specular
E3DSetToon1Ambient
E3DSetToon1NL
E3DSetToon1Edge0
トゥーン情報取得設定のサンプルを追加（HSP版はe3dhsp3_ToonInfo.hsp、Win32版はToonInfoソリューション）。
ver5.2.2.6(2010/01/05)
E3DSetShadowMapInterFlag命令のflag引数に値を追加。
SHADOWIN_EXCLUDEを指定した場合にはシャドウマップから除外するようにしました。
ver5.2.2.7(2010/01/24)
RokDeBone2のカメラアニメファイルに対応しました。
プログラムでカメラアニメの再生と編集ができる機能を追加しました。
追加命令
E3DLoadCameraFile
E3DDestroyCameraAnim
E3DSaveCameraFile
E3DSetCameraAnimNo
E3DGetCameraAnimNo
E3DSetCameraFrameNo
E3DGetCameraFrameNo
E3DSetNewCamera
E3DSetNextCameraAnimFrameNo
E3DGetNextCameraAnimFrameNo
E3DCreateNewCameraAnim
E3DSetCameraFrameNum
E3DGetCameraFrameNum
E3DSetCameraAnimName
E3DGetCameraAnimName
E3DSetCameraAnimType
E3DGetCameraAnimType
E3DSetCameraKey
E3DGetCameraKey
E3DDeleteCameraKey
E3DGetCameraKeyframeNoRange
E3DSetCameraSWKey
E3DGetCameraSWKey
E3DDeleteCameraSWKey
E3DGetCameraSWKeyframeNoRange
カメラアニメのサンプル（HSP版はe3dhsp3_CameraAnime.hsp, Win32版はCameraAnimeソリューション）を追加。
カメラアニメの作り方についてはRokDeBone2のマニュアルの「カメラアニメについて」をご覧ください。
(2010/01/25)
E3DSetCameraFrameNoのマニュアルの修正。
カメラ番号に-1を使えることを記述。
-1を指定したときはスイッチキーを調べて有効になっているカメラに対して処理を行います。
デバッグ
1/24に書き忘れましたがHSP版はE3DChkConfBySphere2とChkConfBySphere3
WIn32版はE3DChkConflictBSPartとE3DChkConflictBSPartArrayが０しか返さないバグを修正しました。
ver5.2.2.8(2010/01/25 その２)
RokDeBone2の新しいカメラファイルに対応。
正射影に対応しました。
E3DSetOrtho命令を追加。
正射影をオンにし、パラメータを設定します。
正射影とシャドウの併用は推奨しません。
出来ないことは無いですが不完全です。
シャドウマップの作成にfov（E3DSetProjectionで設定した視野角）の値を使います。
E3DSetCameraKeyのマニュアルを修正。
ver5.2.2.9(2010/02/11)
グローバルポジションアニメ（GPA）の実装。
RokDeBone2で作成したgpaファイルを編集再生できます。
命令の追加。
E3DLoadGPFile
E3DDestroyGPAnim
E3DSaveGPFile
E3DSetGPAnimNo
E3DGetGPAnimNo
E3DSetGPFrameNo
E3DGetGPFrameNo
E3DSetNewGP
E3DSetNextGPAnimFrameNo
E3DGetNextGPAnimFrameNo
E3DCreateNewGPAnim
E3DSetGPFrameNum
E3DGetGPFrameNum
E3DSetGPAnimName
E3DGetGPAnimName
E3DSetGPAnimType
E3DGetGPAnimType
E3DSetGPKey
E3DGetGPKey
E3DDeleteGPKey
E3DGetGPKeyframeNoRange
E3DCalcGPFullFrame
E3DSetGPGroundHSID
E3DGetGPGroundHSID
GPAのサンプルの作成。
HSP版はe3dhsp3_GPAnim.hsp, Win32版はGPAnimソリューションを追加。
仕様変更
E3DSetDirの仕様が変わりました。
今まではX,Y,Zの順番で回転していましたが、このバージョンからはRokDeBone2と同じZ,X,Yの順番になります。
今までと同じ動作を望む方は、E3DSetDir命令の部分をE3DRotateInit, E3DRotateX, E3DRotateY, E3DRotateZ
の順番で呼び出すように変更してください。
デバッグ
ビルボードの倍率が指定倍率の２乗になっていたのを修正しました。
今までと同じ倍率を望む方はE3DSetScaleの倍率に倍率の２乗の値を渡してください。
ver5.2.3.0(2010/02/16)
RokDeBone2 ver5.2.2.9の新しいmoaファイルに対応。
HSP版のマニュアルに誤記があったのを修正。
E3DSetGPKey, E3DGetGPKeyのcami, camdとなっていたところはそれぞれ正しくはgpi, gpdです。
ver5.2.3.1(2010/03/03)
RokDeBone2 ver5.2.3.1以降のmoaイベントアニメMOEに対応しました。
moeファイルの読み書き編集が出来ます。
命令の追加。
E3DLoadMOEFile
E3DDestroyMOEAnim
E3DSaveMOEFile
E3DSetMOEAnimNo
E3DGetMOEAnimNo
E3DSetMOEFrameNo
E3DGetMOEFrameNo
E3DSetNewMOE
E3DSetNextMOEAnimFrameNo
E3DGetNextMOEAnimFrameNo
E3DCreateNewMOEAnim
E3DSetMOEFrameNum
E3DGetMOEFrameNum
E3DSetMOEAnimName
E3DGetMOEAnimName
E3DSetMOEAnimType
E3DGetMOEAnimType
E3DGetMOEKeyframeNoRange
E3DGetMOEElemNum
E3DGetMOEElem
E3DAddMOEElem
E3DDeleteMOEElem
E3DSetMOEKeyIdling
E3DGetMOEKeyIdling
E3DDeleteMOEKey
E3DCalcMOEFullFrame
サンプルの追加。
HSP版はe3dhsp3_RealTimeAnim1.hsp、Win32版はRealTimeAnim1ソリューションを作成。
デバッグ
ラインの半透明表示が出来ていなかったのを修正。
ver5.2.3.2(2010/03/13)
デバッグ
モーフオブジェクトに対してE3DSetScaleが機能していなかったのを修正。
ver5.2.3.3(2010/03/20)
デバッグ
E3DSetAlpha2でパーツごとにアルファを設定しても最後の設定が全てのパーツに適用されるバグを修正。
ver5.3.0.0(2010/03/31)
音機能をXAudio2, X3DAudioに変更しました。
詳しくはver5.3.0.0での変更点をご覧ください。
(使用可能環境なども変わったので必ずお読みください。)
ver5.3.0.1(2010/04/02)
デバッグ
実行ファイルにして実行する際に、exeのパスに日本語が混じっているとエラー終了するバグを修正。
ver5.3.0.3(2010/04/03)
E3DLoadSoundとE3DLoadSoundFromBuf命令にoggdatanum引数を追加。
oggdatanumはoggデータ読み込み用のバッファの数です。
バッファの大きさは１つ当たり４０９６＊２０バイトです。
バッファの数が不足すると音が最後まで再生されません。
バッファの大きさはファイルの大きさではなくて圧縮解除後の大きさです。
３Dサウンドの拡張。
音が届く距離を指定できる命令を追加。
E3DSet3DSoundEmiDist
３Dサウンドのサンプル修正。
HSP版はe3dhsp3_3DSound_XAudio2.hsp、Win32版はSound3DソリューションにE3DSet3DSoundEmiDist命令を追加。
ver5.3.0.4(2010/04/03 その２)
デバッグ
oggファイルの繰り返し再生が出来なかったバグを修正。
３Dサウンドに周波数が設定できなかったバグを修正。
ver5.3.0.5(2010/04/04)
ポストエフェクトのぼかし命令にUV座標の調整の有無を指定できるフラグを追加。
調整なしだと画像が右下にずれます。
調整ありだとずれませんが、ぼけかたが少なくなります。
BlendRTTexture
BlurTexture16Box
BlurTexture9Corn
BlurTextureGauss
BlurTextureGauss5x5
音機能にフェード機能を追加。
E3DFadeSound命令追加。
ver5.3.0.6(2010/04/09)
デバッグ
E3DPlaySound, E3DStopSoundのバグを修正。
E3DIsSoundPlayingが正しく動作していなかったバグを修正。
再生と停止を繰り返す場合に不具合があったのを修正。
E3DGetSoundSamplesPlayedの修正。
停止しているときにゴミの値が入るのを修正。
処理済みサンプルのトータル数ではなく、再生開始からのサンプル数を取得できるように修正。
ver5.3.0.7(2010/04/15)
座標値とクォータニオンをボーンのローカル座標系とグローバル座標系とで変換する命令を追加。
E3DGlobalToLocalParBone
E3DLocalToGlobalParBone
物理演算ライブラリBulletのグローバルの計算結果をEasy3DのE3DSetBoneQなどのローカルな数値に変換するのに役にたちます。
(2010/04/24)
マニュアルの修正
E3DSetInfElemではPAINT_ERAは使えない旨を追記。代わりにE3DDeleteInfElemを使ってください。
E3DSetInfElemDefault呼び出し後にE3DCreateSkinMatを呼ばないといけない旨を追記。
マニュアルだけ修正してプログラム、バージョンは同じままリリース。
ver5.3.1.2(2010/05/08)
E3DSetRenderStateをモーフオブジェクトにも使用できるようにしました。
今まではモーフにRenderStateが設定できなかったのでモーフにアンチエイリアスをかけることが出来ませんでしたが
E3DSetRenderState hsid, -1, D3DRS_MULTISAMPLEANTIALIAS, 1
のように呼び出すことで、モーフにもアンチエイリアスがかかるようになりました。
（アンチをかけるにはその他にも手順が必要です。詳しくはe3dhsp3_antialias.hspをご覧ください。）
ver5.3.1.3(2010/05/16)
４：３のウインドウサイズ以外でもフルスクリーンが出来るように修正。
E3DCheckFullScreenParamsにflag引数追加。
E3DInitのfullscreenflagを拡張。
ver5.3.1.4(2010/05/21)
モーション用命令を追加。
E3DGetBoneTra
E3DGetBoneScale
E3DSetBoneTra
E3DSetBoneScale
E3DCreateMotionPoint
ver5.3.1.5(2010/05/29)
デバッグ
Ctrl + Alt + Delを押すと復帰時にエラー終了するバグを修正。
いつの間にかデバイスロストの処理にバグが混入していました。
たぶんE3DBesinSceneにZバッファを指定できるようになったバージョン辺りからのバグと思われます。
ver5.3.1.6(2010/05/31)
ogg音データのバッファ長設定を自動化しました。
E3DLoadSound, E3DLoadSoundFromBufのoggdatanum引数が削除されました。
oggdatanumは内部で自動的に計算して設定するようにしました。
ver5.3.1.7(2010/06/03)
デバッグ
E3DLoadSoundFromBufがエラー終了するバグを修正しました。
ver5.3.1.8(2010/06/13)
Windows 7に対応。
デバッグ
Ctrl + Alt + Delを押したときにモデルデータのテクスチャが表示されなくなることがあるバグを修正。
Ctrl + Alt + Delを押したときにE3DCreateBGで作成した背景が表示されなくなることがあるバグを修正。
ver5.3.1.9(2010/06/15)
シェーダーのコンパイラをAugust2009版にバージョンアップしました。
生成命令数が変わったためか？チェックが厳しくなったためか？算術命令数チェックに引っかかって機能制限しました。
グロー表示時に３個目のライトのスペキュラーは表示に反映されなくなりました。
新しいコンパイラのほうが賢くなっているはず！？
モーションブラー表示時にディスプレイスイッチをオンオフしたときの挙動を修正。
オンにした瞬間に自動的に内部でE3DInitBeforeBlurを呼び出すようにしました。
オンにした瞬間に意図しないブラーが表示される不具合が直りました。
ver5.3.2.2(2010/07/22)
ドップラー効果の大きさを制御する命令を追加。
E3DSet3DSoundDopperScaler
E3DGet3DSoundDopperScaler
ドップラー効果の計算に音源の速度だけでリスナーの速度が反映されていなかったのを修正。
MQOファイルをキャラクターとして読み込む命令を追加。
E3DLoadMQOFileAsChara
地面読み込みとは少し違います。地面のほうが読み込み後の使用メモリが多いです。
ver5.3.0.0から使用できなくなった音命令をマニュアルから削除。
E3DPlaySoundのデフォルトのloopnumを１から０に変更。
１のときは合計２回再生されていました。
HSPのサンプルe3dhsp3_3Dsound_XAudio2.hsp中で
E3DSet3DSoundListenerMovementを間違えてE3DSetListenerMovementと記述していたのを修正。
ver5.3.2.3(2010/07/14)
E3DUpdateSoundより後でE3DSetSoundFrequencyを呼ぶとドップラー効果が無効になる不具合を修正。
サウンドを停止し、停止した位置から再び再生するサンプルを追加。
e3dhsp3_3Dsound_XAudio2_Stop.hspをご覧ください。
ver5.3.2.4(2010/07/18)
E3DSet3DSoundDopplerScalerのsoundidに-1を指定した場合は読み込み済みの全ての音に対して処理をするようにしました。
ver5.3.2.5(2010/07/26)
音同期アニメ再生のための命令を追加。
E3DLoadSSF
E3DDestroyAllSoundSet
E3DGetSoundSetNum
E3DGetSoundSetInfo
E3DGetSoundSetBGM
E3DLoadSAF
E3DDestroyAllSndAnim
E3DGetSndAnimFrameNum
E3DGetSndAnimBGM
E3DGetSndAnimFPS
E3DGetSndAnimMode
E3DStartSndAnim
E3DSetSndAnimFrameNo
E3DStopSndAnim
E3DGetSoundTotalTime
E3DConvSoundSampleToFrame
E3DGetSoundStartCnt
E3DGetSoundEndCnt
E3DPCWait
音同期アニメ再生のサンプルを追加。
Win32版はRealTimeAnim2ソリューションをHSP版はe3dhsp3_RealTimeAnim2.hspを追加。
ver5.3.2.6(2010/07/29)
E3DLoadMOAFileの拡張。
FillUpFrameLength引数に-1を指定した場合はmoaファイルに記述されているフレーム長を読み込むようにしました。
e3dhsp3_RealTimeAnim2.hspを修正。
ver5.3.2.7(2010/08/04)
RokDeBone2 ver5.3.1.5の透明度アニメファイルに対応。
新しいsig, quaに対応しました。
ver5.3.2.8(2010/08/05)
RokDeBone2 ver5.3.1.6でXファイルから作ったsigに対応。
UV座標の扱いなどに修正がありました。
ver5.3.2.9(2010/08/10)
RokDeBone2 ver5.3.1.9の新しいmoa, moeファイルに対応。
moaのアイドリングに戻らないオプションに対応。
moeの継続オプションに対応。
ver5.3.3.0(2010/08/16)
MOEアニメ（moaイベントアニメ）のバージョンアップ。
今までのMOEではモデルの姿勢しかモーションに反映されませんでしたが
ディスプレイスイッチアニメ、テクスチャアニメ、モーフアニメ、透明度アニメもMOEアニメに反映されるようにしました。
ver5.3.3.1(2010/08/17)
カメラのupベクトル補間アニメに対応。
RokDeBone2 ver5.3.2.3のcamファイルに対応。
デバッグ
MOEアニメで先頭フレームにキーを作っていない場合
アイドリングモーションのフレーム０が再生されるべきところがフレーム１が再生されていたバグを修正しました。
ver5.3.3.2(2010/09/05)
RokDeBone2 ver5.3.2.6のesi入力から作ったsigファイルに対応。
ver5.3.3.3(2010/09/14)
カメラ設定命令E3DSetCameraOffsetを追加。
カメラアニメを好きな位置、向きから再生できるようになりました。
詳しくはカメラアニメをゲーム中で使うにはをご覧ください。
E3DSetCameraOffsetの使用サンプルを追加。
HSP版はe3dhsp3_CameraOffset.hsp
Win32版はCameraOffsetソリューション
ver5.3.3.4(2010/09/21)
Invisibleflagの設定を保存したsigファイルに対応。
HSIDの最大個数を１０００個から５０００個に増やしました。
ver5.3.3.5(2010/09/23)
モーフのベースに対して影響度設定すると表示が乱れたり表示されなくなったりする不具合を修正。
ver5.3.3.6(2010/09/26)
デバッグ
E3DSaveQua2Bufがエラーになるバグを修正。
ボーンの名前を基準にしたファイルに対応してからのバグでした。
ver5.3.3.7(2010/10/11 その３)
E3DAllClearInfElem命令を追加。
上級者向け。
全ての影響度を削除できる命令です。
ちゃんと決まりを守って呼ばないとエラーになるよ。
ver5.3.3.8(2010/10/11 その４)
デバッグ
E3DAllClearInfElemのパーツ番号に-1を指定するとエラーになるバグを修正。
ver5.3.3.9(2010/10/16)
デバッグ
モーションが最終フレームに達した後にアイドリングに戻さないオプションが働かない場合があるバグを修正。
モーション補間中にこのオプションを設定したモーションのイベント番号を発行すると、このオプションが無視されるバグでした。
ver5.3.4.0(2010/10/18)
RokDeBone2 ver5.3.3.7のquaファイルに対応。
ver5.3.4.1(2010/10/21)
RokDeBone2 ver5.3.3.9のquaファイルに対応。
これによりRokDeBone2とEasy3Dでの座モードの違いによるモーションの不具合が解消されます。
E3DSetSoundFrequencyの拡張。
soundidに-1を指定した場合は読み込み済みの全てのサウンドに対して処理するようにしました。
ver5.3.4.2(2010/10/24)
RokDeBone2 ver5.3.4.1のquaファイルに対応。
qua読み込み時にスプラインの移動成分にも読み込み倍率を掛けるようにしました。
ver5.3.4.3(2010/10/26)
Xiph.org Foundationのoggvorbisデコードライブラリを最新版にしました。
デバッグ
oggファイルから生成したサウンドIDに対してE3DSetSoundFrequencyを呼ぶとエラーになっていたバグを修正。
ver5.3.4.4(2010/10/28)
デバッグ
E3DConvScreenTo3Dをメインループで使用していると、ウインドウを最小化したときにエラーになるバグを修正。
GetClientRectで返ってくるサイズ０を計算に使用していたためのバグでした。
ver5.3.4.4(2010/10/29)
リアルタイムアニメのサンプルを追加。
レンダーターゲットテクスチャにリアルタイムアニメを描画し、それを板ポリゴンのテクスチャに設定することで
動画を貼り付けたスクリーンのような画面効果が得られます。
テクスチャに描画するアニメのカメラとメイン画面のカメラは独立して設定できます。
HSP版はe3dhsp3_RealTimeAnim3.hsp、Win32版はRealTimeAnim3ソリューションを作りました。
ライブラリのバージョンはver5.3.4.4のまま、サンプルだけ追加。
ver5.3.4.5(2010/11/08)
GPA(Global Position Animation)の再生を指定の位置、向きから再生できるようになりました。
E3DSetGPOffset命令を追加。
GPAとカメラアニメをキャラクターの位置、向きから再生するサンプルを追加。
HSP版はe3dhsp3_GPOffset.hsp、Win32版はGPOffsetソリューションを追加。
ver5.3.4.6(2010/11/11)
スポットライトを使用できるオプションを作りました。
E3DSelectLightType命令を追加。
デフォルト状態だと平行光源とポイントライトを３つまで使えますが
E3DSelectLightType命令に引数１を渡して呼び出すと
平行光源とスポットライトを合計３つまで使えるようになります。
この命令はE3DInitより前に呼び出します。
E3DInit呼出し後は変更することは出来ません。
詳しくは命令表の説明をご覧ください。
ver5.3.4.7(2010/12/03)
E3DRenderZandN命令追加。
奥行きZ情報とピクセル単位の法線情報をレンダー出来るようになりました。
環境マップ、屈折マップのサンプルを追加。
HSP版はe3dhsp3_Effect_yamucha1.hsp、Win32版はEffect_yamucha1ソリューションを追加。
このサンプルはやむちゃさんが作ったものを元にしています。
E3D_HLSLフォルダの新しいfxファイルを使用しないとこのサンプルは動きません。
デバッグ
E3DPickVertがうまく機能しない場合があるバグを修正。
（HSP版）
E3DGetMaterialNumとE3DGetMaterialInfo命令を追加。
ver5.3.4.8(2010/12/15)
MOEの再生位置からquaのアニメ番号とフレーム番号を取得する命令を追加。
E3DGetMOELocalMotionFrameNo
E3DGetMOELocalNextMotionFrameNo
ver5.3.4.9(2010/12/23)
デバッグ
GetScreenPos系の命令がCameraのTwistに対応していなかったのを修正。
E3D_HLSLフォルダ内のシェーダーファイルのユーザー定義テクニック数を５個から２０個に増量。
ver5.3.5.0(2010/12/23 その２)
デバッグ
テキストファイルの読み込み部分に潜在的なバグがあったのを修正。
対応している１０種類以上のテキスト形式ファイル読み込み全てに影響するバグでした。
ver5.4.0.0(2011/01/31)
コンパイラをVC++2008からVC++２０１０に変えました。
これにより必要なランタイムも変わります。
zipに同梱しているvcreditのexeを管理者権限で実行しインストールしてください。
vcredistをインストールする前にXPの人はサービスパック３以降を、Vistaの人はサービスパック２以降をインストールしてください。
サービスパックはWindows Updateでインストールできると思います。
E3DSaveMQOFileのデバッグ
新しいバージョンで作ったsigを読み込み、mqo出力するとテクスチャのUV座標が出力されないことがあるバグを修正。
E3DSetBoneQに引数を追加。
curboneonlyフラグを追加しました。
このフラグが０のとき（今までと同じ動作）は、クォータニオンをセットした後、親にさかのぼって姿勢の計算をします。
この計算はE3DFillUpMotionでも行われるので、多数のボーンにSetBoneQをするとかなりのタイムロスになります。
curboneonlyに１をセットするとこの計算をスキップします。
curboneonlyに１をセットして多数のボーンの設定を行った後に、一回E3DFillUpMotionをすれば良いことになります。
ver5.4.0.1(2011/02/02)
デバッグ
半透明の描画がうまくいっていなかったバグを修正。
ver5.4.0.0でレンダーステートの設定にバグが生じていました。
ver5.4.0.2(2011/02/06)
デバッグ
E3DSetCameraKeyとE3DGetCameraKeyをortho, orthosizeに対応させ忘れていたのを修正。
ver5.4.0.3(2011/02/12)
ピクセル単位のポイントライト、スポットライトのバージョンアップ。
今までのピクセル単位ライティングは不完全でした。
大事なパラメータを頂点で計算し、それをピクセルで補間して使用していたため
頂点に全くライトが当たらない状況では機能しませんでした。
今回のバージョンアップでこのパラメータもピクセルシェーダで計算することにしました。
１枚の大きな地面ポリゴンの真ん中に小さなスポットライトが当たった場合でも、正しくライティング出来ます。
ライトの機能のまとめ
ライトは３つまで作れます。
ライトの振る舞いと作った順番には関係があります。
以後、１番目に作ったライトをライト１、２番目に作ったライトをライト２、３番目のものをライト３と呼びます。
E3DInitより前でE3DSelectLightTypeに１を指定して呼び出すと
平行光源とスポットライトの合計３つ使えるようになります。
ただし制限があり、ライト２個のときはライト２のスペキュラーは適用されません。
ピクセル単位のスポットライト２個同時使用も可能です。
ライト３個のときは完全なピクセル単位のライティングはライト１に対してのみ行われます。
ライト２、ライト３の大事なパラメータの１つを頂点で計算します。
またライト２、ライト３のスペキュラーは適用されません。
E3DSelectLightTypeに０を指定するかもしくはこの命令を呼び出さない場合は
平行光源とポイントライトの合計３つ使えるようになります。
ただし制限があり、ライト２個のときはライト２のスペキュラーは適用されません。
ピクセル単位のポイントライト２個同時使用も可能です。
ライト３個のときは完全なピクセル単位のライティングはライト１に対してのみ行われます。
ライト２、ライト３の大事なパラメータの１つを頂点で計算します。
またライト２、ライト３のスペキュラーは適用されません。
LightTypeが０のときも１のときもピクセル単位のライティングを実行したい場合は
E3DSetShaderTypeでCOL_PPHONG（ピクセルPhong）を指定する必要があります。
ver5.4.0.4(2011/02/12 その２)
デバッグ
テクスチャアニメを設定したアニメと、設定していないアニメが混在しているmoaを再生すると
テクスチャが表示されなくなることがあるバグを修正。
ver5.4.0.5(2011/02/13)
モーションブラーのバージョンアップ
E3DSetMotionBlurMaxAlpha命令を追加。
モーションブラーの一番濃い部分の透明度の係数を設定できます。
ver5.4.0.6(2011/02/16)
デバッグ
１フレーム長のMOEアニメ、カメラアニメ、GPアニメを作成すると再生中にアクセスエラーが生じるバグを修正。
MOEのイベント継続フラグを取得設定する命令を追加。
E3DGetMOEKeyGoOnFlag
E3DSetMOEKeyGoOnFlag
マテリアルのテクスチャ名を取得設定する命令を追加（win32版にはSet, GetMaterialTexParamsという名前で既にあります）
E3DGetMaterial1stTex
E3DSetMaterial1stTex
ver5.4.0.7(2011/02/18)
MOAの共通分岐禁止IDの取得、設定命令を追加。
E3DSetMOATrunkNotComID、E3DGetMOATrunkNotComIDを追加。
ver5.4.0.8(2011/02/22)
ピクセル単位のスポットライト、ポイントライトのバージョンアップ。
シェーダー２．０までしか搭載されていないビデオカードでスポットライト、ポイントライトが真っ暗になっていた不具合を修正。
ライトの機能のまとめ
ライトは３つまで作れます。
ライトの振る舞いと作った順番には関係があります。
以後、１番目に作ったライトをライト１、２番目に作ったライトをライト２、３番目のものをライト３と呼びます。
E3DInitより前でE3DSelectLightTypeに１を指定して呼び出すと
平行光源とスポットライトの合計３つ使えるようになります。
ただし制限があり、ライト２個のときはライト２のスペキュラーは適用されません。
完全なピクセル単位のスポットライトはライト１にしか適用できません。
ライト３個のときは完全なピクセル単位のライティングはライト１に対してのみ行われます。
またライト２、ライト３のスペキュラーは適用されません。
E3DSelectLightTypeに０を指定するかもしくはこの命令を呼び出さない場合は
平行光源とポイントライトの合計３つ使えるようになります。
ただし制限があり、ライト２個のときはライト２のスペキュラーは適用されません。
完全なピクセル単位のポイントライトはライト１にしか適用できません。
ライト３個のときは完全なピクセル単位のライティングはライト１に対してのみ行われます。
またライト２、ライト３のスペキュラーは適用されません。
LightTypeが０のときも１のときもピクセル単位のライティングを実行したい場合は
E3DSetShaderTypeでCOL_PPHONG（ピクセルPhong）を指定する必要があります。
ver5.4.0.9(2011/02/24)
座３のオイラー角度の取得設定命令を追加。
E3DGetZa3Euler, E3DSetZa3Eulerの追加。
（Win32版では既存の命令で計算できます。）
ver5.4.1.0(2011/02/26)
マルチレイヤーモーション用のMOE情報取得命令を追加。
E3DGetMOELocalMotionFrameNoML
E3DGetMOELocalNextMotionFrameNoML
を追加。
ver5.4.1.1(2011/02/28)
GPアニメのデフォルトのパラメータ（キーが無いときの値）を設定する命令を追加。
E3DSetDefaultGP
カメラアニメのデフォルトのパラメータをカメラ番号ごとに設定する命令を追加。
E3DSetDefaultCamera
ver5.4.1.2(2011/03/05)
デバッグ
モーションのスプライン補間と線形補間が混ざったモーションを再生すると線形補間で再生されるバグを修正。
（RokDeBone2にはこのバグはありませんでした。）
読み込み時にスプラインパラメータの自動計算をさせたくない場合は
RokDeBone2でquaを保存する前に、グラフウインドウでモーションウインドウを右クリックし、
スプラインパラメータの全ロックをしてください。
quaやmoaの読み込み時に読み込み倍率を１．０以外で読み込むと
スプラインのパラメータにも倍率が掛けられる仕様です。
スプラインを使う場合はなるべく１．０倍のまま使用できるようなスケールで作業してください。
ver5.4.1.3(2011/03/06)
スプライン補間設定のモーションを拡大率１．０倍以外で読んでも、パラメータを相似変換出来るようになりました。
１．０倍以外でも動き方を維持できます。
読み込み時にロックされていないスプラインパラメータは自動的に計算しなおすので
qua保存の前にグラフウインドウでモーションポイントを右クリックし、スプライン全ロックを実行してください。
ロックされていても拡大率は適用されます。
ver5.4.1.4(2011/05/05)
存在しないボーンのデータが入ったquaを読み込むとハングするバグを修正。
E3DGetBSphereでpartnoに-1を入れたときはモデル全体の境界球を返すように修正。
E3DValidHsidを追加。（hsidが使用可能かどうかを調べます。）
E3DSetSpriteRotationの回転中心がおかしかったのを修正。（表示倍率が１以外のときに不具合がありました。）
E3DRenderBatch, E3DRenderBatchModeで半透明テクスチャが描画されないバグを修正。
E3DSetMaterialTransparentのバグを修正。
E3DSetAlpha2のバグを修正。
一部命令を除き、E3DByeを呼んだ後に呼び出すとただちに０リターンするように修正（HSP版のみ）
ver5.4.1.5(2011/06/13)
デバッグ
mikoto形式から作ったsigを1.0倍以外で読み込むと、座３の軸がおかしくなるバグを修正しました。
E3DSetDispSwitch2の振る舞いを修正しました。
今まではmotidに-1を指定したときのデフォルト状態が全てオフだったのを、全てオンに変えました。
E3DChkConflict2の修正。
判定時にDisplaySwitchとValidFlagを考慮するようにしました。
ver5.5.0.0(2011/06/16)
Kinectのモーションキャプチャに対応しました。
リアルタイムでモーションキャプチャしながらプレイするゲームが作成できます。
サンプルを作りました。
HSP版はe3dhsp3_KinectCapture.hsp、Win32版はKinectCaptureソリューション。
ver5.5.0.1(2011/06/26)
モーションのスプライン補間のバージョンアップ。
スケールの係数自動計算によるスプライン補間が滑らかではなかったので調整しました。
スプラインの係数を調整しました。
スケールだけ係数-->制御点の計算にちょっと細工をしました。（厳密な縦と横の係数では無くなりました。）
ver5.5.0.2(2011/07/18)
HSP3.3同梱予定バージョンをリリース。
何か致命的なバグなど見つかりましたらなるべくはやくご報告をお願いします。