マップエディタの不具合修正

先日書いたのですが、マップエディタで頂点の高さを変えていくとポリゴンが透けてしまう不具合がありました。法線ベクトルの計算に誤りがあると思っていたので、試しに法線ベクトルを描画してみました。

20090406-1

うーん、想像していた以上にダメでした。なんか、倒れてるし全然違う方向を向いていました。。。
まあ、原因がわかってよかったと思い法線ベクトルの計算を修正しました。

20090406-2

しかし、法線ベクトルの方向は考えていたようになったのですが、相変わらず透けてますね。。。
むかしSpriteBatchを呼び出した場合にRenderStateを書き換えるという処理でハマったのを思い出したのでブレイクポイントを設定して確認したらアルファブレンドに関連する項目が結構変わっていました。値を元に戻したら無事に描画できて、透けなくなりました。

このような不具合は後工程になるほど調べるのが大変になルと思うので、使ったら元に戻す習慣をつけてようと思いました。今回は使用しなかったのですが、XNA では PIX(ピクス)というツールが使えるそうです。PIX を使うのはかなり難しそうですが、使えればかなり力強いツールだと思います。
ひにけにXNA PIXを活用する その1
@IT 連載.NET&Windows Vistaへ広がるDirectXの世界

One Response to “マップエディタの不具合修正”

  1. XNA Today » マップエディタの不具合修正 says:

    [...] ゴンが透けてしまう不具合があったようです。現在は修正されたとのことです。 [...]

Leave a Reply