ver3.0.0.1での変更点

頂点シェーダー2.0が付いているマシンではハードウェアで、それ以外のマシンでは、ソフトウェアで実行されます。
頂点シェーダ2.0が付いているマシンでは、旧バージョンの2から4倍程度の速度で描画できます


頂点シェーダが無い場合の、
ソフトウェア処理は、旧バージョンではオリジナルの頂点処理でしたが、
新しいバージョンでは、DirectXに用意されているソフトウェア処理で描画します。
これにより、全ての環境で、sigの大きなポリゴンが見切れたときにも、画面が乱れなくなりました


ハードウェアでボーン変形するようになったので、モデルデータに制限が出来ました。
一つの頂点に影響するボーンの総数は4個までです。
一つのパーツに影響するボーンの総数は44個を超えると、描画処理にオーバーヘッドが生じます。

当たり判定がバージョンアップしました。
詳しくは、新しいあたり判定についてをご覧ください。


ライトにも制限があります。
対応するライトは、平行光源とポイントライトのみです。
ライトの総数は3個まで画面に反映されます。


updateflag引数について。
E3DSetDiffuse, E3DSetAlpha, E3DSetAlpha2には、updateflag引数があります。
旧バージョンでは、通常0を指定し、色計算をスキップするフラグを使用しているときのみ1を指定していましたが、
新しいバージョンでは、常に、1を指定してください。
引数を省略した場合には、自動的に1が適用されます。



シェーダーの制限について。
シェーダの肥大化を避けるために、色の計算方法にも制限をつけました。
RokDeBone2の「色B」と頂点シェーダーでのトゥーン、ピクセルシェーダーでのトゥーンのみ有効です。
E3DSetLightBlendModeも実装は見送りました。


E3DCreateAfterImage、E3DGetCullingFlagは、内部データの持ち方が大きく変わったため、
使用できなくなりました。



関数を追加しました
  E3DGetMoaInfo
    moaファイルを読み込んだ場合の、モーションの名前とIDを取得します。
    使い方は、e3dhsp3b_MotionAccelerator.hspをご覧ください。
  E3DGetNextMotionFrameNo
    E3DSetNextMotionFrameNoでセットした内容を取得します。
    使い方は、e3dhsp3b_MotionAccelerator.hspをご覧ください。
  E3DGetScreenPos3
    スクリーン座標のZ成分も取得できるようになりました。
    このZ座標は、スプライトの描画時のZ指定に使用することが出来ます。
    使い方は、e3dhsp3b_pickvert.hspをご覧ください。



トップページに戻る